[Bf-extensions-cvs] [f0e2d0e6] master: mesh_snap_utilitie_line: Don't always pass the active object mesh as the main mesh.

mano-wii noreply at git.blender.org
Mon Feb 11 18:22:42 CET 2019


Commit: f0e2d0e6a21c3391c1b4583764eb921c0eef1480
Author: mano-wii
Date:   Mon Feb 11 14:20:59 2019 -0200
Branches: master
https://developer.blender.org/rBAf0e2d0e6a21c3391c1b4583764eb921c0eef1480

mesh_snap_utilitie_line: Don't always pass the active object mesh as the main mesh.

===================================================================

M	mesh_snap_utilities_line/__init__.py
M	mesh_snap_utilities_line/common_classes.py
M	mesh_snap_utilities_line/op_line.py
M	mesh_snap_utilities_line/widgets.py

===================================================================

diff --git a/mesh_snap_utilities_line/__init__.py b/mesh_snap_utilities_line/__init__.py
index 604c1b15..646b61bd 100644
--- a/mesh_snap_utilities_line/__init__.py
+++ b/mesh_snap_utilities_line/__init__.py
@@ -22,7 +22,7 @@
 bl_info = {
     "name": "Snap_Utilities_Line",
     "author": "Germano Cavalcante",
-    "version": (5, 9, 3),
+    "version": (5, 9, 4),
     "blender": (2, 80, 0),
     "location": "View3D > TOOLS > Line Tool",
     "description": "Extends Blender Snap controls",
diff --git a/mesh_snap_utilities_line/common_classes.py b/mesh_snap_utilities_line/common_classes.py
index 6ad150c4..e277b544 100644
--- a/mesh_snap_utilities_line/common_classes.py
+++ b/mesh_snap_utilities_line/common_classes.py
@@ -311,7 +311,7 @@ class SnapUtilities:
         if SnapUtilities.snapwidgets:
             widget = SnapUtilities.snapwidgets[-1]
 
-            self.snap_obj = widget.snap_obj
+            self.obj = widget.snap_obj.data[0] if widget.snap_obj else context.active_object
             self.bm = widget.bm
             self.geom = widget.geom
             self.type = widget.type
@@ -325,7 +325,7 @@ class SnapUtilities:
 
         else:
             #init these variables to avoid errors
-            self.snap_obj = None
+            self.obj = context.active_object
             self.bm = None
             self.geom = None
             self.type = 'OUT'
diff --git a/mesh_snap_utilities_line/op_line.py b/mesh_snap_utilities_line/op_line.py
index 585792bd..454c64e3 100644
--- a/mesh_snap_utilities_line/op_line.py
+++ b/mesh_snap_utilities_line/op_line.py
@@ -233,11 +233,11 @@ class SnapUtilitiesLine(SnapUtilities, bpy.types.Operator):
         self.vector_constrain = ()
         self.len = 0
 
-        active_object = context.active_object
-        mesh = active_object.data
+        self.main_snap_obj = self.snap_obj = self.sctx._get_snap_obj_by_obj(self.obj)
+        if self.bm == None:
+            self.bm = bmesh.from_edit_mesh(self.obj.data)
 
-        self.main_snap_obj = self.snap_obj = self.sctx._get_snap_obj_by_obj(active_object)
-        self.main_bm = self.bm = bmesh.from_edit_mesh(mesh)
+        self.main_bm = self.bm
 
     def modal(self, context, event):
         if self.navigation_ops.run(context, event, self.prevloc if self.vector_constrain else self.location):
@@ -435,7 +435,7 @@ class SnapUtilitiesLine(SnapUtilities, bpy.types.Operator):
             context.window_manager.modal_handler_add(self)
 
             if not self.wait_for_input:
-                mat_inv = context.object.matrix_world.inverted_safe()
+                mat_inv = self.obj.matrix_world.inverted_safe()
                 point = mat_inv @ self.location
                 self.list_verts_co = make_line(self, self.geom, point)
 
diff --git a/mesh_snap_utilities_line/widgets.py b/mesh_snap_utilities_line/widgets.py
index 2849075c..ad0ee283 100644
--- a/mesh_snap_utilities_line/widgets.py
+++ b/mesh_snap_utilities_line/widgets.py
@@ -49,7 +49,6 @@ class SnapWidgetCommon(SnapUtilities):
             else:
                 self.bm = None
                 self.geom = None
-                self.sctx.update_all()
 
         self.draw_cache.draw(self.type, self.location, None, None, None)



More information about the Bf-extensions-cvs mailing list