diff options
author | Nicholas Bishop <nicholasbishop@gmail.com> | 2012-12-30 22:31:01 +0400 |
---|---|---|
committer | Nicholas Bishop <nicholasbishop@gmail.com> | 2012-12-30 22:31:01 +0400 |
commit | ab960eea889b8481358b0db789b6c7cddf311248 (patch) | |
tree | 4ef6f2265147d08c0ff4df368e29a26d363093d4 /source/blender/bmesh/operators/bmo_symmetrize.c | |
parent | 37ed697d5c400ed342fda3ae4a277def6a3bcea9 (diff) |
Add symmetrize operator for dynamic-topology sculpt mode
Diffstat (limited to 'source/blender/bmesh/operators/bmo_symmetrize.c')
-rw-r--r-- | source/blender/bmesh/operators/bmo_symmetrize.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/source/blender/bmesh/operators/bmo_symmetrize.c b/source/blender/bmesh/operators/bmo_symmetrize.c index 248c7268ac6..172f0d40b27 100644 --- a/source/blender/bmesh/operators/bmo_symmetrize.c +++ b/source/blender/bmesh/operators/bmo_symmetrize.c @@ -361,6 +361,12 @@ static BMFace *symm_face_create_v(BMesh *bm, BMFace *example, BMFace *f_new; int i; + /* TODO: calling symmetrize in dynamic-topology sculpt mode + * frequently tries to create faces of length less than two, + * should investigate further */ + if (len < 3) + return NULL; + for (i = 0; i < len; i++) { int j = (i + 1) % len; fe[i] = BM_edge_exists(fv[i], fv[j]); @@ -374,6 +380,7 @@ static BMFace *symm_face_create_v(BMesh *bm, BMFace *example, BM_elem_attrs_copy(bm, bm, example, f_new); BM_face_select_set(bm, f_new, TRUE); BMO_elem_flag_enable(bm, f_new, SYMM_OUTPUT_GEOM); + return f_new; } |