diff options
Diffstat (limited to 'source/blender/bmesh/tools/bmesh_bisect_plane.c')
-rw-r--r-- | source/blender/bmesh/tools/bmesh_bisect_plane.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/source/blender/bmesh/tools/bmesh_bisect_plane.c b/source/blender/bmesh/tools/bmesh_bisect_plane.c index 9cfe17d6413..c3c2924ea8e 100644 --- a/source/blender/bmesh/tools/bmesh_bisect_plane.c +++ b/source/blender/bmesh/tools/bmesh_bisect_plane.c @@ -372,7 +372,7 @@ void BM_mesh_bisect_plane(BMesh *bm, float plane[4], BM_VERT_DIR(v_new) = 0; BM_VERT_DIST(v_new) = 0.0f; } - else { + else if (side[0] == 0 || side[1] == 0) { /* check if either edge verts are aligned, * if so - tag and push all faces that use it into the stack */ unsigned int j; @@ -394,6 +394,13 @@ void BM_mesh_bisect_plane(BMesh *bm, float plane[4], } } } + + /* if both verts are on the center - tag it */ + if (oflag_center) { + if (side[0] == 0 && side[1] == 0) { + BMO_elem_flag_enable(bm, e, oflag_center); + } + } } } |