diff options
author | Campbell Barton <ideasman42@gmail.com> | 2015-11-26 04:11:50 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2015-11-26 05:16:45 +0300 |
commit | 6483575b35abcca1360a1110210bf19047dd5d2e (patch) | |
tree | a3c9f41770b656468bb296a808d13ef743dffa00 /source/blender/bmesh | |
parent | cd8a84c869418f2b695c2662aa63d70bb4157856 (diff) |
Fix error with intersect handling split-wire edges
Diffstat (limited to 'source/blender/bmesh')
-rw-r--r-- | source/blender/bmesh/tools/bmesh_intersect.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/source/blender/bmesh/tools/bmesh_intersect.c b/source/blender/bmesh/tools/bmesh_intersect.c index 19cf2d29aff..24f7fe2db64 100644 --- a/source/blender/bmesh/tools/bmesh_intersect.c +++ b/source/blender/bmesh/tools/bmesh_intersect.c @@ -999,7 +999,8 @@ bool BM_mesh_intersect( const float fac = line_point_factor_v3(vi->co, e->v1->co, e->v2->co); if (BM_vert_in_edge(e, v_prev)) { - v_prev = BM_edge_split(bm, e, v_prev, NULL, CLAMPIS(fac, 0.0f, 1.0f)); + BMEdge *e_split; + v_prev = BM_edge_split(bm, e, v_prev, &e_split, CLAMPIS(fac, 0.0f, 1.0f)); BLI_assert(BM_vert_in_edge(e, v_end)); if (!BM_edge_exists(v_prev, vi) && @@ -1013,7 +1014,7 @@ bool BM_mesh_intersect( } v_prev = vi; if (is_wire) { - BLI_gset_insert(s.wire_edges, e); + BLI_gset_insert(s.wire_edges, e_split); } } } |