Commit: 20f3cbfb78b37fdc201d30be52a249cd08fa5d83
Author: Sergey Sharybin
Date:   Mon Jul 16 15:37:27 2018 +0200
Branches: master
https://developer.blender.org/rB20f3cbfb78b37fdc201d30be52a249cd08fa5d83

Cleanup: More clear naming in UV vertex/element mappings

Also use unsigned short for loop index within a polygon for UV vertex
mapping, which matches UV element mapping.

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

M       source/blender/blenkernel/BKE_mesh_mapping.h
M       source/blender/blenkernel/intern/mesh_mapping.c
M       source/blender/blenkernel/intern/subsurf_ccg.c
M       source/blender/editors/mesh/editmesh_utils.c
M       source/blender/editors/uvedit/uvedit_ops.c
M       source/blender/editors/uvedit/uvedit_smart_stitch.c

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

diff --git a/source/blender/blenkernel/BKE_mesh_mapping.h 
b/source/blender/blenkernel/BKE_mesh_mapping.h
index b5b5443574c..aedffb17ae6 100644
--- a/source/blender/blenkernel/BKE_mesh_mapping.h
+++ b/source/blender/blenkernel/BKE_mesh_mapping.h
@@ -50,8 +50,12 @@ typedef struct UvVertMap {
 
 typedef struct UvMapVert {
        struct UvMapVert *next;
-       unsigned int f;
-       unsigned char tfindex, separate, flag;
+       unsigned int poly_index;
+       unsigned short loop_of_poly_index;
+       bool separate;
+       /* Zero-ed by map creation, left for use by specific areas. Is not
+        * initialized to anything. */
+       unsigned char flag;
 } UvMapVert;
 
 /* UvElement stores per uv information so that we can quickly access 
information for a uv.
@@ -63,9 +67,9 @@ typedef struct UvElement {
        /* Face the element belongs to */
        struct BMLoop *l;
        /* index in loop. */
-       unsigned short tfindex;
+       unsigned short loop_of_poly_index;
        /* Whether this element is the first of coincident elements */
-       unsigned char separate;
+       bool separate;
        /* general use flag */
        unsigned char flag;
        /* If generating element map with island sorting, this stores the 
island index */
diff --git a/source/blender/blenkernel/intern/mesh_mapping.c 
b/source/blender/blenkernel/intern/mesh_mapping.c
index 699d6bce2b0..953d3ff2f96 100644
--- a/source/blender/blenkernel/intern/mesh_mapping.c
+++ b/source/blender/blenkernel/intern/mesh_mapping.c
@@ -103,8 +103,8 @@ UvVertMap *BKE_mesh_uv_vert_map_create(
                        nverts = mp->totloop;
 
                        for (i = 0; i < nverts; i++) {
-                               buf->tfindex = (unsigned char)i;
-                               buf->f = a;
+                               buf->loop_of_poly_index = (unsigned short)i;
+                               buf->poly_index = a;
                                buf->separate = 0;
                                buf->next = vmap->vert[mloop[mp->loopstart + 
i].v];
                                vmap->vert[mloop[mp->loopstart + i].v] = buf;
@@ -134,19 +134,19 @@ UvVertMap *BKE_mesh_uv_vert_map_create(
                        v->next = newvlist;
                        newvlist = v;
 
-                       uv = mloopuv[mpoly[v->f].loopstart + v->tfindex].uv;
+                       uv = mloopuv[mpoly[v->poly_index].loopstart + 
v->loop_of_poly_index].uv;
                        lastv = NULL;
                        iterv = vlist;
 
                        while (iterv) {
                                next = iterv->next;
 
-                               uv2 = mloopuv[mpoly[iterv->f].loopstart + 
iterv->tfindex].uv;
+                               uv2 = 
mloopuv[mpoly[iterv->poly_index].loopstart + iterv->loop_of_poly_index].uv;
                                sub_v2_v2v2(uvdiff, uv2, uv);
 
 
                                if (fabsf(uv[0] - uv2[0]) < limit[0] && 
fabsf(uv[1] - uv2[1]) < limit[1] &&
-                                   (!use_winding || winding[iterv->f] == 
winding[v->f]))
+                                   (!use_winding || winding[iterv->poly_index] 
== winding[v->poly_index]))
                                {
                                        if (lastv) lastv->next = next;
                                        else vlist = next;
diff --git a/source/blender/blenkernel/intern/subsurf_ccg.c 
b/source/blender/blenkernel/intern/subsurf_ccg.c
index 1f1270b85b6..dadffbf8fb4 100644
--- a/source/blender/blenkernel/intern/subsurf_ccg.c
+++ b/source/blender/blenkernel/intern/subsurf_ccg.c
@@ -285,11 +285,11 @@ static void get_face_uv_map_vert(UvVertMap *vmap, struct 
MPoly *mpoly, struct ML
                for (nv = v = BKE_mesh_uv_vert_map_get_vert(vmap, ml[j].v); v; 
v = v->next) {
                        if (v->separate)
                                nv = v;
-                       if (v->f == fi)
+                       if (v->poly_index == fi)
                                break;
                }
 
-               fverts[j] = SET_UINT_IN_POINTER(mpoly[nv->f].loopstart + 
nv->tfindex);
+               fverts[j] = SET_UINT_IN_POINTER(mpoly[nv->poly_index].loopstart 
+ nv->loop_of_poly_index);
        }
 }
 
@@ -337,7 +337,7 @@ static int ss_sync_from_uv(CCGSubSurf *ss, CCGSubSurf 
*origss, DerivedMesh *dm,
                for (v = BKE_mesh_uv_vert_map_get_vert(vmap, i); v; v = 
v->next) {
                        if (v->separate) {
                                CCGVert *ssv;
-                               int loopid = mpoly[v->f].loopstart + v->tfindex;
+                               int loopid = mpoly[v->poly_index].loopstart + 
v->loop_of_poly_index;
                                CCGVertHDL vhdl = SET_INT_IN_POINTER(loopid);
 
                                copy_v2_v2(uv, mloopuv[loopid].uv);
diff --git a/source/blender/editors/mesh/editmesh_utils.c 
b/source/blender/editors/mesh/editmesh_utils.c
index 250d8ca23c1..7a344be8e5a 100644
--- a/source/blender/editors/mesh/editmesh_utils.c
+++ b/source/blender/editors/mesh/editmesh_utils.c
@@ -561,8 +561,8 @@ UvVertMap *BM_uv_vert_map_create(
                        }
 
                        BM_ITER_ELEM_INDEX(l, &liter, efa, BM_LOOPS_OF_FACE, i) 
{
-                               buf->tfindex = i;
-                               buf->f = a;
+                               buf->loop_of_poly_index = i;
+                               buf->poly_index = a;
                                buf->separate = 0;
 
                                buf->next = vmap->vert[BM_elem_index_get(l->v)];
@@ -593,10 +593,10 @@ UvVertMap *BM_uv_vert_map_create(
                        v->next = newvlist;
                        newvlist = v;
 
-                       efa = BM_face_at_index(bm, v->f);
+                       efa = BM_face_at_index(bm, v->poly_index);
                        /* tf = CustomData_bmesh_get(&bm->pdata, 
efa->head.data, CD_MTEXPOLY); */ /* UNUSED */
 
-                       l = BM_iter_at_index(bm, BM_LOOPS_OF_FACE, efa, 
v->tfindex);
+                       l = BM_iter_at_index(bm, BM_LOOPS_OF_FACE, efa, 
v->loop_of_poly_index);
                        luv = BM_ELEM_CD_GET_VOID_P(l, cd_loop_uv_offset);
                        uv = luv->uv;
 
@@ -605,17 +605,17 @@ UvVertMap *BM_uv_vert_map_create(
 
                        while (iterv) {
                                next = iterv->next;
-                               efa = BM_face_at_index(bm, iterv->f);
+                               efa = BM_face_at_index(bm, iterv->poly_index);
                                /* tf = CustomData_bmesh_get(&bm->pdata, 
efa->head.data, CD_MTEXPOLY); */ /* UNUSED */
 
-                               l = BM_iter_at_index(bm, BM_LOOPS_OF_FACE, efa, 
iterv->tfindex);
+                               l = BM_iter_at_index(bm, BM_LOOPS_OF_FACE, efa, 
iterv->loop_of_poly_index);
                                luv = BM_ELEM_CD_GET_VOID_P(l, 
cd_loop_uv_offset);
                                uv2 = luv->uv;
 
                                sub_v2_v2v2(uvdiff, uv2, uv);
 
                                if (fabsf(uvdiff[0]) < limit[0] && 
fabsf(uvdiff[1]) < limit[1] &&
-                                   (!use_winding || winding[iterv->f] == 
winding[v->f]))
+                                   (!use_winding || winding[iterv->poly_index] 
== winding[v->poly_index]))
                                {
                                        if (lastv) lastv->next = next;
                                        else vlist = next;
@@ -712,7 +712,7 @@ UvElementMap *BM_uv_element_map_create(
                                buf->l = l;
                                buf->separate = 0;
                                buf->island = INVALID_ISLAND;
-                               buf->tfindex = i;
+                               buf->loop_of_poly_index = i;
 
                                buf->next = 
element_map->vert[BM_elem_index_get(l->v)];
                                element_map->vert[BM_elem_index_get(l->v)] = 
buf;
@@ -825,7 +825,7 @@ UvElementMap *BM_uv_element_map_create(
                                                                map[element - 
element_map->buf] = islandbufsize;
                                                                
islandbuf[islandbufsize].l = element->l;
                                                                
islandbuf[islandbufsize].separate = element->separate;
-                                                               
islandbuf[islandbufsize].tfindex = element->tfindex;
+                                                               
islandbuf[islandbufsize].loop_of_poly_index = element->loop_of_poly_index;
                                                                
islandbuf[islandbufsize].island =  nislands;
                                                                islandbufsize++;
 
diff --git a/source/blender/editors/uvedit/uvedit_ops.c 
b/source/blender/editors/uvedit/uvedit_ops.c
index 3aacd9b4605..375dda7dd6a 100644
--- a/source/blender/editors/uvedit/uvedit_ops.c
+++ b/source/blender/editors/uvedit/uvedit_ops.c
@@ -1043,7 +1043,7 @@ static UvMapVert 
*uv_select_edgeloop_vertex_map_get(UvVertMap *vmap, BMFace *efa
        for (iterv = first; iterv; iterv = iterv->next) {
                if (iterv->separate)
                        first = iterv;
-               if (iterv->f == BM_elem_index_get(efa))
+               if (iterv->poly_index == BM_elem_index_get(efa))
                        return first;
        }
 
@@ -1065,9 +1065,9 @@ static bool uv_select_edgeloop_edge_tag_faces(BMEditMesh 
*em, UvMapVert *first1,
                        if (iterv2->separate && iterv2 != first2)
                                break;
 
-                       if (iterv1->f == iterv2->f) {
+                       if (iterv1->poly_index == iterv2->poly_index) {
                                /* if face already tagged, don't do this edge */
-                               efa = BM_face_at_index(em->bm, iterv1->f);
+                               efa = BM_face_at_index(em->bm, 
iterv1->poly_index);
                                if (BM_elem_flag_test(efa, BM_ELEM_TAG))
                                        return false;
 
@@ -1091,8 +1091,8 @@ static bool uv_select_edgeloop_edge_tag_faces(BMEditMesh 
*em, UvMapVert *first1,
                        if (iterv2->separate && iterv2 != first2)
                                break;
 
-                       if (iterv1->f == iterv2->f) {
-                               efa = BM_face_at_index(em->bm, iterv1->f);
+                       if (iterv1->poly_index == iterv2->poly_index) {
+                               efa = BM_face_at_index(em->bm, 
iterv1->poly_index);
                                BM_elem_flag_enable(efa, BM_ELEM_TAG);
                                break;
                        }
@@ -1301,16 +1301,16 @@ static void uv_select_linked(
                        for (iterv = vlist; iterv; iterv = iterv->next) {
                                if (iterv->separate)
                                        startv = iterv;
-                               if (iterv->f == a)
+                               if (iterv->poly_index == a)
                                        break;
                        }
 
                        for (iterv = startv; iterv; iterv = iterv->next) {
                                if ((startv != iterv) && (iterv->separate))
                                        break;
-                               else if (!flag[iterv->f]) {
-                                       flag[iterv->f] = 1;
-                                       stack[stacksize] = iterv->f;
+                               else if (!flag[iterv->poly_index]) {
+                                       flag[iterv->poly_index] = 1;
+                                       stack[stacksize] = iterv->poly_index;
                                        stacksize++;
                                }
                        }
@@ -2750,7 +2750,7 @@ static void uv_select_flush_from_tag_sticky_loc_internal(
                if (vlist_iter->separate)
                        start_vlist = vlist_iter;
 
-               if (efa_index == vlist_iter->f)
+               if (efa_index == vlist_iter->poly_index)
                        break;
 
                vlist_iter = vlist_iter->next;
@@ -2762,12 +2762,12 @@ static void 
uv_select_flush_from_tag_sticky_loc_internal(
                if (vlist_iter != start_vlist && vlist_iter->separate)
                        break;
 
-               if (efa_index != vlist_iter->f) {
+               if (efa_index != vlist_iter->poly_index) {
                        BMLoop *l_other;
-                       efa_vlist = BM_face_at_index(em->bm, vlist_iter->f);
+                       efa_vlist = BM_face_at_index(em->bm, 
vlist_iter->poly_index);
                        /* tf_vlist = BM_ELEM_CD_GET_VOID_P(efa_vlist, 
cd_poly_tex_offset); */ /* UNUSED */
 
-                       l_other = BM_iter_at_index(em->bm, BM_LOOPS_OF_FACE, 
efa_vlist, vlist_iter->tfindex);
+                       l_other = BM_iter_at_index(em->bm, BM_LOOPS_OF_FACE, 
efa_vlist, vlist_iter->loop_of_poly_index);
 
                        uvedit_uv_select_set(em, scene, l_other, select, false, 
cd_loop_uv_offset);
                }
@@ -4241,14 +4241,14 @@ static int uv_seams_from_islands_exec(bContext *C, 
wmOperator *op)
                                v1coincident = 0;
 
                        separated2 = 0;
-                       efa1 = BM_face_at_index(bm, mv1->f);
+                       efa1 = BM_face_at_index(bm, mv1->poly_index);
                        mvinit2 = vmap->vert[BM_elem_index_get(editedge->v2)];
 
                        for (mv2 = mvinit2; mv2; mv2 = mv2->next) {
                                if (mv2->separate)
                                        mv2sep = mv2;
 
-                               efa2 = BM_face_at_index(bm, mv2->f);
+                               efa2 = BM_face_at_index(bm, mv2->poly_index);
                                if (efa1 == efa2) {
                                        /* if v1 is not coincident no point in 
comparing */
                                        if (v1coincident) {
diff --git a/source/blender/editors/uvedit/uvedit_smart_stitch.c 
b/source/blender/editors/uvedit/uvedit_smart_stitch.c
index e4452af4790..0b768350942 100644
--- a/source/blender/editors/uved

@@ Diff output truncated at 10240 characters. @@

_______________________________________________
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to