[Bf-extensions-cvs] SVN commit: /data/svn/bf-extensions [3649] trunk/py/scripts/addons/ object_fracture_cell/fracture_cell_setup.py: remove doubles after booleans
Campbell Barton
ideasman42 at gmail.com
Wed Jul 25 12:37:10 CEST 2012
Revision: 3649
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-extensions&revision=3649
Author: campbellbarton
Date: 2012-07-25 10:37:10 +0000 (Wed, 25 Jul 2012)
Log Message:
-----------
remove doubles after booleans
Modified Paths:
--------------
trunk/py/scripts/addons/object_fracture_cell/fracture_cell_setup.py
Modified: trunk/py/scripts/addons/object_fracture_cell/fracture_cell_setup.py
===================================================================
--- trunk/py/scripts/addons/object_fracture_cell/fracture_cell_setup.py 2012-07-25 01:20:57 UTC (rev 3648)
+++ trunk/py/scripts/addons/object_fracture_cell/fracture_cell_setup.py 2012-07-25 10:37:10 UTC (rev 3649)
@@ -312,6 +312,7 @@
use_interior_hide=False,
use_debug_redraw=False,
level=0,
+ remove_doubles=True
):
objects_boolean = []
@@ -350,23 +351,30 @@
mesh_new = None
# avoid unneeded bmesh re-conversion
- bm = None
+ if mesh_new is not None:
+ bm = None
- if clean and mesh_new:
- if bm is None: # ok this will always be true for now...
- bm = bmesh.new()
- bm.from_mesh(mesh_new)
- bm.normal_update()
- try:
- bmesh.ops.dissolve_limit(bm, verts=bm.verts, edges=bm.edges, angle_limit=0.001)
- except RuntimeError:
- import traceback
- traceback.print_exc()
+ if clean:
+ if bm is None: # ok this will always be true for now...
+ bm = bmesh.new()
+ bm.from_mesh(mesh_new)
+ bm.normal_update()
+ try:
+ bmesh.ops.dissolve_limit(bm, verts=bm.verts, edges=bm.edges, angle_limit=0.001)
+ except RuntimeError:
+ import traceback
+ traceback.print_exc()
- if bm is not None:
- bm.to_mesh(mesh_new)
- bm.free()
+ if remove_doubles:
+ if bm is None:
+ bm = bmesh.new()
+ bm.from_mesh(mesh_new)
+ bmesh.ops.remove_doubles(bm, verts=bm.verts, dist=0.005)
+ if bm is not None:
+ bm.to_mesh(mesh_new)
+ bm.free()
+
del mesh_new
del mesh_old
@@ -429,8 +437,7 @@
for bm_edge in bm.edges:
if len({bm_face.hide for bm_face in bm_edge.link_faces}) == 2:
bm_edge.smooth = False
-
-
+
if use_sharp_edges_apply:
edges = [edge for edge in bm.edges if edge.smooth is False]
if edges:
More information about the Bf-extensions-cvs
mailing list