Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender-addons.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorClemens Barth <barth@root-1.de>2019-12-28 13:26:35 +0300
committerClemens Barth <barth@root-1.de>2019-12-28 13:26:35 +0300
commit3b01888260e138caa613398403fa72b04bb3dcf0 (patch)
tree207afccba199db1be0e274b2b5bf2d63ec087418 /io_mesh_atomic
parent39b2f0c3c8f0569167b0c26275aac511070087bd (diff)
Fix of an unreported bug: when changing the radius of sticks that are in the form of cylinders, they were marked as
invisible after the change. This should only be done for the representative cylinder and cup object of those sticks, which are in a dupliverts structure.
Diffstat (limited to 'io_mesh_atomic')
-rw-r--r--io_mesh_atomic/utility_panel.py20
1 files changed, 14 insertions, 6 deletions
diff --git a/io_mesh_atomic/utility_panel.py b/io_mesh_atomic/utility_panel.py
index a5cdac3c..f41b8408 100644
--- a/io_mesh_atomic/utility_panel.py
+++ b/io_mesh_atomic/utility_panel.py
@@ -319,10 +319,15 @@ def modify_objects(action_type,
('CUP' in atom.name.upper() or
'CYLINDER' in atom.name.upper())):
- # Make the cylinder or cup visible first, otherwise one cannot
- # go into EDIT mode. Note that 'atom' here is in fact a 'stick'
- # (cylinder or cup).
- atom.hide_set(False)
+ # For dupliverts structures only: Make the cylinder or cup visible
+ # first, otherwise one cannot go into EDIT mode. Note that 'atom' here
+ # is in fact a 'stick' (cylinder or cup).
+ # First, identify if it is a normal cylinder object or a dupliverts
+ # structure. The identifier for a dupliverts structure is the parent's
+ # name, which includes "_sticks_mesh"
+ if "_sticks_mesh" in atom.parent.name:
+ atom.hide_set(False)
+
bpy.context.view_layer.objects.active = atom
bpy.ops.object.mode_set(mode='EDIT', toggle=False)
bm = bmesh.from_edit_mesh(atom.data)
@@ -343,8 +348,11 @@ def modify_objects(action_type,
v.co[1] = ((v.co[1] - center[1]) / radius) * radius_new + center[1]
bpy.ops.object.mode_set(mode='OBJECT', toggle=False)
- # Hide again the representative stick (cylinder or cup).
- atom.hide_set(True)
+ # Hide again the representative stick (cylinder or cup) if it is a
+ # dupliverts structure.
+ if "_sticks_mesh" in atom.parent.name:
+ atom.hide_set(True)
+
bpy.context.view_layer.objects.active = None
# Replace atom objects