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:
Diffstat (limited to 'object_fracture_cell/process/cell_main.py')
-rw-r--r--object_fracture_cell/process/cell_main.py56
1 files changed, 28 insertions, 28 deletions
diff --git a/object_fracture_cell/process/cell_main.py b/object_fracture_cell/process/cell_main.py
index 8283b5a2..eefa18c9 100644
--- a/object_fracture_cell/process/cell_main.py
+++ b/object_fracture_cell/process/cell_main.py
@@ -19,7 +19,7 @@ def main_object(context, original, level, **kw):
source_particle_child = kw_copy.pop("source_particle_child")
source_pencil = kw_copy.pop("source_pencil")
source_random = kw_copy.pop("source_random")
-
+
use_recenter = kw_copy.pop("use_recenter")
recursion = kw_copy.pop("recursion")
recursion_source_limit = kw_copy.pop("recursion_source_limit")
@@ -48,12 +48,12 @@ def main_object(context, original, level, **kw):
if kw_copy["use_debug_redraw"]:
original_display_type_prev = original.display_type
original.display_type = 'WIRE'
-
+
original_mesh = original.data
original_matrix = original.matrix_world.copy()
- original_verts = [original_matrix @ v.co for v in original_mesh.vertices]
+ original_verts = [original_matrix @ v.co for v in original_mesh.vertices]
original_xyz_minmax = cell_functions.original_minmax(original_verts)
-
+
cells = []
points = cell_functions.points_from_object(original, original_xyz_minmax,
source_vert_own=source_vert_own,
@@ -61,9 +61,9 @@ def main_object(context, original, level, **kw):
source_particle_own=source_particle_own,
source_particle_child=source_particle_child,
source_pencil=source_pencil,
- source_random=source_random)
+ source_random=source_random)
- cells = cell_functions.points_to_cells(context, original, original_xyz_minmax, points, **kw_copy)
+ cells = cell_functions.points_to_cells(context, original, original_xyz_minmax, points, **kw_copy)
cells = cell_functions.cell_boolean(context, original, cells,
use_island_split=use_island_split,
use_interior_hide=(use_interior_vgroup or use_sharp_edges),
@@ -76,7 +76,7 @@ def main_object(context, original, level, **kw):
if use_recenter:
bpy.ops.object.origin_set({"selected_editable_objects": cells},
type='ORIGIN_GEOMETRY', center='MEDIAN')
-
+
#--------------
# Recursion.
if level == 0:
@@ -99,10 +99,10 @@ def main_object(context, original, level, **kw):
(ob_pair[1].location - c).length_squared)
if recursion_chance_select == 'CURSOR_MAX':
objects_recurse_input.reverse()
-
+
objects_recurse_input[int(recursion_chance * len(objects_recurse_input)):] = []
objects_recurse_input.sort()
-
+
# reverse index values so we can remove from original list.
objects_recurse_input.reverse()
@@ -120,7 +120,7 @@ def main_object(context, original, level, **kw):
if recursion_clamp and len(cells) > recursion_clamp:
break
-
+
#--------------
# Level Options
if level == 0:
@@ -131,25 +131,25 @@ def main_object(context, original, level, **kw):
use_sharp_edges=use_sharp_edges,
use_sharp_edges_apply=use_sharp_edges_apply,
)
-
+
if cell_relocate:
for cell in cells:
cell.location.x += (original_xyz_minmax["x"][1] - original_xyz_minmax["x"][0]) + 1
-
+
if kw_copy["use_debug_redraw"]:
original.display_type = original_display_type_prev
-
+
return cells
-
+
def main(context, original, **kw):
'''
import time
t = time.time()
- '''
+ '''
kw_copy = kw.copy()
-
+
# Pre_Simplify
pre_simplify = kw_copy.pop("pre_simplify")
# collection
@@ -157,31 +157,31 @@ def main(context, original, **kw):
new_collection = kw_copy.pop("new_collection")
collection_name = kw_copy.pop("collection_name")
# object visibility
- original_hide = kw_copy.pop("original_hide")
+ original_hide = kw_copy.pop("original_hide")
# mass
use_mass = kw_copy.pop("use_mass")
mass_name = kw_copy.pop("mass_name")
mass_mode = kw_copy.pop("mass_mode")
mass = kw_copy.pop("mass")
-
+
cells = []
-
+
if original.type == 'MESH':
if pre_simplify > 0.0:
cell_functions.simplify_original(original=original, pre_simplify=pre_simplify)
-
+
cells += main_object(context, original, 0, **kw_copy)
-
+
if pre_simplify > 0.0:
cell_functions.desimplify_original(original=original)
else:
assert obj.type == 'MESH', "No MESH object selected."
bpy.ops.object.select_all(action='DESELECT')
-
+
for cell in cells:
cell.select_set(True)
-
+
cell_functions.post_process(cells,
use_collection=use_collection,
new_collection=new_collection,
@@ -190,19 +190,19 @@ def main(context, original, **kw):
mass=mass,
mass_mode=mass_mode,
mass_name=mass_name,
- )
+ )
# To avoid select both original object and cells in EDIT mode.
bpy.context.view_layer.objects.active = cells[0]
-
+
# de-hide all objects and meshes.
bpy.ops.object.mode_set(mode='EDIT')
- bpy.ops.mesh.reveal()
+ bpy.ops.mesh.reveal()
bpy.ops.object.mode_set(mode='OBJECT')
-
+
if original_hide:
original.hide_set(True)
#print("Done! %d objects in %.4f sec" % (len(cells), time.time() - t))
- #print("Done!")
+ #print("Done!")
return (original, cells) \ No newline at end of file