diff options
author | Campbell Barton <ideasman42@gmail.com> | 2012-03-09 07:16:39 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2012-03-09 07:16:39 +0400 |
commit | 78d73eb155035098f29581f3988779e3104b2599 (patch) | |
tree | 9978d34e8bcf7e5ed38c51a0919986d83df24c52 /source/blender/bmesh/intern/bmesh_core.h | |
parent | 4f7bdc59d31e94bc97955c1efeef2a8fce0c8ecd (diff) |
BMesh: rewrite edge split code (used by edge split modifier and rip tool)
this fixes but [#30461] where the same vertex was added to some faces twice.
Previous code rebuilt all faces around the split edges, replace this with much simpler code that uses existing bmesh API for splitting.
This also gives a performance boost to the modifier (over 30x faster in the bug-report file).
Diffstat (limited to 'source/blender/bmesh/intern/bmesh_core.h')
-rw-r--r-- | source/blender/bmesh/intern/bmesh_core.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/source/blender/bmesh/intern/bmesh_core.h b/source/blender/bmesh/intern/bmesh_core.h index 11f3e052bff..e10222dc29a 100644 --- a/source/blender/bmesh/intern/bmesh_core.h +++ b/source/blender/bmesh/intern/bmesh_core.h @@ -41,6 +41,9 @@ void BM_edge_kill(BMesh *bm, BMEdge *e); void BM_vert_kill(BMesh *bm, BMVert *v); int BM_edge_splice(BMesh *bm, BMEdge *e, BMEdge *etarget); +int bmesh_edge_separate(BMesh *bm, BMEdge *e, BMLoop *l_sep); + +int bmesh_vert_separate(BMesh *bm, BMVert *v, BMVert ***r_vout, int *r_vout_len); int bmesh_loop_reverse(BMesh *bm, BMFace *f); |