[Bf-blender-cvs] [9bcd604] master: BMesh Decimate: don't collapse zero weighted edges

Campbell Barton noreply at git.blender.org
Wed Dec 2 14:27:27 CET 2015


Commit: 9bcd604e1d77c11982d83f5c54f457650c836930
Author: Campbell Barton
Date:   Thu Dec 3 00:18:59 2015 +1100
Branches: master
https://developer.blender.org/rB9bcd604e1d77c11982d83f5c54f457650c836930

BMesh Decimate: don't collapse zero weighted edges

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

M	source/blender/bmesh/tools/bmesh_decimate_collapse.c

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

diff --git a/source/blender/bmesh/tools/bmesh_decimate_collapse.c b/source/blender/bmesh/tools/bmesh_decimate_collapse.c
index ddcbe34..0a5e5ab 100644
--- a/source/blender/bmesh/tools/bmesh_decimate_collapse.c
+++ b/source/blender/bmesh/tools/bmesh_decimate_collapse.c
@@ -242,6 +242,13 @@ static void bm_decim_build_edge_cost_single(
 		BLI_heap_remove(eheap, eheap_table[BM_elem_index_get(e)]);
 	}
 
+	if (UNLIKELY(vweights &&
+	             ((vweights[BM_elem_index_get(e->v1)] == 0.0f) ||
+	              (vweights[BM_elem_index_get(e->v2)] == 0.0f))))
+	{
+		goto clear;
+	}
+
 	/* check we can collapse, some edges we better not touch */
 	if (BM_edge_is_boundary(e)) {
 		if (e->l->f->len == 3) {




More information about the Bf-blender-cvs mailing list