[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