Commit: 9ac83d499e9188b382126054e9a66c74e8aa644a
Author: Campbell Barton
Date:   Sat Jan 9 02:06:45 2016 +1100
Branches: master
https://developer.blender.org/rB9ac83d499e9188b382126054e9a66c74e8aa644a

Fix bisect flagging w/ multiple cuts on an ngon

Caused symmetrize to fail for concave ngons crossing the midpoint multiple 
times.

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

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

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

diff --git a/source/blender/bmesh/tools/bmesh_bisect_plane.c 
b/source/blender/bmesh/tools/bmesh_bisect_plane.c
index fbcf573..9fb6d39 100644
--- a/source/blender/bmesh/tools/bmesh_bisect_plane.c
+++ b/source/blender/bmesh/tools/bmesh_bisect_plane.c
@@ -264,8 +264,18 @@ static void bm_face_bisect_verts(BMesh *bm, BMFace *f, 
const float plane[4], con
                                        /* in fact this simple test is good 
enough,
                                         * test if the loops are adjacent */
                                        if (found && !BM_loop_is_adjacent(l_a, 
l_b)) {
+                                               BMLoop *l_new;
                                                BMFace *f_tmp;
-                                               f_tmp = BM_face_split(bm, 
face_split_arr[j], l_a, l_b, NULL, NULL, true);
+                                               f_tmp = BM_face_split(bm, 
face_split_arr[j], l_a, l_b, &l_new, NULL, true);
+
+                                               if (l_new) {
+                                                       if (oflag_center) {
+                                                               
BMO_elem_flag_enable(bm, l_new->e,          oflag_center);
+                                                               
BMO_elem_flag_enable(bm, l_new->f,          oflag_center);
+                                                               
BMO_elem_flag_enable(bm, face_split_arr[j], oflag_center);
+                                                       }
+                                               }
+
                                                if (f_tmp) {
                                                        if (f_tmp != 
face_split_arr[j]) {
                                                                
STACK_PUSH(face_split_arr, f_tmp);

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to