[Bf-extensions-cvs] SVN commit: /data/svn/bf-extensions [4022] contrib/py/scripts/addons/ io_atomblend_utilities/io_atomblend_utilities.py: The distance of two selected vertices can now be measured.
Clemens Barth
barth at root-1.de
Sat Dec 1 21:59:05 CET 2012
Revision: 4022
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-extensions&revision=4022
Author: blendphys
Date: 2012-12-01 20:59:03 +0000 (Sat, 01 Dec 2012)
Log Message:
-----------
The distance of two selected vertices can now be measured. If several
vertices are selected, the first two are taken.
Blendphys
Modified Paths:
--------------
contrib/py/scripts/addons/io_atomblend_utilities/io_atomblend_utilities.py
Modified: contrib/py/scripts/addons/io_atomblend_utilities/io_atomblend_utilities.py
===================================================================
--- contrib/py/scripts/addons/io_atomblend_utilities/io_atomblend_utilities.py 2012-11-30 14:40:47 UTC (rev 4021)
+++ contrib/py/scripts/addons/io_atomblend_utilities/io_atomblend_utilities.py 2012-12-01 20:59:03 UTC (rev 4022)
@@ -178,13 +178,32 @@
# which are active.
def distance():
- if len(bpy.context.selected_bases) > 1:
- object_1 = bpy.context.selected_objects[0]
- object_2 = bpy.context.selected_objects[1]
+ # In the 'Edit mode'
+ if bpy.context.mode == 'EDIT_MESH':
+
+ obj = bpy.context.edit_object
+ bm = bmesh.from_edit_mesh(obj.data)
+ locations = []
+
+ for v in bm.verts:
+ if v.select:
+ locations.append(obj.matrix_world * v.co)
+
+ if len(locations) > 1:
+ location1 = locations[0]
+ location2 = locations[1]
+ else:
+ return "N.A"
+ # In the object mode
else:
- return "N.A."
- dv = object_2.location - object_1.location
+ if len(bpy.context.selected_bases) > 1:
+ location1 = bpy.context.selected_objects[0].location
+ location2 = bpy.context.selected_objects[1].location
+ else:
+ return "N.A."
+
+ dv = location2 - location1
dist = str(dv.length)
pos = str.find(dist, ".")
dist = dist[:pos+4]
More information about the Bf-extensions-cvs
mailing list