diff options
author | Campbell Barton <ideasman42@gmail.com> | 2012-04-18 10:36:47 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2012-04-18 10:36:47 +0400 |
commit | 27696ddae19a2a58da407b4d1a2453ec0de60841 (patch) | |
tree | 42199b7ba39327771702dcaf7367fe6ff5fde1f7 /source/blender/bmesh/tools | |
parent | 6389301eb573625abefc20f93fb83efa64d2600d (diff) |
fix error in last commit. Misunderstood BM_vert_is_manifold(), added some comments.
Diffstat (limited to 'source/blender/bmesh/tools')
-rw-r--r-- | source/blender/bmesh/tools/BME_bevel.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/source/blender/bmesh/tools/BME_bevel.c b/source/blender/bmesh/tools/BME_bevel.c index 59a35abfd63..5ef70f9cc2b 100644 --- a/source/blender/bmesh/tools/BME_bevel.c +++ b/source/blender/bmesh/tools/BME_bevel.c @@ -148,6 +148,7 @@ float *BME_new_transdata_float(BME_TransData_Head *td) * The drawback, though, is that this code doesn't merge customdata. */ static int BME_Bevel_Dissolve_Disk(BMesh *bm, BMVert *v) { + BMIter iter; BMEdge *e, *elast; BMLoop *l1, *l2; @@ -155,6 +156,13 @@ static int BME_Bevel_Dissolve_Disk(BMesh *bm, BMVert *v) return 0; } + /* hrmf, we could have a version of BM_vert_is_manifold() which checks for this case */ + BM_ITER(e, &iter, bm, BM_EDGES_OF_VERT, v) { + if (BM_edge_face_count(e) != 2) { + return 0; + } + } + if (BM_vert_edge_count(v) > 2) { while (BM_vert_edge_count(v) > 2) { e = v->e; |