[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [49302] branches/soc-2012-sushi/source/ blender/bmesh/operators/bmo_bevel.c: Fix bevel for some cases where not all edges processed.
Howard Trickey
howard.trickey at gmail.com
Fri Jul 27 17:19:57 CEST 2012
Revision: 49302
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=49302
Author: howardt
Date: 2012-07-27 15:19:57 +0000 (Fri, 27 Jul 2012)
Log Message:
-----------
Fix bevel for some cases where not all edges processed.
(Fixes a case reported in #blendercoders by vitos1k)
Modified Paths:
--------------
branches/soc-2012-sushi/source/blender/bmesh/operators/bmo_bevel.c
Modified: branches/soc-2012-sushi/source/blender/bmesh/operators/bmo_bevel.c
===================================================================
--- branches/soc-2012-sushi/source/blender/bmesh/operators/bmo_bevel.c 2012-07-27 15:15:55 UTC (rev 49301)
+++ branches/soc-2012-sushi/source/blender/bmesh/operators/bmo_bevel.c 2012-07-27 15:19:57 UTC (rev 49302)
@@ -299,9 +299,7 @@
{
// TODO develop planar case
BMOIter siter;
- //BMIter iter;
BMEdge *e, **edges = NULL;
- //int i;
BLI_array_declare(edges);
// calc count input selected edges
@@ -313,19 +311,15 @@
}
}
if (BLI_array_count(edges) > 0) {
- //BMEdge *prev_e;
AdditionalVert *av;
+ BMIter bmiter;
av = (AdditionalVert*)MEM_callocN(sizeof(AdditionalVert), "AdditionalVert");
av->v = v;
av->count = 0;
av->vertices.first = av->vertices.last = NULL;
BLI_addtail(&bp->vertList, av);
- e = bmesh_disk_faceedge_find_first(edges[0], v);
- // for (e = bmesh_disk_edge_next(edges[0], v); e != edges[0]; e = bmesh_disk_edge_next(e, v)) {
- do {
- //prev_e = e;
- e = bmesh_disk_edge_next(e, v);
+ BM_ITER_ELEM(e, &bmiter, v, BM_EDGES_OF_VERT) {
// point located beteween selecion edges
if (BMO_elem_flag_test(bm, e, EDGE_SELECTED)) {
BMFace *f;
@@ -363,7 +357,7 @@
BLI_addtail(&av->vertices, item);
av->count ++;
}
- } while (e != edges[0]);
+ }
}
BLI_array_free(edges);
}
More information about the Bf-blender-cvs
mailing list