Revision: 44361
          
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=44361
Author:   campbellbarton
Date:     2012-02-23 09:26:53 +0000 (Thu, 23 Feb 2012)
Log Message:
-----------
bmesh minor api refactor
* BM_vert_in_face now loops over a vert's faces rather then every vert in the 
face.
* rename bmesh_radial_find_first_facevert --> bmesh_radial_find_first_faceloop
* rename bmesh_radial_find_next_facevert --> bmesh_radial_find_next_faceloop
* rename BM_vert_collapse_edges --> BM_vert_collapse_edge (only collapses one)

Modified Paths:
--------------
    trunk/blender/source/blender/bmesh/bmesh.h
    trunk/blender/source/blender/bmesh/intern/bmesh_iterators.c
    trunk/blender/source/blender/bmesh/intern/bmesh_mods.c
    trunk/blender/source/blender/bmesh/intern/bmesh_queries.c
    trunk/blender/source/blender/bmesh/intern/bmesh_structure.c
    trunk/blender/source/blender/bmesh/intern/bmesh_structure.h
    trunk/blender/source/blender/bmesh/operators/bmo_dissolve.c
    trunk/blender/source/blender/bmesh/tools/BME_bevel.c

Modified: trunk/blender/source/blender/bmesh/bmesh.h
===================================================================
--- trunk/blender/source/blender/bmesh/bmesh.h  2012-02-23 09:23:29 UTC (rev 
44360)
+++ trunk/blender/source/blender/bmesh/bmesh.h  2012-02-23 09:26:53 UTC (rev 
44361)
@@ -216,7 +216,7 @@
 
 /* these 2 functions are very similar */
 BMEdge* BM_vert_collapse_faces(BMesh *bm, BMEdge *ke, BMVert *kv, float fac, 
const int join_faces);
-BMEdge* BM_vert_collapse_edges(BMesh *bm, BMEdge *ke, BMVert *kv);
+BMEdge* BM_vert_collapse_edge(BMesh *bm, BMEdge *ke, BMVert *kv);
 
 
 /* splits an edge.  ne is set to the new edge created. */

Modified: trunk/blender/source/blender/bmesh/intern/bmesh_iterators.c
===================================================================
--- trunk/blender/source/blender/bmesh/intern/bmesh_iterators.c 2012-02-23 
09:23:29 UTC (rev 44360)
+++ trunk/blender/source/blender/bmesh/intern/bmesh_iterators.c 2012-02-23 
09:26:53 UTC (rev 44361)
@@ -200,7 +200,7 @@
        if (iter->count) {
                iter->firstedge = 
bmesh_disk_find_first_faceedge(iter->vdata->e, iter->vdata);
                iter->nextedge = iter->firstedge;
-               iter->firstloop = 
bmesh_radial_find_first_facevert(iter->firstedge->l, iter->vdata);
+               iter->firstloop = 
bmesh_radial_find_first_faceloop(iter->firstedge->l, iter->vdata);
                iter->nextloop = iter->firstloop;
        }
 }
@@ -210,10 +210,10 @@
 
        if (iter->count && iter->nextloop) {
                iter->count--;
-               iter->nextloop = 
bmesh_radial_find_next_facevert(iter->nextloop, iter->vdata);
+               iter->nextloop = 
bmesh_radial_find_next_faceloop(iter->nextloop, iter->vdata);
                if (iter->nextloop == iter->firstloop) {
                        iter->nextedge = 
bmesh_disk_find_next_faceedge(iter->nextedge, iter->vdata);
-                       iter->firstloop = 
bmesh_radial_find_first_facevert(iter->nextedge->l, iter->vdata);
+                       iter->firstloop = 
bmesh_radial_find_first_faceloop(iter->nextedge->l, iter->vdata);
                        iter->nextloop = iter->firstloop;
                }
        }
