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>2013-05-10 10:46:32 +0400
committerCampbell Barton <ideasman42@gmail.com>2013-05-10 10:46:32 +0400
commit7a547e441b2a107148a9c0abb3b8badbb728abef (patch)
tree10b112c9faf70e286c70d4e5afd9cbe8192a2ab1 /source/blender/editors/transform/transform_conversions.c
parent3a309a8313518b19d9ca9a869432b075f82654fb (diff)
avoid customdata lookups for selection test/enable disable.
also add uvedit_face_select_set, uvedit_edge_select_set, uvedit_uv_select_set - since quite a few areas where setting based on a boolean.
Diffstat (limited to 'source/blender/editors/transform/transform_conversions.c')
-rw-r--r--source/blender/editors/transform/transform_conversions.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/source/blender/editors/transform/transform_conversions.c b/source/blender/editors/transform/transform_conversions.c
index e2249cd48d7..d6b12e05b44 100644
--- a/source/blender/editors/transform/transform_conversions.c
+++ b/source/blender/editors/transform/transform_conversions.c
@@ -2418,6 +2418,8 @@ static void createTransUVs(bContext *C, TransInfo *t)
int propmode = t->flag & T_PROP_EDIT;
int propconnected = t->flag & T_PROP_CONNECTED;
+ const int cd_loop_uv_offset = CustomData_get_offset(&em->bm->ldata, CD_MLOOPUV);
+
if (!ED_space_image_show_uvedit(sima, t->obedit)) return;
/* count */
@@ -2442,7 +2444,7 @@ static void createTransUVs(bContext *C, TransInfo *t)
BM_elem_flag_enable(efa, BM_ELEM_TAG);
BM_ITER_ELEM (l, &liter, efa, BM_LOOPS_OF_FACE) {
- if (uvedit_uv_select_test(em, scene, l)) {
+ if (uvedit_uv_select_test(scene, l, cd_loop_uv_offset)) {
countsel++;
if (propconnected) {
@@ -2478,7 +2480,7 @@ static void createTransUVs(bContext *C, TransInfo *t)
continue;
BM_ITER_ELEM (l, &liter, efa, BM_LOOPS_OF_FACE) {
- if (!propmode && !uvedit_uv_select_test(em, scene, l))
+ if (!propmode && !uvedit_uv_select_test(scene, l, cd_loop_uv_offset))
continue;
if (propconnected) {
@@ -2489,8 +2491,8 @@ static void createTransUVs(bContext *C, TransInfo *t)
}
}
- luv = CustomData_bmesh_get(&em->bm->ldata, l->head.data, CD_MLOOPUV);
- UVsToTransData(sima, td++, td2d++, luv->uv, uvedit_uv_select_test(em, scene, l));
+ luv = BM_ELEM_CD_GET_VOID_P(l, cd_loop_uv_offset);
+ UVsToTransData(sima, td++, td2d++, luv->uv, uvedit_uv_select_test(scene, l, cd_loop_uv_offset));
}
}