Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2014-03-12 10:59:46 +0400
committerCampbell Barton <ideasman42@gmail.com>2014-03-12 11:30:38 +0400
commit5db086b7ce7146fcf0661f387aeeba676e1d08c9 (patch)
tree60744f05627171d12d7ddef8644c56e543217e69 /source/blender/editors/transform/transform_conversions.c
parenteaea0509204b66c93a156976020064bc72ee8f34 (diff)
Transform: minor optimization, use BLI_bitmap for island tagging
Diffstat (limited to 'source/blender/editors/transform/transform_conversions.c')
-rw-r--r--source/blender/editors/transform/transform_conversions.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/source/blender/editors/transform/transform_conversions.c b/source/blender/editors/transform/transform_conversions.c
index 7f475e35110..b4bd922412c 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;
}