Revision: 42595
          
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=42595
Author:   campbellbarton
Date:     2011-12-13 05:20:02 +0000 (Tue, 13 Dec 2011)
Log Message:
-----------
save 4 bytes per BMLoop, added some comments on index use.

Modified Paths:
--------------
    branches/bmesh/blender/source/blender/blenkernel/intern/editderivedmesh.c
    branches/bmesh/blender/source/blender/bmesh/bmesh_class.h
    branches/bmesh/blender/source/blender/bmesh/operators/bevel.c

Modified: 
branches/bmesh/blender/source/blender/blenkernel/intern/editderivedmesh.c
===================================================================
--- branches/bmesh/blender/source/blender/blenkernel/intern/editderivedmesh.c   
2011-12-13 02:45:59 UTC (rev 42594)
+++ branches/bmesh/blender/source/blender/blenkernel/intern/editderivedmesh.c   
2011-12-13 05:20:02 UTC (rev 42595)
@@ -173,7 +173,7 @@
                        l = BMIter_New(&liter, bm, BM_LOOPS_OF_FACE, f);
                        for (j=0; l; l=BMIter_Step(&liter), j++) {
                                /*mark order*/
-                               l->_index = j;
+                               BM_SetIndex(l, j); /* set_loop */
 
                                v = BLI_addfillvert(l->v->co);
                                v->tmp.p = l;
@@ -198,9 +198,9 @@
 
                                BLI_array_growone(looptris);
 
-                               if (l1->_index > l2->_index) { SWAP(BMLoop*, 
l1, l2); }
-                               if (l2->_index > l3->_index) { SWAP(BMLoop*, 
l2, l3); }
-                               if (l1->_index > l2->_index) { SWAP(BMLoop*, 
l1, l2); }
+                               if (BM_GetIndex(l1) > BM_GetIndex(l2)) { 
SWAP(BMLoop*, l1, l2); }
+                               if (BM_GetIndex(l2) > BM_GetIndex(l3)) { 
SWAP(BMLoop*, l2, l3); }
+                               if (BM_GetIndex(l1) > BM_GetIndex(l2)) { 
SWAP(BMLoop*, l1, l2); }
 
                                looptris[i][0] = l1;
                                looptris[i][1] = l2;

Modified: branches/bmesh/blender/source/blender/bmesh/bmesh_class.h
===================================================================
--- branches/bmesh/blender/source/blender/bmesh/bmesh_class.h   2011-12-13 
02:45:59 UTC (rev 42594)
+++ branches/bmesh/blender/source/blender/bmesh/bmesh_class.h   2011-12-13 
05:20:02 UTC (rev 42595)
@@ -37,13 +37,10 @@
 struct BMEdge;
 struct BMLoop;
 struct BMFace;
-struct BMVert;
-struct BMEdge;
-struct BMLoop;
-struct BMFace;
+struct BMFlagLayer;
 struct BMLayerType;
 struct BMSubClassLayer;
-struct BMFlagLayer;
+
 struct BLI_mempool;
 struct Object;
 
@@ -54,7 +51,12 @@
 typedef struct BMHeader {
        void *data; /*customdata layers*/
        struct BMFlagLayer *flags;
-       int index; /*note: use BM_GetIndex/SetIndex macros for index*/
+       int index; /* notes:
+                   * - Use BM_GetIndex/SetIndex macros for index
+                   * - Unitialized to -1 so we can easily tell its not set.
+                   * - Used for edge/vert/face, check BMesh.elem_index_dirty 
for valid index values,
+                   *   this is abused by various tools which set it dirty.
+                   * - For loops this is used for sorting during tesselation. 
*/
 
        char htype; /*element geometric type (verts/edges/loops/faces)*/
        char hflag; /*this would be a CD layer, see below*/
@@ -95,7 +97,6 @@
        
        /*private variables*/
        struct BMLoop *next, *prev; /*won't be able to use listbase API, ger, 
due to head*/
-       int _index; /*used for sorting during tesselation*/
 } BMLoop;
 
 /*eventually, this structure will be used for supporting holes in faces*/

Modified: branches/bmesh/blender/source/blender/bmesh/operators/bevel.c
===================================================================
--- branches/bmesh/blender/source/blender/bmesh/operators/bevel.c       
2011-12-13 02:45:59 UTC (rev 42594)
+++ branches/bmesh/blender/source/blender/bmesh/operators/bevel.c       
2011-12-13 05:20:02 UTC (rev 42595)
@@ -199,7 +199,7 @@
                                        continue;
                        
                                BM_ITER(l2, &liter2, bm, BM_LOOPS_OF_FACE, 
l->f) {
-                                       BM_SetIndex(l2, BLI_array_count(tags)); 
/* set_dirty! */
+                                       BM_SetIndex(l2, BLI_array_count(tags)); 
/* set_loop */
                                        BLI_array_growone(tags);
 
                                        if (!BMO_TestFlag(bm, l2->e, EDGE_OLD)) 
{

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to