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>2012-02-08 13:02:10 +0400
committerCampbell Barton <ideasman42@gmail.com>2012-02-08 13:02:10 +0400
commit76ccd3d5ed19b3955b4f02651a5f3a65fc43d1e3 (patch)
treeecd36af3aa5c05a28454e8d437d9fc60459a6bbf
parent9b57b2d9dc8d2464e1109e09a0a68625cabe878a (diff)
Code Cleanup:
macro for copying polygon settings
-rw-r--r--source/blender/blenkernel/intern/cdderivedmesh.c7
-rw-r--r--source/blender/blenkernel/intern/editderivedmesh.c14
-rw-r--r--source/blender/blenkernel/intern/mesh.c16
-rw-r--r--source/blender/blenkernel/intern/subsurf_ccg.c7
-rw-r--r--source/blender/bmesh/intern/bmesh_interp.c7
-rw-r--r--source/blender/editors/space_view3d/drawmesh.c15
-rw-r--r--source/blender/makesdna/DNA_meshdata_types.h11
7 files changed, 21 insertions, 56 deletions
diff --git a/source/blender/blenkernel/intern/cdderivedmesh.c b/source/blender/blenkernel/intern/cdderivedmesh.c
index 63a2a8b335b..00d7f6e2a1f 100644
--- a/source/blender/blenkernel/intern/cdderivedmesh.c
+++ b/source/blender/blenkernel/intern/cdderivedmesh.c
@@ -1949,12 +1949,7 @@ static void loops_to_customdata_corners(BMesh *bm, CustomData *facedata,
texface = CustomData_get_n(facedata, CD_MTFACE, cdindex, i);
texpoly = CustomData_bmesh_get_n(&bm->pdata, f->head.data, CD_MTEXPOLY, i);
- texface->tpage = texpoly->tpage;
- texface->flag = texpoly->flag;
- texface->transp = texpoly->transp;
- texface->mode = texpoly->mode;
- texface->tile = texpoly->tile;
- texface->unwrap = texpoly->unwrap;
+ ME_MTEXFACE_CPY(texface, texpoly);
for (j=0; j<3; j++) {
l = l3[j];
diff --git a/source/blender/blenkernel/intern/editderivedmesh.c b/source/blender/blenkernel/intern/editderivedmesh.c
index 063b31c5b87..2b2da712a1b 100644
--- a/source/blender/blenkernel/intern/editderivedmesh.c
+++ b/source/blender/blenkernel/intern/editderivedmesh.c
@@ -877,12 +877,7 @@ static void emDM_drawFacesTex_common(
efa = ls[0]->f;
if (has_uv) {
- mtf.flag = tp->flag;
- mtf.tpage = tp->tpage;
- mtf.transp = tp->transp;
- mtf.mode = tp->mode;
- mtf.tile = tp->tile;
- mtf.unwrap = tp->unwrap;
+ ME_MTEXFACE_CPY(&mtf, tp);
}
if (drawParams)
@@ -952,12 +947,7 @@ static void emDM_drawFacesTex_common(
efa = ls[0]->f;
if (has_uv) {
- mtf.flag = tp->flag;
- mtf.tpage = tp->tpage;
- mtf.transp = tp->transp;
- mtf.mode = tp->mode;
- mtf.tile = tp->tile;
- mtf.unwrap = tp->unwrap;
+ ME_MTEXFACE_CPY(&mtf, tp);
}
if (drawParams)
diff --git a/source/blender/blenkernel/intern/mesh.c b/source/blender/blenkernel/intern/mesh.c
index 7d13cf86687..5a3bf09dd0d 100644
--- a/source/blender/blenkernel/intern/mesh.c
+++ b/source/blender/blenkernel/intern/mesh.c
@@ -1846,12 +1846,7 @@ static void bmesh_corners_to_loops(Mesh *me, int findex, int loopstart, int numT
texface = CustomData_get_n(&me->fdata, CD_MTFACE, findex, i);
texpoly = CustomData_get_n(&me->pdata, CD_MTEXPOLY, findex, i);
- texpoly->tpage = texface->tpage;
- texpoly->flag = texface->flag;
- texpoly->transp = texface->transp;
- texpoly->mode = texface->mode;
- texpoly->tile = texface->tile;
- texpoly->unwrap = texface->unwrap;
+ ME_MTEXFACE_CPY(texpoly, texface);
mloopuv = CustomData_get_n(&me->ldata, CD_MLOOPUV, loopstart, i);
copy_v2_v2(mloopuv->uv, texface->uv[0]); mloopuv++;
@@ -2194,13 +2189,8 @@ void mesh_loops_to_mface_corners(CustomData *fdata, CustomData *ldata,
for(i=0; i < numTex; i++){
texface = CustomData_get_n(fdata, CD_MTFACE, findex, i);
texpoly = CustomData_get_n(pdata, CD_MTEXPOLY, polyindex, i);
-
- texface->tpage = texpoly->tpage;
- texface->flag = texpoly->flag;
- texface->transp = texpoly->transp;
- texface->mode = texpoly->mode;
- texface->tile = texpoly->tile;
- texface->unwrap = texpoly->unwrap;
+
+ ME_MTEXFACE_CPY(texface, texpoly);
for (j=0; j < mf_len; j++) {
mloopuv = CustomData_get_n(ldata, CD_MLOOPUV, lindex[j], i);
diff --git a/source/blender/blenkernel/intern/subsurf_ccg.c b/source/blender/blenkernel/intern/subsurf_ccg.c
index cd62a480e58..47e5c0d891d 100644
--- a/source/blender/blenkernel/intern/subsurf_ccg.c
+++ b/source/blender/blenkernel/intern/subsurf_ccg.c
@@ -2402,12 +2402,7 @@ static void ccg_loops_to_corners(CustomData *fdata, CustomData *ldata,
texface = CustomData_get_n(fdata, CD_MTFACE, findex, i);
texpoly = CustomData_get_n(pdata, CD_MTEXPOLY, polyindex, i);
- texface->tpage = texpoly->tpage;
- texface->flag = texpoly->flag;
- texface->transp = texpoly->transp;
- texface->mode = texpoly->mode;
- texface->tile = texpoly->tile;
- texface->unwrap = texpoly->unwrap;
+ ME_MTEXFACE_CPY(texface, texpoly);
mloopuv = CustomData_get_n(ldata, CD_MLOOPUV, loopstart, i);
for (j=0; j<4; j++, mloopuv++) {
diff --git a/source/blender/bmesh/intern/bmesh_interp.c b/source/blender/bmesh/intern/bmesh_interp.c
index 5a24d72fa40..1f8cf3c2ece 100644
--- a/source/blender/bmesh/intern/bmesh_interp.c
+++ b/source/blender/bmesh/intern/bmesh_interp.c
@@ -159,12 +159,7 @@ void BM_loops_to_corners(BMesh *bm, Mesh *me, int findex,
texface = CustomData_get_n(&me->fdata, CD_MTFACE, findex, i);
texpoly = CustomData_bmesh_get_n(&bm->pdata, f->head.data, CD_MTEXPOLY, i);
- texface->tpage = texpoly->tpage;
- texface->flag = texpoly->flag;
- texface->transp = texpoly->transp;
- texface->mode = texpoly->mode;
- texface->tile = texpoly->tile;
- texface->unwrap = texpoly->unwrap;
+ ME_MTEXFACE_CPY(texface, texpoly);
j = 0;
BM_ITER(l, &iter, bm, BM_LOOPS_OF_FACE, f) {
diff --git a/source/blender/editors/space_view3d/drawmesh.c b/source/blender/editors/space_view3d/drawmesh.c
index 1f4f4bd7031..edde4f3d7c1 100644
--- a/source/blender/editors/space_view3d/drawmesh.c
+++ b/source/blender/editors/space_view3d/drawmesh.c
@@ -532,12 +532,7 @@ static int draw_tface_mapped__set_draw(void *userData, int index)
memset(&mtf, 0, sizeof(mtf));
if (tpoly) {
- mtf.flag = tpoly->flag;
- mtf.tpage = tpoly->tpage;
- mtf.transp = tpoly->transp;
- mtf.mode = tpoly->mode;
- mtf.tile = tpoly->tile;
- mtf.unwrap = tpoly->unwrap;
+ ME_MTEXFACE_CPY(&mtf, tpoly);
}
return draw_tface__set_draw(&mtf, (me->mcol != NULL), matnr);
@@ -558,13 +553,7 @@ static int draw_em_tf_mapped__set_draw(void *userData, int index)
if (data->has_mtface) {
MTexPoly *tpoly = CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
- mtf.flag = tpoly->flag;
- mtf.tpage = tpoly->tpage;
- mtf.transp = tpoly->transp;
- mtf.mode = tpoly->mode;
- mtf.tile = tpoly->tile;
- mtf.unwrap = tpoly->unwrap;
-
+ ME_MTEXFACE_CPY(&mtf, tpoly);
}
return draw_tface__set_draw_legacy(&mtf, data->has_mcol, matnr);
diff --git a/source/blender/makesdna/DNA_meshdata_types.h b/source/blender/makesdna/DNA_meshdata_types.h
index 3a34ba38a76..f21751ea33f 100644
--- a/source/blender/makesdna/DNA_meshdata_types.h
+++ b/source/blender/makesdna/DNA_meshdata_types.h
@@ -98,6 +98,17 @@ typedef struct MTexPoly {
short mode,tile,unwrap;
} MTexPoly;
+/* can copy from/to MTexPoly/MTFace */
+#define ME_MTEXFACE_CPY(dst, src) \
+{ \
+ (dst)->tpage = (src)->tpage; \
+ (dst)->flag = (src)->flag; \
+ (dst)->transp = (src)->transp; \
+ (dst)->mode = (src)->mode; \
+ (dst)->tile = (src)->tile; \
+ (dst)->unwrap = (src)->unwrap; \
+}
+
typedef struct MLoopUV {
float uv[2];
int flag;