@@ -238,7 +238,7 @@
        if (iter->count) {
                iter->firstedge = 
bmesh_disk_find_first_faceedge(iter->vdata->e, iter->vdata);
                iter->nextedge = iter->firstedge;
-               iter->firstloop = 
bmesh_radial_find_first_facevert(iter->firstedge->l, iter->vdata);
+               iter->firstloop = 
bmesh_radial_find_first_faceloop(iter->firstedge->l, iter->vdata);
                iter->nextloop = iter->firstloop;
        }
 }
@@ -248,10 +248,10 @@
 
        if (iter->count) {
                iter->count--;
-               iter->nextloop = 
bmesh_radial_find_next_facevert(iter->nextloop, iter->vdata);
+               iter->nextloop = 
bmesh_radial_find_next_faceloop(iter->nextloop, iter->vdata);
                if (iter->nextloop == iter->firstloop) {
                        iter->nextedge = 
bmesh_disk_find_next_faceedge(iter->nextedge, iter->vdata);
-                       iter->firstloop = 
bmesh_radial_find_first_facevert(iter->nextedge->l, iter->vdata);
+                       iter->firstloop = 
bmesh_radial_find_first_faceloop(iter->nextedge->l, iter->vdata);
                        iter->nextloop = iter->firstloop;
                }
        }

Modified: trunk/blender/source/blender/bmesh/intern/bmesh_mods.c
===================================================================
--- trunk/blender/source/blender/bmesh/intern/bmesh_mods.c      2012-02-23 
09:23:29 UTC (rev 44360)
+++ trunk/blender/source/blender/bmesh/intern/bmesh_mods.c      2012-02-23 
09:26:53 UTC (rev 44361)
@@ -307,7 +307,7 @@
        BMLoop *nl;
        BMFace *face;
 
