Commit: 5db086b7ce7146fcf0661f387aeeba676e1d08c9
Author: Campbell Barton
Date:   Wed Mar 12 17:59:46 2014 +1100
https://developer.blender.org/rB5db086b7ce7146fcf0661f387aeeba676e1d08c9

Transform: minor optimization, use BLI_bitmap for island tagging

===================================================================

M       source/blender/editors/transform/transform_conversions.c

===================================================================

diff --git a/source/blender/editors/transform/transform_conversions.c 
b/source/blender/editors/transform/transform_conversions.c
index 7f475e3..b4bd922 100644
--- a/source/blender/editors/transform/transform_conversions.c
+++ b/source/blender/editors/transform/transform_conversions.c
@@ -64,6 +64,7 @@
 #include "BLI_linklist_stack.h"
 #include "BLI_string.h"
 #include "BLI_rect.h"
+#include "BLI_bitmap.h"
 
 #include "BKE_DerivedMesh.h"
 #include "BKE_action.h"
@@ -2588,10 +2589,10 @@ static void createTransUVs(bContext *C, TransInfo *t)
        BMLoop *l;
        BMIter iter, liter;
        UvElementMap *elementmap = NULL;
-       char *island_enabled = NULL;
+       BLI_bitmap *island_enabled = NULL;
        int count = 0, countsel = 0, count_rejected = 0;
-       int propmode = t->flag & T_PROP_EDIT;
-       int propconnected = t->flag & T_PROP_CONNECTED;
+       const bool propmode = (t->flag & T_PROP_EDIT) != 0;
+       const bool propconnected = (t->flag & T_PROP_CONNECTED) != 0;
 
        const int cd_loop_uv_offset = CustomData_get_offset(&em->bm->ldata, 
CD_MLOOPUV);
 
@@ -2606,7 +2607,7 @@ static void createTransUVs(bContext *C, TransInfo *t)
                else {
                        elementmap = BM_uv_element_map_create(em->bm, true, 
true);
                }
-               island_enabled = MEM_callocN(sizeof(*island_enabled) * 
elementmap->totalIslands, "TransIslandData(UV Editing)");
+               island_enabled = BLI_BITMAP_NEW(elementmap->totalIslands, 
"TransIslandData(UV Editing)");
        }
 
        BM_ITER_MESH (efa, &iter, em->bm, BM_FACES_OF_MESH) {
@@ -2624,7 +2625,7 @@ static void createTransUVs(bContext *C, TransInfo *t)
 
                                if (propconnected) {
                                        UvElement *element = 
BM_uv_element_get(elementmap, efa, l);
-                                       island_enabled[element->island] = TRUE;
+                                       BLI_BITMAP_SET(island_enabled, 
element->island);
                                }
 
                        }
@@ -2665,7 +2666,7 @@ static void createTransUVs(bContext *C, TransInfo *t)
 
                        if (propconnected) {
                                UvElement *element = 
BM_uv_element_get(elementmap, efa, l);
-                               if (!island_enabled[element->island]) {
+                               if (!BLI_BITMAP_GET(island_enabled, 
element->island)) {
                                        count_rejected++;
                                        continue;
                                }

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

Reply via email to