-       /* be warned: this can do weird things in some ngon situation, see 
BM_LegalSplit */
+       /* be warned: this can do weird things in some ngon situation, see 
BM_face_legal_splits */
        for (face = BM_iter_new(&iter, bm, BM_FACES_OF_VERT, v1); face; face = 
BM_iter_step(&iter)) {
                for (v = BM_iter_new(&iter2, bm, BM_VERTS_OF_FACE, face); v; v 
= BM_iter_step(&iter2)) {
                        if (v == v2) {
@@ -344,7 +344,9 @@
 {
        const int has_mdisp = CustomData_has_layer(&bm->ldata, CD_MDISPS);
        BMFace *nf, *of;
-       
+
+       BLI_assert(v1 != v2);
+
        /* do we have a multires layer */
        if (has_mdisp) {
                of = BM_face_copy(bm, f, FALSE, FALSE);
@@ -397,7 +399,7 @@
  *
  *  Note that this is not a general edge collapse function.
  *
- * Note this function is very close to 'BM_vert_collapse_edges', both collapse
+ * Note this function is very close to 'BM_vert_collapse_edge', both collapse
  * a vertex and return a new edge. Except this takes a factor and merges
  * custom data.
  *
@@ -476,7 +478,7 @@
        }
 
        /* single face or no faces */
-       /* same as BM_vert_collapse_edges() however we already
+       /* same as BM_vert_collapse_edge() however we already
         * have vars to perform this operation so dont call. */
        bmesh_jekv(bm, ke, kv);
        ne = BM_edge_exists(tv, tv2);
@@ -486,7 +488,7 @@
 
 
 /**
- *                     BM_vert_collapse_edges
+ *                     BM_vert_collapse_edge
  *
  * Collapses a vertex onto another vertex it shares an edge with.
  *
@@ -494,7 +496,7 @@
  * The New Edge
  */
 
-BMEdge *BM_vert_collapse_edges(BMesh *bm, BMEdge *ke, BMVert *kv)
+BMEdge *BM_vert_collapse_edge(BMesh *bm, BMEdge *ke, BMVert *kv)
 {
        /* nice example implimentation but we want loops to have their 
customdata
         * accounted for */

Modified: trunk/blender/source/blender/bmesh/intern/bmesh_queries.c
===================================================================
--- trunk/blender/source/blender/bmesh/intern/bmesh_queries.c   2012-02-23 
09:23:29 UTC (rev 44360)
+++ trunk/blender/source/blender/bmesh/intern/bmesh_queries.c   2012-02-23 
09:26:53 UTC (rev 44361)
@@ -101,26 +101,7 @@
 
 int BM_vert_in_face(BMFace *f, BMVert *v)
 {
-       BMLoop *l_iter, *l_first;
-
-#ifdef USE_BMESH_HOLES
-       BMLoopList *lst;
-       for (lst = f->loops.first; lst; lst = lst->next)
-#endif
-       {
-#ifdef USE_BMESH_HOLES
-               l_iter = l_first = lst->first;
-#else
-               l_iter = l_first = f->l_first;
-#endif
-               do {
-                       if (l_iter->v == v) {
-                               return TRUE;
-                       }
-               } while ((l_iter = l_iter->next) != l_first);
-       }
-
-       return FALSE;
+       return bmesh_radial_find_first_faceloop(BM_FACE_FIRST_LOOP(f), v) != 
NULL;
 }
 
 /*

Modified: trunk/blender/source/blender/bmesh/intern/bmesh_structure.c
===================================================================
--- trunk/blender/source/blender/bmesh/intern/bmesh_structure.c 2012-02-23 
09:23:29 UTC (rev 44360)
+++ trunk/blender/source/blender/bmesh/intern/bmesh_structure.c 2012-02-23 
09:26:53 UTC (rev 44361)
@@ -339,21 +339,21 @@
 /*****radial cycle functions, e.g. loops surrounding edges**** */
 int bmesh_radial_validate(int radlen, BMLoop *l)
 {
-       BMLoop *l2 = l;
+       BMLoop *l_iter = l;
        int i = 0;
        
        if (bmesh_radial_length(l) != radlen)
                return FALSE;
 
        do {
-               if (!l2) {
+               if (!l_iter) {
                        bmesh_error();
                        return FALSE;
                }
                
-               if (l2->e != l->e)
+               if (l_iter->e != l->e)
                        return FALSE;
-               if (l2->v != l->e->v1 && l2->v != l->e->v2)
+               if (l_iter->v != l->e->v1 && l_iter->v != l->e->v2)
                        return FALSE;
                
                if (i > BM_LOOP_RADIAL_MAX) {
@@ -362,8 +362,7 @@
                }
                
                i++;
-               l2 = l2->radial_next;
-       } while (l2 != l);
+       } while ((l_iter = bmesh_radial_nextloop(l_iter)) != l);
 
        return TRUE;
 }
@@ -414,31 +413,27 @@
  * Finds the first loop of v around radial
  * cycle
  */
-BMLoop *bmesh_radial_find_first_facevert(BMLoop *l, BMVert *v)
+BMLoop *bmesh_radial_find_first_faceloop(BMLoop *l, BMVert *v)
 {
-       BMLoop *curloop;
-       curloop = l;
+       BMLoop *l_iter;
+       l_iter = l;
        do {
-               if (curloop->v == v) {
-                       return curloop;
+               if (l_iter->v == v) {
+                       return l_iter;
                }
-
-               curloop = bmesh_radial_nextloop(curloop);
-       } while (curloop != l);
+       } while ((l_iter = bmesh_radial_nextloop(l_iter)) != l);
        return NULL;
 }
 
-BMLoop *bmesh_radial_find_next_facevert(BMLoop *l, BMVert *v)
+BMLoop *bmesh_radial_find_next_faceloop(BMLoop *l, BMVert *v)
 {
-       BMLoop *curloop;
-       curloop = bmesh_radial_nextloop(l);
+       BMLoop *l_iter;
+       l_iter = bmesh_radial_nextloop(l);
        do {
-               if (curloop->v == v) {
-                       return curloop;
+               if (l_iter->v == v) {
+                       return l_iter;
                }
-
-               curloop = bmesh_radial_nextloop(curloop);
-       } while (curloop != l);
+       } while ((l_iter = bmesh_radial_nextloop(l_iter)) != l);
        return l;
 }
 
@@ -520,13 +515,15 @@
 
 int bmesh_radial_count_facevert(BMLoop *l, BMVert *v)
 {
-       BMLoop *curloop;
+       BMLoop *l_iter;
        int count = 0;
-       curloop = l;
+       l_iter = l;
        do {
-               if (curloop->v == v) count++;
-               curloop = bmesh_radial_nextloop(curloop);
-       } while (curloop != l);
+               if (l_iter->v == v) {
+                       count++;
+               }
+       } while ((l_iter = bmesh_radial_nextloop(l_iter)) != l);
+
        return count;
 }
 
@@ -918,10 +915,6 @@
 }
 
 /* end disk cycle routine */
-BMLoop *bmesh_radial_nextloop(BMLoop *l)
-{
-       return l->radial_next;
-}
 
 void bmesh_radial_append(BMEdge *e, BMLoop *l)
 {
@@ -1017,7 +1010,7 @@
  * cycle
  *
  */
-BMLoop *bmesh_radial_find_first_facevert(BMLoop *l, BMVert *v)
+BMLoop *bmesh_radial_find_first_faceloop(BMLoop *l, BMVert *v)
 {
        BMLoop *curloop;
        curloop = l;
@@ -1031,7 +1024,7 @@
        return NULL;
 }
 
-BMLoop *bmesh_radial_find_next_facevert(BMLoop *l, BMVert *v)
+BMLoop *bmesh_radial_find_next_faceloop(BMLoop *l, BMVert *v)
 {
        BMLoop *curloop;
        curloop = bmesh_radial_nextloop(l);

Modified: trunk/blender/source/blender/bmesh/intern/bmesh_structure.h
===================================================================
--- trunk/blender/source/blender/bmesh/intern/bmesh_structure.h 2012-02-23 
09:23:29 UTC (rev 44360)
+++ trunk/blender/source/blender/bmesh/intern/bmesh_structure.h 2012-02-23 
09:26:53 UTC (rev 44361)
@@ -43,7 +43,7 @@
 
 void remove_loop_radial_link(BMLoop *l);
 
-/*DOUBLE CIRCULAR LINKED LIST FUNCTIONS*/
+/* DOUBLE CIRCULAR LINKED LIST FUNCTIONS */
 void bmesh_cycle_append(void *h, void *nt);
 int bmesh_cycle_remove(void *h, void *remn);
 int bmesh_cycle_validate(int len, void *h);
@@ -52,7 +52,7 @@
 /* LOOP CYCLE MANAGEMENT */
 int bmesh_loop_validate(BMFace *f);
 
-/*DISK CYCLE MANAGMENT*/
+/* DISK CYCLE MANAGMENT */
 int bmesh_disk_append_edge(struct BMEdge *e, struct BMVert *v);
 void bmesh_disk_remove_edge(struct BMEdge *e, struct BMVert *v);
 struct BMEdge *bmesh_disk_nextedge(struct BMEdge *e, struct BMVert *v);
@@ -61,17 +61,17 @@
 struct BMEdge *bmesh_disk_find_first_faceedge(struct BMEdge *e, struct BMVert 
*v);
 struct BMEdge *bmesh_disk_find_next_faceedge(struct BMEdge *e, struct BMVert 
*v);
 
-/*RADIAL CYCLE MANAGMENT*/
+/* RADIAL CYCLE MANAGMENT */
 void bmesh_radial_append(struct BMEdge *e, struct BMLoop *l);
 void bmesh_radial_remove_loop(struct BMLoop *l, struct BMEdge *e);
 int bmesh_radial_find_face(struct BMEdge *e, struct BMFace *f);
 struct BMLoop *bmesh_radial_nextloop(struct BMLoop *l);
 int bmesh_radial_count_facevert(struct BMLoop *l, struct BMVert *v);

@@ Diff output truncated at 10240 characters. @@
_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to