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-04-13 10:33:59 +0400
committerCampbell Barton <ideasman42@gmail.com>2012-04-13 10:33:59 +0400
commitb2667970d286761d31a7f9c9969a0b95428da200 (patch)
tree96f18e48268bf5c37bfb79b96d376f376efdbc00
parent60d3b8f27b31fea67a91184868b20ed95bab458a (diff)
style cleanup: uv editor
-rw-r--r--source/blender/editors/uvedit/uvedit_buttons.c40
-rw-r--r--source/blender/editors/uvedit/uvedit_draw.c150
-rw-r--r--source/blender/editors/uvedit/uvedit_ops.c774
-rw-r--r--source/blender/editors/uvedit/uvedit_parametrizer.c1044
-rw-r--r--source/blender/editors/uvedit/uvedit_smart_stitch.c170
-rw-r--r--source/blender/editors/uvedit/uvedit_unwrap_ops.c318
6 files changed, 1251 insertions, 1245 deletions
diff --git a/source/blender/editors/uvedit/uvedit_buttons.c b/source/blender/editors/uvedit/uvedit_buttons.c
index 1b5cef6f07d..123fe58100f 100644
--- a/source/blender/editors/uvedit/uvedit_buttons.c
+++ b/source/blender/editors/uvedit/uvedit_buttons.c
@@ -58,7 +58,7 @@
#include "WM_api.h"
#include "WM_types.h"
-#define B_UVEDIT_VERTEX 3
+#define B_UVEDIT_VERTEX 3
/* UV Utilities */
@@ -138,27 +138,27 @@ static void uvedit_vertex_buttons(const bContext *C, uiBlock *block)
}
if (sima->flag & SI_COORDFLOATS) {
- step= 1;
- digits= 3;
+ step = 1;
+ digits = 3;
}
else {
- step= 100;
- digits= 2;
+ step = 100;
+ digits = 2;
}
uiBlockBeginAlign(block);
- uiDefButF(block, NUM, B_UVEDIT_VERTEX, "X:", 10, 10, 145, 19, &uvedit_old_center[0], -10*imx, 10.0*imx, step, digits, "");
- uiDefButF(block, NUM, B_UVEDIT_VERTEX, "Y:", 165, 10, 145, 19, &uvedit_old_center[1], -10*imy, 10.0*imy, step, digits, "");
+ uiDefButF(block, NUM, B_UVEDIT_VERTEX, "X:", 10, 10, 145, 19, &uvedit_old_center[0], -10 * imx, 10.0 * imx, step, digits, "");
+ uiDefButF(block, NUM, B_UVEDIT_VERTEX, "Y:", 165, 10, 145, 19, &uvedit_old_center[1], -10 * imy, 10.0 * imy, step, digits, "");
uiBlockEndAlign(block);
}
}
static void do_uvedit_vertex(bContext *C, void *UNUSED(arg), int event)
{
- SpaceImage *sima= CTX_wm_space_image(C);
- Scene *scene= CTX_data_scene(C);
- Object *obedit= CTX_data_edit_object(C);
- Image *ima= sima->image;
+ SpaceImage *sima = CTX_wm_space_image(C);
+ Scene *scene = CTX_data_scene(C);
+ Object *obedit = CTX_data_edit_object(C);
+ Image *ima = sima->image;
BMEditMesh *em;
float center[2], delta[2];
int imx, imy;
@@ -172,12 +172,12 @@ static void do_uvedit_vertex(bContext *C, void *UNUSED(arg), int event)
uvedit_center(scene, em, ima, center);
if (sima->flag & SI_COORDFLOATS) {
- delta[0]= uvedit_old_center[0] - center[0];
- delta[1]= uvedit_old_center[1] - center[1];
+ delta[0] = uvedit_old_center[0] - center[0];
+ delta[1] = uvedit_old_center[1] - center[1];
}
else {
- delta[0]= uvedit_old_center[0]/imx - center[0];
- delta[1]= uvedit_old_center[1]/imy - center[1];
+ delta[0] = uvedit_old_center[0] / imx - center[0];
+ delta[1] = uvedit_old_center[1] / imy - center[1];
}
uvedit_translate(scene, em, ima, delta);
@@ -189,7 +189,7 @@ static void do_uvedit_vertex(bContext *C, void *UNUSED(arg), int event)
static int image_panel_uv_poll(const bContext *C, PanelType *UNUSED(pt))
{
- Object *obedit= CTX_data_edit_object(C);
+ Object *obedit = CTX_data_edit_object(C);
return ED_uvedit_test(obedit);
}
@@ -197,7 +197,7 @@ static void image_panel_uv(const bContext *C, Panel *pa)
{
uiBlock *block;
- block= uiLayoutAbsoluteBlock(pa->layout);
+ block = uiLayoutAbsoluteBlock(pa->layout);
uiBlockSetHandleFunc(block, do_uvedit_vertex, NULL);
uvedit_vertex_buttons(C, block);
@@ -207,11 +207,11 @@ void ED_uvedit_buttons_register(ARegionType *art)
{
PanelType *pt;
- pt= MEM_callocN(sizeof(PanelType), "spacetype image panel uv");
+ pt = MEM_callocN(sizeof(PanelType), "spacetype image panel uv");
strcpy(pt->idname, "IMAGE_PT_uv");
strcpy(pt->label, "UV Vertex");
- pt->draw= image_panel_uv;
- pt->poll= image_panel_uv_poll;
+ pt->draw = image_panel_uv;
+ pt->poll = image_panel_uv_poll;
BLI_addtail(&art->paneltypes, pt);
}
diff --git a/source/blender/editors/uvedit/uvedit_draw.c b/source/blender/editors/uvedit/uvedit_draw.c
index ce5b6b92acb..c079388be1c 100644
--- a/source/blender/editors/uvedit/uvedit_draw.c
+++ b/source/blender/editors/uvedit/uvedit_draw.c
@@ -71,37 +71,37 @@ static void drawcursor_sima(SpaceImage *sima, ARegion *ar)
ED_space_image_size(sima, &width, &height);
ED_space_image_zoom(sima, ar, &zoomx, &zoomy);
- w= zoomx*width/256.0f;
- h= zoomy*height/256.0f;
+ w = zoomx * width / 256.0f;
+ h = zoomy * height / 256.0f;
cpack(0xFFFFFF);
glTranslatef(sima->cursor[0], sima->cursor[1], 0.0);
- fdrawline(-0.05f/w, 0, 0, 0.05f/h);
- fdrawline(0, 0.05f/h, 0.05f/w, 0.0f);
- fdrawline(0.05f/w, 0.0f, 0.0f, -0.05f/h);
- fdrawline(0.0f, -0.05f/h, -0.05f/w, 0.0f);
+ fdrawline(-0.05f / w, 0, 0, 0.05f / h);
+ fdrawline(0, 0.05f / h, 0.05f / w, 0.0f);
+ fdrawline(0.05f / w, 0.0f, 0.0f, -0.05f / h);
+ fdrawline(0.0f, -0.05f / h, -0.05f / w, 0.0f);
setlinestyle(4);
cpack(0xFF);
- fdrawline(-0.05f/w, 0.0f, 0.0f, 0.05f/h);
- fdrawline(0.0f, 0.05f/h, 0.05f/w, 0.0f);
- fdrawline(0.05f/w, 0.0f, 0.0f, -0.05f/h);
- fdrawline(0.0f, -0.05f/h, -0.05f/w, 0.0f);
+ fdrawline(-0.05f / w, 0.0f, 0.0f, 0.05f / h);
+ fdrawline(0.0f, 0.05f / h, 0.05f / w, 0.0f);
+ fdrawline(0.05f / w, 0.0f, 0.0f, -0.05f / h);
+ fdrawline(0.0f, -0.05f / h, -0.05f / w, 0.0f);
setlinestyle(0.0f);
cpack(0x0);
- fdrawline(-0.020f/w, 0.0f, -0.1f/w, 0.0f);
- fdrawline(0.1f/w, 0.0f, 0.020f/w, 0.0f);
- fdrawline(0.0f, -0.020f/h, 0.0f, -0.1f/h);
- fdrawline(0.0f, 0.1f/h, 0.0f, 0.020f/h);
+ fdrawline(-0.020f / w, 0.0f, -0.1f / w, 0.0f);
+ fdrawline(0.1f / w, 0.0f, 0.020f / w, 0.0f);
+ fdrawline(0.0f, -0.020f / h, 0.0f, -0.1f / h);
+ fdrawline(0.0f, 0.1f / h, 0.0f, 0.020f / h);
setlinestyle(1);
cpack(0xFFFFFF);
- fdrawline(-0.020f/w, 0.0f, -0.1f/w, 0.0f);
- fdrawline(0.1f/w, 0.0f, 0.020f/w, 0.0f);
- fdrawline(0.0f, -0.020f/h, 0.0f, -0.1f/h);
- fdrawline(0.0f, 0.1f/h, 0.0f, 0.020f/h);
+ fdrawline(-0.020f / w, 0.0f, -0.1f / w, 0.0f);
+ fdrawline(0.1f / w, 0.0f, 0.020f / w, 0.0f);
+ fdrawline(0.0f, -0.020f / h, 0.0f, -0.1f / h);
+ fdrawline(0.0f, 0.1f / h, 0.0f, 0.020f / h);
glTranslatef(-sima->cursor[0], -sima->cursor[1], 0.0);
setlinestyle(0);
@@ -109,7 +109,7 @@ static void drawcursor_sima(SpaceImage *sima, ARegion *ar)
static int draw_uvs_face_check(Scene *scene)
{
- ToolSettings *ts= scene->toolsettings;
+ ToolSettings *ts = scene->toolsettings;
/* checks if we are selecting only faces */
if (ts->uv_flag & UV_SYNC_SELECTION) {
@@ -139,7 +139,7 @@ static void draw_uvs_shadow(Object *obedit)
BM_ITER(efa, &iter, bm, BM_FACES_OF_MESH, NULL) {
glBegin(GL_LINE_LOOP);
BM_ITER(l, &liter, bm, BM_LOOPS_OF_FACE, efa) {
- luv= CustomData_bmesh_get(&bm->ldata, l->head.data, CD_MLOOPUV);
+ luv = CustomData_bmesh_get(&bm->ldata, l->head.data, CD_MLOOPUV);
glVertex2fv(luv->uv);
}
@@ -168,7 +168,7 @@ static void draw_uvs_stretch(SpaceImage *sima, Scene *scene, BMEditMesh *em, MTe
BMIter iter, liter;
MTexPoly *tf;
MLoopUV *luv;
- Image *ima= sima->image;
+ Image *ima = sima->image;
BLI_array_declare(tf_uv);
BLI_array_declare(tf_uvorig);
float aspx, aspy, col[4], (*tf_uv)[2] = NULL, (*tf_uvorig)[2] = NULL;
@@ -176,13 +176,13 @@ static void draw_uvs_stretch(SpaceImage *sima, Scene *scene, BMEditMesh *em, MTe
ED_space_image_uv_aspect(sima, &aspx, &aspy);
- switch(sima->dt_uvstretch) {
+ switch (sima->dt_uvstretch) {
case SI_UVDT_STRETCH_AREA:
{
- float totarea=0.0f, totuvarea=0.0f, areadiff, uvarea, area;
+ float totarea = 0.0f, totuvarea = 0.0f, areadiff, uvarea, area;
BM_ITER(efa, &iter, bm, BM_FACES_OF_MESH, NULL) {
- tf= CustomData_bmesh_get(&bm->pdata, efa->head.data, CD_MTEXPOLY);
+ tf = CustomData_bmesh_get(&bm->pdata, efa->head.data, CD_MTEXPOLY);
BLI_array_empty(tf_uv);
BLI_array_empty(tf_uvorig);
@@ -191,7 +191,7 @@ static void draw_uvs_stretch(SpaceImage *sima, Scene *scene, BMEditMesh *em, MTe
i = 0;
BM_ITER(l, &liter, bm, BM_LOOPS_OF_FACE, efa) {
- luv= CustomData_bmesh_get(&bm->ldata, l->head.data, CD_MLOOPUV);
+ luv = CustomData_bmesh_get(&bm->ldata, l->head.data, CD_MLOOPUV);
copy_v2_v2(tf_uvorig[i], luv->uv);
@@ -209,7 +209,7 @@ static void draw_uvs_stretch(SpaceImage *sima, Scene *scene, BMEditMesh *em, MTe
}
else {
if (tf == activetf)
- activetf= NULL;
+ activetf = NULL;
BM_elem_flag_disable(efa, BM_ELEM_TAG);
}
}
@@ -241,7 +241,7 @@ static void draw_uvs_stretch(SpaceImage *sima, Scene *scene, BMEditMesh *em, MTe
i = 0;
BM_ITER(l, &liter, bm, BM_LOOPS_OF_FACE, efa) {
- luv= CustomData_bmesh_get(&bm->ldata, l->head.data, CD_MLOOPUV);
+ luv = CustomData_bmesh_get(&bm->ldata, l->head.data, CD_MLOOPUV);
copy_v2_v2(tf_uvorig[i], luv->uv);
@@ -255,10 +255,10 @@ static void draw_uvs_stretch(SpaceImage *sima, Scene *scene, BMEditMesh *em, MTe
if (area < FLT_EPSILON || uvarea < FLT_EPSILON)
areadiff = 1.0f;
- else if (area>uvarea)
- areadiff = 1.0f-(uvarea/area);
+ else if (area > uvarea)
+ areadiff = 1.0f - (uvarea / area);
else
- areadiff = 1.0f-(area/uvarea);
+ areadiff = 1.0f - (area / uvarea);
weight_to_rgb(col, areadiff);
glColor3fv(col);
@@ -278,8 +278,8 @@ static void draw_uvs_stretch(SpaceImage *sima, Scene *scene, BMEditMesh *em, MTe
{
float *uvang = NULL;
float *ang = NULL;
- float (* av)[3] = NULL; /* use for 2d and 3d angle vectors */
- float (* auv)[2] = NULL;
+ float (*av)[3] = NULL; /* use for 2d and 3d angle vectors */
+ float (*auv)[2] = NULL;
float a;
BLI_array_declare(uvang);
@@ -292,7 +292,7 @@ static void draw_uvs_stretch(SpaceImage *sima, Scene *scene, BMEditMesh *em, MTe
glShadeModel(GL_SMOOTH);
BM_ITER(efa, &iter, bm, BM_FACES_OF_MESH, NULL) {
- tf= CustomData_bmesh_get(&bm->pdata, efa->head.data, CD_MTEXPOLY);
+ tf = CustomData_bmesh_get(&bm->pdata, efa->head.data, CD_MTEXPOLY);
if (uvedit_face_visible(scene, ima, efa, tf)) {
nverts = efa->len;
@@ -324,22 +324,22 @@ static void draw_uvs_stretch(SpaceImage *sima, Scene *scene, BMEditMesh *em, MTe
j = i;
}
- for(i = 0; i < nverts; i++) {
+ for (i = 0; i < nverts; i++) {
#if 0
/* Simple but slow, better reuse normalized vectors
* (Not ported to bmesh, copied for reference) */
uvang1 = RAD2DEG(angle_v2v2v2(tf_uv[3], tf_uv[0], tf_uv[1]));
ang1 = RAD2DEG(angle_v3v3v3(efa->v4->co, efa->v1->co, efa->v2->co));
#endif
- uvang[i] = angle_normalized_v2v2(auv[i], auv[(i+1)%nverts]);
- ang[i] = angle_normalized_v3v3(av[i], av[(i+1)%nverts]);
+ uvang[i] = angle_normalized_v2v2(auv[i], auv[(i + 1) % nverts]);
+ ang[i] = angle_normalized_v3v3(av[i], av[(i + 1) % nverts]);
}
glBegin(GL_POLYGON);
BM_ITER_INDEX(l, &liter, bm, BM_LOOPS_OF_FACE, efa, i) {
luv = CustomData_bmesh_get(&bm->ldata, l->head.data, CD_MLOOPUV);
- a = fabsf(uvang[i]-ang[i])/(float)M_PI;
- weight_to_rgb(col, 1.0f-powf((1.0f-a), 2.0f));
+ a = fabsf(uvang[i] - ang[i]) / (float)M_PI;
+ weight_to_rgb(col, 1.0f - powf((1.0f - a), 2.0f));
glColor3fv(col);
glVertex2fv(luv->uv);
}
@@ -347,7 +347,7 @@ static void draw_uvs_stretch(SpaceImage *sima, Scene *scene, BMEditMesh *em, MTe
}
else {
if (tf == activetf)
- activetf= NULL;
+ activetf = NULL;
BM_elem_flag_disable(efa, BM_ELEM_TAG);
}
}
@@ -373,15 +373,15 @@ static void draw_uvs_other(Scene *scene, Object *obedit, Image *curimage)
glColor3ub(96, 96, 96);
- for (base=scene->base.first; base; base=base->next) {
- Object *ob= base->object;
+ for (base = scene->base.first; base; base = base->next) {
+ Object *ob = base->object;
if (!(base->flag & SELECT)) continue;
if (!(base->lay & scene->lay)) continue;
if (ob->restrictflag & OB_RESTRICT_VIEW) continue;
- if ((ob->type==OB_MESH) && (ob!=obedit)) {
- Mesh *me= ob->data;
+ if ((ob->type == OB_MESH) && (ob != obedit)) {
+ Mesh *me = ob->data;
if (me->mtpoly) {
MPoly *mpoly = me->mpoly;
@@ -407,7 +407,7 @@ static void draw_uvs_other(Scene *scene, Object *obedit, Image *curimage)
static void draw_uvs_texpaint(SpaceImage *sima, Scene *scene, Object *ob)
{
- Mesh *me= ob->data;
+ Mesh *me = ob->data;
Image *curimage = ED_space_image(sima);
if (sima->flag & SI_DRAW_OTHER)
@@ -416,17 +416,17 @@ static void draw_uvs_texpaint(SpaceImage *sima, Scene *scene, Object *ob)
glColor3ub(112, 112, 112);
if (me->mtface) {
- MPoly *mpoly= me->mpoly;
- MTexPoly *tface= me->mtpoly;
+ MPoly *mpoly = me->mpoly;
+ MTexPoly *tface = me->mtpoly;
MLoopUV *mloopuv;
int a, b;
- for (a=me->totpoly; a>0; a--, tface++, mpoly++) {
+ for (a = me->totpoly; a > 0; a--, tface++, mpoly++) {
if (tface->tpage == curimage) {
glBegin(GL_LINE_LOOP);
mloopuv = me->mloopuv + mpoly->loopstart;
- for (b=0; b<mpoly->totloop; b++, mloopuv++) {
+ for (b = 0; b < mpoly->totloop; b++, mloopuv++) {
glVertex2fv(mloopuv->uv);
}
glEnd();
@@ -451,23 +451,23 @@ static void draw_uvs(SpaceImage *sima, Scene *scene, Object *obedit)
unsigned char col1[4], col2[4];
float pointsize;
int drawfaces, interpedges;
- Image *ima= sima->image;
+ Image *ima = sima->image;
StitchPreviewer *stitch_preview = uv_get_stitch_previewer();
- activetf= EDBM_mtexpoly_active_get(em, &efa_act, FALSE); /* will be set to NULL if hidden */
+ activetf = EDBM_mtexpoly_active_get(em, &efa_act, FALSE); /* will be set to NULL if hidden */
activef = BM_active_face_get(bm, FALSE);
- ts= scene->toolsettings;
+ ts = scene->toolsettings;
- drawfaces= draw_uvs_face_check(scene);
+ drawfaces = draw_uvs_face_check(scene);
if (ts->uv_flag & UV_SYNC_SELECTION)
- interpedges= (ts->selectmode & SCE_SELECT_VERTEX);
+ interpedges = (ts->selectmode & SCE_SELECT_VERTEX);
else
- interpedges= (ts->uv_selectmode == UV_SELECT_VERTEX);
+ interpedges = (ts->uv_selectmode == UV_SELECT_VERTEX);
/* draw other uvs */
if (sima->flag & SI_DRAW_OTHER) {
- Image *curimage= (activetf)? activetf->tpage: NULL;
+ Image *curimage = (activetf) ? activetf->tpage : NULL;
draw_uvs_other(scene, obedit, curimage);
}
@@ -478,7 +478,7 @@ static void draw_uvs(SpaceImage *sima, Scene *scene, Object *obedit)
/* first try existing derivedmesh */
if (!draw_uvs_dm_shadow(em->derivedFinal)) {
/* create one if it does not exist */
- cagedm = editbmesh_get_derived_cage_and_final(scene, obedit, me->edit_btmesh, &finaldm, CD_MASK_BAREMESH|CD_MASK_MTFACE);
+ cagedm = editbmesh_get_derived_cage_and_final(scene, obedit, me->edit_btmesh, &finaldm, CD_MASK_BAREMESH | CD_MASK_MTFACE);
/* when sync selection is enabled, all faces are drawn (except for hidden)
* so if cage is the same as the final, theres no point in drawing this */
@@ -504,11 +504,11 @@ static void draw_uvs(SpaceImage *sima, Scene *scene, Object *obedit)
glEnable(GL_BLEND);
BM_ITER(efa, &iter, bm, BM_FACES_OF_MESH, NULL) {
- tf= CustomData_bmesh_get(&bm->pdata, efa->head.data, CD_MTEXPOLY);
+ tf = CustomData_bmesh_get(&bm->pdata, efa->head.data, CD_MTEXPOLY);
if (uvedit_face_visible(scene, ima, efa, tf)) {
BM_elem_flag_enable(efa, BM_ELEM_TAG);
- if (tf==activetf) continue; /* important the temp boolean is set above */
+ if (tf == activetf) continue; /* important the temp boolean is set above */
if (uvedit_face_selected(scene, em, efa))
glColor4ubv((GLubyte *)col2);
@@ -524,7 +524,7 @@ static void draw_uvs(SpaceImage *sima, Scene *scene, Object *obedit)
}
else {
if (tf == activetf)
- activetf= NULL;
+ activetf = NULL;
BM_elem_flag_disable(efa, BM_ELEM_TAG);
}
}
@@ -534,14 +534,14 @@ static void draw_uvs(SpaceImage *sima, Scene *scene, Object *obedit)
/* would be nice to do this within a draw loop but most below are optional, so it would involve too many checks */
BM_ITER(efa, &iter, bm, BM_FACES_OF_MESH, NULL) {
- tf= CustomData_bmesh_get(&bm->pdata, efa->head.data, CD_MTEXPOLY);
+ tf = CustomData_bmesh_get(&bm->pdata, efa->head.data, CD_MTEXPOLY);
if (uvedit_face_visible(scene, ima, efa, tf)) {
BM_elem_flag_enable(efa, BM_ELEM_TAG);
}
else {
if (tf == activetf)
- activetf= NULL;
+ activetf = NULL;
BM_elem_flag_disable(efa, BM_ELEM_TAG);
}
}
@@ -580,7 +580,7 @@ static void draw_uvs(SpaceImage *sima, Scene *scene, Object *obedit)
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
}
- switch(sima->dt_uv) {
+ switch (sima->dt_uv) {
case SI_UVDT_DASH:
BM_ITER(efa, &iter, bm, BM_FACES_OF_MESH, NULL) {
if (!BM_elem_flag_test(efa, BM_ELEM_TAG))
@@ -609,10 +609,10 @@ static void draw_uvs(SpaceImage *sima, Scene *scene, Object *obedit)
#if 0
glBegin(GL_LINE_STRIP);
- luv = CustomData_bmesh_get(&bm->ldata, efa->lbase->head.data, CD_MLOOPUV);
- glVertex2fv(luv->uv);
- luv = CustomData_bmesh_get(&bm->ldata, efa->lbase->next->head.data, CD_MLOOPUV);
- glVertex2fv(luv->uv);
+ luv = CustomData_bmesh_get(&bm->ldata, efa->lbase->head.data, CD_MLOOPUV);
+ glVertex2fv(luv->uv);
+ luv = CustomData_bmesh_get(&bm->ldata, efa->lbase->next->head.data, CD_MLOOPUV);
+ glVertex2fv(luv->uv);
glEnd();
#endif
@@ -622,7 +622,7 @@ static void draw_uvs(SpaceImage *sima, Scene *scene, Object *obedit)
break;
case SI_UVDT_BLACK: /* black/white */
case SI_UVDT_WHITE:
- if (sima->dt_uv==SI_UVDT_WHITE) glColor3f(1.0f, 1.0f, 1.0f);
+ if (sima->dt_uv == SI_UVDT_WHITE) glColor3f(1.0f, 1.0f, 1.0f);
else glColor3f(0.0f, 0.0f, 0.0f);
BM_ITER(efa, &iter, bm, BM_FACES_OF_MESH, NULL) {
@@ -670,7 +670,7 @@ static void draw_uvs(SpaceImage *sima, Scene *scene, Object *obedit)
glBegin(GL_LINE_LOOP);
BM_ITER(l, &liter, bm, BM_LOOPS_OF_FACE, efa) {
- sel = (uvedit_uv_selected(em, scene, l)? 1 : 0);
+ sel = (uvedit_uv_selected(em, scene, l) ? 1 : 0);
glColor4ubv(sel ? (GLubyte *)col1 : (GLubyte *)col2);
luv = CustomData_bmesh_get(&bm->ldata, l->head.data, CD_MLOOPUV);
@@ -688,7 +688,7 @@ static void draw_uvs(SpaceImage *sima, Scene *scene, Object *obedit)
glBegin(GL_LINES);
BM_ITER(l, &liter, bm, BM_LOOPS_OF_FACE, efa) {
- sel = (uvedit_edge_selected(em, scene, l)? 1 : 0);
+ sel = (uvedit_edge_selected(em, scene, l) ? 1 : 0);
if (sel != lastsel) {
glColor4ubv(sel ? (GLubyte *)col1 : (GLubyte *)col2);
lastsel = sel;
@@ -787,7 +787,7 @@ static void draw_uvs(SpaceImage *sima, Scene *scene, Object *obedit)
/* pinned uvs */
/* give odd pointsizes odd pin pointsizes */
- glPointSize(pointsize*2 + (((int)pointsize % 2)? (-1): 0));
+ glPointSize(pointsize * 2 + (((int)pointsize % 2) ? (-1) : 0));
cpack(0xFF);
bglBegin(GL_POINTS);
@@ -834,7 +834,7 @@ static void draw_uvs(SpaceImage *sima, Scene *scene, Object *obedit)
UI_ThemeColor4(TH_STITCH_PREVIEW_ACTIVE);
glPolygonMode(GL_FRONT_AND_BACK, GL_FILL);
glVertexPointer(2, GL_FLOAT, 0, stitch_preview->static_tris);
- glDrawArrays(GL_TRIANGLES, 0, stitch_preview->num_static_tris*3);
+ glDrawArrays(GL_TRIANGLES, 0, stitch_preview->num_static_tris * 3);
glVertexPointer(2, GL_FLOAT, 0, stitch_preview->preview_polys);
for (i = 0; i < stitch_preview->num_polys; i++) {
@@ -850,12 +850,12 @@ static void draw_uvs(SpaceImage *sima, Scene *scene, Object *obedit)
glPolygonMode(GL_FRONT_AND_BACK, GL_POINT);
#if 0
UI_ThemeColor4(TH_STITCH_PREVIEW_VERT);
- glDrawArrays(GL_TRIANGLES, 0, stitch_preview->num_tris*3);
+ glDrawArrays(GL_TRIANGLES, 0, stitch_preview->num_tris * 3);
#endif
glDisable(GL_BLEND);
/* draw vert preview */
- glPointSize(pointsize*2.0);
+ glPointSize(pointsize * 2.0);
UI_ThemeColor4(TH_STITCH_PREVIEW_STITCHABLE);
glVertexPointer(2, GL_FLOAT, 0, stitch_preview->preview_stitchable);
glDrawArrays(GL_POINTS, 0, stitch_preview->num_stitchable);
@@ -877,8 +877,8 @@ void draw_uvedit_main(SpaceImage *sima, ARegion *ar, Scene *scene, Object *obedi
int show_uvedit, show_uvshadow, show_texpaint_uvshadow;
show_texpaint_uvshadow = (obact && obact->type == OB_MESH && obact->mode == OB_MODE_TEXTURE_PAINT);
- show_uvedit= ED_space_image_show_uvedit(sima, obedit);
- show_uvshadow= ED_space_image_show_uvshadow(sima, obedit);
+ show_uvedit = ED_space_image_show_uvedit(sima, obedit);
+ show_uvshadow = ED_space_image_show_uvshadow(sima, obedit);
if (show_uvedit || show_uvshadow || show_texpaint_uvshadow) {
if (show_uvshadow)
diff --git a/source/blender/editors/uvedit/uvedit_ops.c b/source/blender/editors/uvedit/uvedit_ops.c
index 5609c8e716b..e1ee00be384 100644
--- a/source/blender/editors/uvedit/uvedit_ops.c
+++ b/source/blender/editors/uvedit/uvedit_ops.c
@@ -82,7 +82,7 @@
#include "uvedit_intern.h"
-#define EFA_F1_FLAG 2
+#define EFA_F1_FLAG 2
/************************* state testing ************************/
@@ -105,18 +105,18 @@ int ED_uvedit_test(Object *obedit)
static int ED_operator_uvedit_can_uv_sculpt(struct bContext *C)
{
- SpaceImage *sima= CTX_wm_space_image(C);
+ SpaceImage *sima = CTX_wm_space_image(C);
ToolSettings *toolsettings = CTX_data_tool_settings(C);
- Object *obedit= CTX_data_edit_object(C);
+ Object *obedit = CTX_data_edit_object(C);
return ED_space_image_show_uvedit(sima, obedit) && !(toolsettings->use_uv_sculpt);
}
-static int UNUSED_FUNCTION(ED_operator_uvmap_mesh)(bContext *C)
+static int UNUSED_FUNCTION(ED_operator_uvmap_mesh) (bContext * C)
{
- Object *ob= CTX_data_active_object(C);
+ Object *ob = CTX_data_active_object(C);
- if (ob && ob->type==OB_MESH) {
+ if (ob && ob->type == OB_MESH) {
Mesh *me = ob->data;
if (CustomData_get_layer(&me->fdata, CD_MTFACE) != NULL)
@@ -134,30 +134,30 @@ static int is_image_texture_node(bNode *node)
int ED_object_get_active_image(Object *ob, int mat_nr, Image **ima, ImageUser **iuser, bNode **node_r)
{
- Material *ma= give_current_material(ob, mat_nr);
- bNode *node= (ma && ma->use_nodes)? nodeGetActiveTexture(ma->nodetree): NULL;
+ Material *ma = give_current_material(ob, mat_nr);
+ bNode *node = (ma && ma->use_nodes) ? nodeGetActiveTexture(ma->nodetree) : NULL;
if (node && is_image_texture_node(node)) {
- if (ima) *ima= (Image*)node->id;
- if (iuser) *iuser= NULL;
- if (node_r) *node_r= node;
+ if (ima) *ima = (Image *)node->id;
+ if (iuser) *iuser = NULL;
+ if (node_r) *node_r = node;
return TRUE;
}
- if (ima) *ima= NULL;
- if (iuser) *iuser= NULL;
- if (node_r) *node_r= node;
+ if (ima) *ima = NULL;
+ if (iuser) *iuser = NULL;
+ if (node_r) *node_r = node;
return FALSE;
}
void ED_object_assign_active_image(Main *bmain, Object *ob, int mat_nr, Image *ima)
{
- Material *ma= give_current_material(ob, mat_nr);
- bNode *node= (ma && ma->use_nodes)? nodeGetActiveTexture(ma->nodetree): NULL;
+ Material *ma = give_current_material(ob, mat_nr);
+ bNode *node = (ma && ma->use_nodes) ? nodeGetActiveTexture(ma->nodetree) : NULL;
if (node && is_image_texture_node(node)) {
- node->id= &ima->id;
+ node->id = &ima->id;
ED_node_generic_update(bmain, ma->nodetree, node);
}
}
@@ -170,10 +170,10 @@ void ED_uvedit_assign_image(Main *bmain, Scene *scene, Object *obedit, Image *im
BMFace *efa;
BMIter iter;
MTexPoly *tf;
- int update= 0;
+ int update = 0;
/* skip assigning these procedural images... */
- if (ima && (ima->type==IMA_TYPE_R_RESULT || ima->type==IMA_TYPE_COMPOSITE))
+ if (ima && (ima->type == IMA_TYPE_R_RESULT || ima->type == IMA_TYPE_COMPOSITE))
return;
/* verify we have a mesh we can work with */
@@ -187,8 +187,8 @@ void ED_uvedit_assign_image(Main *bmain, Scene *scene, Object *obedit, Image *im
if (scene_use_new_shading_nodes(scene)) {
/* new shading system, assign image in material */
- int sloppy= 1;
- BMFace *efa= BM_active_face_get(em->bm, sloppy);
+ int sloppy = 1;
+ BMFace *efa = BM_active_face_get(em->bm, sloppy);
if (efa)
ED_object_assign_active_image(bmain, obedit, efa->mat_nr + 1, ima);
@@ -200,7 +200,7 @@ void ED_uvedit_assign_image(Main *bmain, Scene *scene, Object *obedit, Image *im
if (!CustomData_has_layer(&em->bm->pdata, CD_MTEXPOLY)) {
BM_data_layer_add(em->bm, &em->bm->pdata, CD_MTEXPOLY);
BM_data_layer_add(em->bm, &em->bm->ldata, CD_MLOOPUV);
- update= 1;
+ update = 1;
}
/* now assign to all visible faces */
@@ -209,13 +209,13 @@ void ED_uvedit_assign_image(Main *bmain, Scene *scene, Object *obedit, Image *im
if (uvedit_face_visible(scene, previma, efa, tf)) {
if (ima) {
- tf->tpage= ima;
+ tf->tpage = ima;
- if (ima->id.us==0) id_us_plus(&ima->id);
+ if (ima->id.us == 0) id_us_plus(&ima->id);
else id_lib_extern(&ima->id);
}
else {
- tf->tpage= NULL;
+ tf->tpage = NULL;
}
update = 1;
@@ -229,8 +229,8 @@ void ED_uvedit_assign_image(Main *bmain, Scene *scene, Object *obedit, Image *im
}
-/* dotile - 1, set the tile flag (from the space image)
- * 2, set the tile index for the faces. */
+/* dotile - 1, set the tile flag (from the space image)
+ * 2, set the tile index for the faces. */
static int uvedit_set_tile(Object *obedit, Image *ima, int curtile)
{
BMEditMesh *em;
@@ -246,7 +246,7 @@ static int uvedit_set_tile(Object *obedit, Image *ima, int curtile)
return 0;
/* skip assigning these procedural images... */
- if (ima->type==IMA_TYPE_R_RESULT || ima->type==IMA_TYPE_COMPOSITE)
+ if (ima->type == IMA_TYPE_R_RESULT || ima->type == IMA_TYPE_COMPOSITE)
return 0;
em = BMEdit_FromObject(obedit);
@@ -255,7 +255,7 @@ static int uvedit_set_tile(Object *obedit, Image *ima, int curtile)
tf = CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
if (!BM_elem_flag_test(efa, BM_ELEM_HIDDEN) && BM_elem_flag_test(efa, BM_ELEM_SELECT))
- tf->tile= curtile; /* set tile index */
+ tf->tile = curtile; /* set tile index */
}
DAG_id_tag_update(obedit->data, 0);
@@ -273,39 +273,39 @@ static void uvedit_pixel_to_float(SpaceImage *sima, float *dist, float pixeldist
ED_space_image_size(sima, &width, &height);
}
else {
- width= 256;
- height= 256;
+ width = 256;
+ height = 256;
}
- dist[0]= pixeldist/width;
- dist[1]= pixeldist/height;
+ dist[0] = pixeldist / width;
+ dist[1] = pixeldist / height;
}
/*************** visibility and selection utilities **************/
int uvedit_face_visible_nolocal(Scene *scene, BMFace *efa)
{
- ToolSettings *ts= scene->toolsettings;
+ ToolSettings *ts = scene->toolsettings;
if (ts->uv_flag & UV_SYNC_SELECTION)
- return (BM_elem_flag_test(efa, BM_ELEM_HIDDEN)==0);
+ return (BM_elem_flag_test(efa, BM_ELEM_HIDDEN) == 0);
else
- return (BM_elem_flag_test(efa, BM_ELEM_HIDDEN)==0 && BM_elem_flag_test(efa, BM_ELEM_SELECT));
+ return (BM_elem_flag_test(efa, BM_ELEM_HIDDEN) == 0 && BM_elem_flag_test(efa, BM_ELEM_SELECT));
}
int uvedit_face_visible(Scene *scene, Image *ima, BMFace *efa, MTexPoly *tf)
{
- ToolSettings *ts= scene->toolsettings;
+ ToolSettings *ts = scene->toolsettings;
if (ts->uv_flag & UV_SHOW_SAME_IMAGE)
- return (tf->tpage==ima)? uvedit_face_visible_nolocal(scene, efa): 0;
+ return (tf->tpage == ima) ? uvedit_face_visible_nolocal(scene, efa) : 0;
else
return uvedit_face_visible_nolocal(scene, efa);
}
int uvedit_face_selected(Scene *scene, BMEditMesh *em, BMFace *efa)
{
- ToolSettings *ts= scene->toolsettings;
+ ToolSettings *ts = scene->toolsettings;
if (ts->uv_flag & UV_SYNC_SELECTION)
return (BM_elem_flag_test(efa, BM_ELEM_SELECT));
@@ -326,7 +326,7 @@ int uvedit_face_selected(Scene *scene, BMEditMesh *em, BMFace *efa)
int uvedit_face_select(Scene *scene, BMEditMesh *em, BMFace *efa)
{
- ToolSettings *ts= scene->toolsettings;
+ ToolSettings *ts = scene->toolsettings;
if (ts->uv_flag & UV_SYNC_SELECTION)
BM_elem_select_set(em->bm, efa, TRUE);
@@ -348,7 +348,7 @@ int uvedit_face_select(Scene *scene, BMEditMesh *em, BMFace *efa)
int uvedit_face_deselect(Scene *scene, BMEditMesh *em, BMFace *efa)
{
- ToolSettings *ts= scene->toolsettings;
+ ToolSettings *ts = scene->toolsettings;
if (ts->uv_flag & UV_SYNC_SELECTION) {
BM_elem_select_set(em->bm, efa, FALSE);
@@ -371,7 +371,7 @@ int uvedit_face_deselect(Scene *scene, BMEditMesh *em, BMFace *efa)
int uvedit_edge_selected(BMEditMesh *em, Scene *scene, BMLoop *l)
{
- ToolSettings *ts= scene->toolsettings;
+ ToolSettings *ts = scene->toolsettings;
if (ts->uv_flag & UV_SYNC_SELECTION) {
if (ts->selectmode & SCE_SELECT_FACE) {
@@ -398,7 +398,7 @@ int uvedit_edge_selected(BMEditMesh *em, Scene *scene, BMLoop *l)
void uvedit_edge_select(BMEditMesh *em, Scene *scene, BMLoop *l)
{
- ToolSettings *ts= scene->toolsettings;
+ ToolSettings *ts = scene->toolsettings;
if (ts->uv_flag & UV_SYNC_SELECTION) {
if (ts->selectmode & SCE_SELECT_FACE)
@@ -424,7 +424,7 @@ void uvedit_edge_select(BMEditMesh *em, Scene *scene, BMLoop *l)
void uvedit_edge_deselect(BMEditMesh *em, Scene *scene, BMLoop *l)
{
- ToolSettings *ts= scene->toolsettings;
+ ToolSettings *ts = scene->toolsettings;
if (ts->uv_flag & UV_SYNC_SELECTION) {
if (ts->selectmode & SCE_SELECT_FACE)
@@ -449,7 +449,7 @@ void uvedit_edge_deselect(BMEditMesh *em, Scene *scene, BMLoop *l)
int uvedit_uv_selected(BMEditMesh *em, Scene *scene, BMLoop *l)
{
- ToolSettings *ts= scene->toolsettings;
+ ToolSettings *ts = scene->toolsettings;
if (ts->uv_flag & UV_SYNC_SELECTION) {
if (ts->selectmode & SCE_SELECT_FACE)
@@ -466,7 +466,7 @@ int uvedit_uv_selected(BMEditMesh *em, Scene *scene, BMLoop *l)
void uvedit_uv_select(BMEditMesh *em, Scene *scene, BMLoop *l)
{
- ToolSettings *ts= scene->toolsettings;
+ ToolSettings *ts = scene->toolsettings;
if (ts->uv_flag & UV_SYNC_SELECTION) {
if (ts->selectmode & SCE_SELECT_FACE)
@@ -483,7 +483,7 @@ void uvedit_uv_select(BMEditMesh *em, Scene *scene, BMLoop *l)
void uvedit_uv_deselect(BMEditMesh *em, Scene *scene, BMLoop *l)
{
- ToolSettings *ts= scene->toolsettings;
+ ToolSettings *ts = scene->toolsettings;
if (ts->uv_flag & UV_SYNC_SELECTION) {
if (ts->selectmode & SCE_SELECT_FACE)
@@ -563,25 +563,25 @@ float poly_uv_area(float uv[][2], int len)
void poly_copy_aspect(float uv_orig[][2], float uv[][2], float aspx, float aspy, int len)
{
int i;
- for (i=0; i<len; i++) {
- uv[i][0] = uv_orig[i][0]*aspx;
- uv[i][1] = uv_orig[i][1]*aspy;
+ for (i = 0; i < len; i++) {
+ uv[i][0] = uv_orig[i][0] * aspx;
+ uv[i][1] = uv_orig[i][1] * aspy;
}
}
void uv_copy_aspect(float uv_orig[][2], float uv[][2], float aspx, float aspy)
{
- uv[0][0] = uv_orig[0][0]*aspx;
- uv[0][1] = uv_orig[0][1]*aspy;
+ uv[0][0] = uv_orig[0][0] * aspx;
+ uv[0][1] = uv_orig[0][1] * aspy;
- uv[1][0] = uv_orig[1][0]*aspx;
- uv[1][1] = uv_orig[1][1]*aspy;
+ uv[1][0] = uv_orig[1][0] * aspx;
+ uv[1][1] = uv_orig[1][1] * aspy;
- uv[2][0] = uv_orig[2][0]*aspx;
- uv[2][1] = uv_orig[2][1]*aspy;
+ uv[2][0] = uv_orig[2][0] * aspx;
+ uv[2][1] = uv_orig[2][1] * aspy;
- uv[3][0] = uv_orig[3][0]*aspx;
- uv[3][1] = uv_orig[3][1]*aspy;
+ uv[3][0] = uv_orig[3][0] * aspx;
+ uv[3][1] = uv_orig[3][1] * aspy;
}
int ED_uvedit_minmax(Scene *scene, Image *ima, Object *obedit, float *min, float *max)
@@ -596,7 +596,7 @@ int ED_uvedit_minmax(Scene *scene, Image *ima, Object *obedit, float *min, float
INIT_MINMAX2(min, max);
- sel= 0;
+ sel = 0;
BM_ITER(efa, &iter, em->bm, BM_FACES_OF_MESH, NULL) {
tf = CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
if (!uvedit_face_visible(scene, ima, efa, tf))
@@ -622,11 +622,11 @@ static int ED_uvedit_median(Scene *scene, Image *ima, Object *obedit, float co[2
BMIter iter, liter;
MTexPoly *tf;
MLoopUV *luv;
- unsigned int sel= 0;
+ unsigned int sel = 0;
zero_v2(co);
BM_ITER(efa, &iter, em->bm, BM_FACES_OF_MESH, NULL) {
- tf= CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
+ tf = CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
if (!uvedit_face_visible(scene, ima, efa, tf))
continue;
@@ -639,7 +639,7 @@ static int ED_uvedit_median(Scene *scene, Image *ima, Object *obedit, float co[2
}
}
- mul_v2_fl(co, 1.0f/(float)sel);
+ mul_v2_fl(co, 1.0f / (float)sel);
return (sel != 0);
}
@@ -676,13 +676,13 @@ void uv_find_nearest_edge(Scene *scene, Image *ima, BMEditMesh *em, float co[2],
float mindist, dist;
int i;
- mindist= 1e10f;
+ mindist = 1e10f;
memset(hit, 0, sizeof(*hit));
BM_mesh_elem_index_ensure(em->bm, BM_VERT);
BM_ITER(efa, &iter, em->bm, BM_FACES_OF_MESH, NULL) {
- tf= CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
+ tf = CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
if (!uvedit_face_visible(scene, ima, efa, tf))
continue;
@@ -691,11 +691,11 @@ void uv_find_nearest_edge(Scene *scene, Image *ima, BMEditMesh *em, float co[2],
luv = CustomData_bmesh_get(&em->bm->ldata, l->head.data, CD_MLOOPUV);
nextluv = CustomData_bmesh_get(&em->bm->ldata, l->next->head.data, CD_MLOOPUV);
- dist= dist_to_line_segment_v2(co, luv->uv, nextluv->uv);
+ dist = dist_to_line_segment_v2(co, luv->uv, nextluv->uv);
if (dist < mindist) {
- hit->tf= tf;
- hit->efa= efa;
+ hit->tf = tf;
+ hit->efa = efa;
hit->l = l;
hit->nextl = l->next;
@@ -722,7 +722,7 @@ static void find_nearest_uv_face(Scene *scene, Image *ima, BMEditMesh *em, float
MLoopUV *luv;
float mindist, dist, cent[2];
- mindist= 1e10f;
+ mindist = 1e10f;
memset(hit, 0, sizeof(*hit));
/*this will fill in hit.vert1 and hit.vert2*/
@@ -731,11 +731,11 @@ static void find_nearest_uv_face(Scene *scene, Image *ima, BMEditMesh *em, float
hit->luv = hit->nextluv = NULL;
BM_ITER(efa, &iter, em->bm, BM_FACES_OF_MESH, NULL) {
- tf= CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
+ tf = CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
if (!uvedit_face_visible(scene, ima, efa, tf))
continue;
- cent[0]= cent[1]= 0.0f;
+ cent[0] = cent[1] = 0.0f;
BM_ITER(l, &liter, em->bm, BM_LOOPS_OF_FACE, efa) {
luv = CustomData_bmesh_get(&em->bm->ldata, l->head.data, CD_MLOOPUV);
@@ -744,18 +744,18 @@ static void find_nearest_uv_face(Scene *scene, Image *ima, BMEditMesh *em, float
cent[0] /= efa->len;
cent[1] /= efa->len;
- dist= fabs(co[0]- cent[0]) + fabs(co[1]- cent[1]);
+ dist = fabs(co[0] - cent[0]) + fabs(co[1] - cent[1]);
if (dist < mindist) {
- hit->tf= tf;
- hit->efa= efa;
- mindist= dist;
+ hit->tf = tf;
+ hit->efa = efa;
+ mindist = dist;
}
}
}
static int nearest_uv_between(BMEditMesh *em, BMFace *efa, int UNUSED(nverts), int id,
- float co[2], float uv[2])
+ float co[2], float uv[2])
{
BMLoop *l;
MLoopUV *luv;
@@ -763,11 +763,11 @@ static int nearest_uv_between(BMEditMesh *em, BMFace *efa, int UNUSED(nverts), i
float m[3], v1[3], v2[3], c1, c2, *uv1, /* *uv2, */ /* UNUSED */ *uv3;
int id1, id2, i;
- id1= (id+efa->len-1)%efa->len;
- id2= (id+efa->len+1)%efa->len;
+ id1 = (id + efa->len - 1) % efa->len;
+ id2 = (id + efa->len + 1) % efa->len;
- m[0]= co[0]-uv[0];
- m[1]= co[1]-uv[1];
+ m[0] = co[0] - uv[0];
+ m[1] = co[1] - uv[1];
i = 0;
BM_ITER(l, &iter, em->bm, BM_LOOPS_OF_FACE, efa) {
@@ -776,7 +776,7 @@ static int nearest_uv_between(BMEditMesh *em, BMFace *efa, int UNUSED(nverts), i
if (i == id1)
uv1 = luv->uv;
else if (i == id)
- ; /* uv2 = luv->uv; */ /* UNUSED */
+ ; /* uv2 = luv->uv; */ /* UNUSED */
else if (i == id2)
uv3 = luv->uv;
@@ -787,17 +787,17 @@ static int nearest_uv_between(BMEditMesh *em, BMFace *efa, int UNUSED(nverts), i
sub_v3_v3v3(v2, uv3, uv);
/* m and v2 on same side of v-v1? */
- c1= v1[0]*m[1] - v1[1]*m[0];
- c2= v1[0]*v2[1] - v1[1]*v2[0];
+ c1 = v1[0] * m[1] - v1[1] * m[0];
+ c2 = v1[0] * v2[1] - v1[1] * v2[0];
- if (c1*c2 < 0.0f)
+ if (c1 * c2 < 0.0f)
return 0;
/* m and v1 on same side of v-v2? */
- c1= v2[0]*m[1] - v2[1]*m[0];
- c2= v2[0]*v1[1] - v2[1]*v1[0];
+ c1 = v2[0] * m[1] - v2[1] * m[0];
+ c2 = v2[0] * v1[1] - v2[1] * v1[0];
- return (c1*c2 >= 0.0f);
+ return (c1 * c2 >= 0.0f);
}
void uv_find_nearest_vert(Scene *scene, Image *ima, BMEditMesh *em,
@@ -816,13 +816,13 @@ void uv_find_nearest_vert(Scene *scene, Image *ima, BMEditMesh *em,
hit->l = hit->nextl = NULL;
hit->luv = hit->nextluv = NULL;
- mindist= 1e10f;
+ mindist = 1e10f;
memset(hit, 0, sizeof(*hit));
BM_mesh_elem_index_ensure(em->bm, BM_VERT);
BM_ITER(efa, &iter, em->bm, BM_FACES_OF_MESH, NULL) {
- tf= CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
+ tf = CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
if (!uvedit_face_visible(scene, ima, efa, tf))
continue;
@@ -831,25 +831,25 @@ void uv_find_nearest_vert(Scene *scene, Image *ima, BMEditMesh *em,
luv = CustomData_bmesh_get(&em->bm->ldata, l->head.data, CD_MLOOPUV);
if (penalty && uvedit_uv_selected(em, scene, l))
- dist= fabs(co[0]-luv->uv[0])+penalty[0] + fabs(co[1]-luv->uv[1])+penalty[1];
+ dist = fabs(co[0] - luv->uv[0]) + penalty[0] + fabs(co[1] - luv->uv[1]) + penalty[1];
else
- dist= fabs(co[0]-luv->uv[0]) + fabs(co[1]-luv->uv[1]);
+ dist = fabs(co[0] - luv->uv[0]) + fabs(co[1] - luv->uv[1]);
- if (dist<=mindist) {
- if (dist==mindist)
+ if (dist <= mindist) {
+ if (dist == mindist)
if (!nearest_uv_between(em, efa, efa->len, i, co, luv->uv)) {
i++;
continue;
}
- mindist= dist;
+ mindist = dist;
hit->l = l;
hit->nextl = l->next;
hit->luv = luv;
hit->nextluv = CustomData_bmesh_get(&em->bm->ldata, l->next->head.data, CD_MLOOPUV);
- hit->tf= tf;
- hit->efa= efa;
+ hit->tf = tf;
+ hit->efa = efa;
hit->lindex = i;
hit->vert1 = BM_elem_index_get(hit->l->v);
}
@@ -868,27 +868,27 @@ int ED_uvedit_nearest_uv(Scene *scene, Object *obedit, Image *ima, float co[2],
MTexPoly *tf;
MLoopUV *luv;
float mindist, dist;
- int found= 0;
+ int found = 0;
- mindist= 1e10f;
- uv[0]= co[0];
- uv[1]= co[1];
+ mindist = 1e10f;
+ uv[0] = co[0];
+ uv[1] = co[1];
BM_ITER(efa, &iter, em->bm, BM_FACES_OF_MESH, NULL) {
- tf= CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
+ tf = CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
if (!uvedit_face_visible(scene, ima, efa, tf))
continue;
BM_ITER(l, &liter, em->bm, BM_LOOPS_OF_FACE, efa) {
luv = CustomData_bmesh_get(&em->bm->ldata, l->head.data, CD_MLOOPUV);
- dist= fabs(co[0]-luv->uv[0]) + fabs(co[1]-luv->uv[1]);
+ dist = fabs(co[0] - luv->uv[0]) + fabs(co[1] - luv->uv[1]);
- if (dist<=mindist) {
- mindist= dist;
+ if (dist <= mindist) {
+ mindist = dist;
- uv[0]= luv->uv[0];
- uv[1]= luv->uv[1];
- found= 1;
+ uv[0] = luv->uv[0];
+ uv[1] = luv->uv[1];
+ found = 1;
}
}
}
@@ -901,17 +901,17 @@ int ED_uvedit_nearest_uv(Scene *scene, Object *obedit, Image *ima, float co[2],
static void uv_vertex_loop_flag(UvMapVert *first)
{
UvMapVert *iterv;
- int count= 0;
+ int count = 0;
- for (iterv=first; iterv; iterv=iterv->next) {
- if (iterv->separate && iterv!=first)
+ for (iterv = first; iterv; iterv = iterv->next) {
+ if (iterv->separate && iterv != first)
break;
count++;
}
if (count < 5)
- first->flag= 1;
+ first->flag = 1;
}
static UvMapVert *uv_vertex_map_get(UvVertMap *vmap, BMFace *efa, int a)
@@ -920,11 +920,11 @@ static UvMapVert *uv_vertex_map_get(UvVertMap *vmap, BMFace *efa, int a)
BMLoop *l;
l = BM_iter_at_index(NULL, BM_LOOPS_OF_FACE, efa, a);
- first= EDBM_uv_vert_map_at_index(vmap, BM_elem_index_get(l->v));
+ first = EDBM_uv_vert_map_at_index(vmap, BM_elem_index_get(l->v));
- for (iterv=first; iterv; iterv=iterv->next) {
+ for (iterv = first; iterv; iterv = iterv->next) {
if (iterv->separate)
- first= iterv;
+ first = iterv;
if (iterv->f == BM_elem_index_get(efa))
return first;
}
@@ -952,17 +952,17 @@ static int uv_edge_tag_faces(BMEditMesh *em, UvMapVert *first1, UvMapVert *first
int tot = 0;
/* count number of faces this edge has */
- for (iterv1=first1; iterv1; iterv1=iterv1->next) {
+ for (iterv1 = first1; iterv1; iterv1 = iterv1->next) {
if (iterv1->separate && iterv1 != first1)
break;
- for (iterv2=first2; iterv2; iterv2=iterv2->next) {
+ for (iterv2 = first2; iterv2; iterv2 = iterv2->next) {
if (iterv2->separate && iterv2 != first2)
break;
if (iterv1->f == iterv2->f) {
/* if face already tagged, don't do this edge */
- efa= EDBM_face_at_index(em, iterv1->f);
+ efa = EDBM_face_at_index(em, iterv1->f);
if (BMO_elem_flag_test(em->bm, efa, EFA_F1_FLAG))
return 0;
@@ -973,21 +973,21 @@ static int uv_edge_tag_faces(BMEditMesh *em, UvMapVert *first1, UvMapVert *first
}
if (*totface == 0) /* start edge */
- *totface= tot;
+ *totface = tot;
else if (tot != *totface) /* check for same number of faces as start edge */
return 0;
/* tag the faces */
- for (iterv1=first1; iterv1; iterv1=iterv1->next) {
+ for (iterv1 = first1; iterv1; iterv1 = iterv1->next) {
if (iterv1->separate && iterv1 != first1)
break;
- for (iterv2=first2; iterv2; iterv2=iterv2->next) {
+ for (iterv2 = first2; iterv2; iterv2 = iterv2->next) {
if (iterv2->separate && iterv2 != first2)
break;
if (iterv1->f == iterv2->f) {
- efa= EDBM_face_at_index(em, iterv1->f);
+ efa = EDBM_face_at_index(em, iterv1->f);
BMO_elem_flag_enable(em->bm, efa, EFA_F1_FLAG);
break;
}
@@ -1009,7 +1009,7 @@ static int select_edgeloop(Scene *scene, Image *ima, BMEditMesh *em, NearestHit
/* setup */
EDBM_index_arrays_init(em, 0, 0, 1);
- vmap= EDBM_uv_vert_map_create(em, 0, 0, limit);
+ vmap = EDBM_uv_vert_map_create(em, 0, 0, limit);
BM_mesh_elem_index_ensure(em->bm, BM_VERT);
@@ -1028,34 +1028,34 @@ static int select_edgeloop(Scene *scene, Image *ima, BMEditMesh *em, NearestHit
em->bm->elem_index_dirty &= ~BM_FACE;
/* set flags for first face and verts */
- nverts= hit->efa->len;
- iterv1= uv_vertex_map_get(vmap, hit->efa, hit->lindex);
- iterv2= uv_vertex_map_get(vmap, hit->efa, (hit->lindex+1)%nverts);
+ nverts = hit->efa->len;
+ iterv1 = uv_vertex_map_get(vmap, hit->efa, hit->lindex);
+ iterv2 = uv_vertex_map_get(vmap, hit->efa, (hit->lindex + 1) % nverts);
uv_vertex_loop_flag(iterv1);
uv_vertex_loop_flag(iterv2);
- starttotf= 0;
+ starttotf = 0;
uv_edge_tag_faces(em, iterv1, iterv2, &starttotf);
/* sorry, first edge isn't even ok */
- if (iterv1->flag==0 && iterv2->flag==0) looking= 0;
- else looking= 1;
+ if (iterv1->flag == 0 && iterv2->flag == 0) looking = 0;
+ else looking = 1;
/* iterate */
while (looking) {
- looking= 0;
+ looking = 0;
/* find correct valence edges which are not tagged yet, but connect to tagged one */
BM_ITER(efa, &iter, em->bm, BM_FACES_OF_MESH, NULL) {
- tf= CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
+ tf = CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
if (!BMO_elem_flag_test(em->bm, efa, EFA_F1_FLAG) && uvedit_face_visible(scene, ima, efa, tf)) {
- nverts= efa->len;
- for (a=0; a<nverts; a++) {
+ nverts = efa->len;
+ for (a = 0; a < nverts; a++) {
/* check face not hidden and not tagged */
- iterv1= uv_vertex_map_get(vmap, efa, a);
- iterv2= uv_vertex_map_get(vmap, efa, (a+1)%nverts);
+ iterv1 = uv_vertex_map_get(vmap, efa, a);
+ iterv2 = uv_vertex_map_get(vmap, efa, (a + 1) % nverts);
if (!iterv1 || !iterv2)
continue;
@@ -1063,7 +1063,7 @@ static int select_edgeloop(Scene *scene, Image *ima, BMEditMesh *em, NearestHit
/* check if vertex is tagged and has right valence */
if (iterv1->flag || iterv2->flag) {
if (uv_edge_tag_faces(em, iterv1, iterv2, &starttotf)) {
- looking= 1;
+ looking = 1;
BMO_elem_flag_enable(em->bm, efa, EFA_F1_FLAG);
uv_vertex_loop_flag(iterv1);
@@ -1077,25 +1077,25 @@ static int select_edgeloop(Scene *scene, Image *ima, BMEditMesh *em, NearestHit
}
/* do the actual select/deselect */
- nverts= hit->efa->len;
- iterv1= uv_vertex_map_get(vmap, hit->efa, hit->lindex);
- iterv2= uv_vertex_map_get(vmap, hit->efa, (hit->lindex+1)%nverts);
- iterv1->flag= 1;
- iterv2->flag= 1;
+ nverts = hit->efa->len;
+ iterv1 = uv_vertex_map_get(vmap, hit->efa, hit->lindex);
+ iterv2 = uv_vertex_map_get(vmap, hit->efa, (hit->lindex + 1) % nverts);
+ iterv1->flag = 1;
+ iterv2->flag = 1;
if (extend) {
if (uvedit_uv_selected(em, scene, hit->l))
- select= 0;
+ select = 0;
else
- select= 1;
+ select = 1;
}
else
- select= 1;
+ select = 1;
BM_ITER(efa, &iter, em->bm, BM_FACES_OF_MESH, NULL) {
a = 0;
BM_ITER(l, &liter, em->bm, BM_LOOPS_OF_FACE, efa) {
- iterv1= uv_vertex_map_get(vmap, efa, a);
+ iterv1 = uv_vertex_map_get(vmap, efa, a);
if (iterv1->flag) {
if (select) uvedit_uv_select(em, scene, l);
@@ -1110,7 +1110,7 @@ static int select_edgeloop(Scene *scene, Image *ima, BMEditMesh *em, NearestHit
EDBM_uv_vert_map_free(vmap);
EDBM_index_arrays_free(em);
- return (select)? 1: -1;
+ return (select) ? 1 : -1;
}
/*********************** linked select ***********************/
@@ -1124,18 +1124,18 @@ static void select_linked(Scene *scene, Image *ima, BMEditMesh *em, float limit[
MLoopUV *luv;
UvVertMap *vmap;
UvMapVert *vlist, *iterv, *startv;
- int i, stacksize= 0, *stack;
+ int i, stacksize = 0, *stack;
unsigned int a;
char *flag;
EDBM_index_arrays_init(em, 0, 0, 1); /* we can use this too */
- vmap= EDBM_uv_vert_map_create(em, 1, 1, limit);
+ vmap = EDBM_uv_vert_map_create(em, 1, 1, limit);
if (vmap == NULL)
return;
- stack= MEM_mallocN(sizeof(*stack)*(em->bm->totface+1), "UvLinkStack");
- flag= MEM_callocN(sizeof(*flag)*em->bm->totface, "UvLinkFlag");
+ stack = MEM_mallocN(sizeof(*stack) * (em->bm->totface + 1), "UvLinkStack");
+ flag = MEM_callocN(sizeof(*flag) * em->bm->totface, "UvLinkFlag");
if (!hit) {
BM_ITER_INDEX(efa, &iter, em->bm, BM_FACES_OF_MESH, NULL, a) {
@@ -1146,9 +1146,9 @@ static void select_linked(Scene *scene, Image *ima, BMEditMesh *em, float limit[
luv = CustomData_bmesh_get(&em->bm->ldata, l->head.data, CD_MLOOPUV);
if (luv->flag & MLOOPUV_VERTSEL) {
- stack[stacksize]= a;
+ stack[stacksize] = a;
stacksize++;
- flag[a]= 1;
+ flag[a] = 1;
break;
}
@@ -1160,9 +1160,9 @@ static void select_linked(Scene *scene, Image *ima, BMEditMesh *em, float limit[
a = 0;
BM_ITER(efa, &iter, em->bm, BM_FACES_OF_MESH, NULL) {
if (efa == hit->efa) {
- stack[stacksize]= a;
+ stack[stacksize] = a;
stacksize++;
- flag[a]= 1;
+ flag[a] = 1;
break;
}
@@ -1174,11 +1174,11 @@ static void select_linked(Scene *scene, Image *ima, BMEditMesh *em, float limit[
int j;
stacksize--;
- a= stack[stacksize];
+ a = stack[stacksize];
j = 0;
BM_ITER(efa, &iter, em->bm, BM_FACES_OF_MESH, NULL) {
- if (j==a)
+ if (j == a)
break;
j++;
@@ -1188,23 +1188,23 @@ static void select_linked(Scene *scene, Image *ima, BMEditMesh *em, float limit[
BM_ITER(l, &liter, em->bm, BM_LOOPS_OF_FACE, efa) {
/* make_uv_vert_map_EM sets verts tmp.l to the indices */
- vlist= EDBM_uv_vert_map_at_index(vmap, BM_elem_index_get(l->v));
+ vlist = EDBM_uv_vert_map_at_index(vmap, BM_elem_index_get(l->v));
- startv= vlist;
+ startv = vlist;
- for (iterv=vlist; iterv; iterv=iterv->next) {
+ for (iterv = vlist; iterv; iterv = iterv->next) {
if (iterv->separate)
- startv= iterv;
+ startv = iterv;
if (iterv->f == a)
break;
}
- for (iterv=startv; iterv; iterv=iterv->next) {
+ 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;
+ flag[iterv->f] = 1;
+ stack[stacksize] = iterv->f;
stacksize++;
}
}
@@ -1352,7 +1352,7 @@ static void weld_align_uv(bContext *C, int tool)
}
}
- tool= (max[0]-min[0] >= max[1]-min[1])? 'y': 'x';
+ tool = (max[0] - min[0] >= max[1] - min[1]) ? 'y' : 'x';
}
uvedit_center(scene, ima, obedit, cent, 0);
@@ -1520,7 +1520,7 @@ static void weld_align_uv(bContext *C, int tool)
uvedit_live_unwrap_update(sima, scene, obedit);
DAG_id_tag_update(obedit->data, 0);
- WM_event_add_notifier(C, NC_GEOM|ND_DATA, obedit->data);
+ WM_event_add_notifier(C, NC_GEOM | ND_DATA, obedit->data);
}
static int align_exec(bContext *C, wmOperator *op)
@@ -1545,11 +1545,11 @@ static void UV_OT_align(wmOperatorType *ot)
ot->name = "Align";
ot->description = "Align selected UV vertices to an axis";
ot->idname = "UV_OT_align";
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
/* api callbacks */
ot->exec = align_exec;
- ot->poll = ED_operator_image_active; /* requires space image */;
+ ot->poll = ED_operator_image_active; /* requires space image */;
/* properties */
RNA_def_enum(ot->srna, "axis", axis_items, 'a', "Axis", "Axis to align UV locations on");
@@ -1570,7 +1570,7 @@ static void UV_OT_weld(wmOperatorType *ot)
ot->name = "Weld";
ot->description = "Weld selected UV vertices together";
ot->idname = "UV_OT_weld";
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
/* api callbacks */
ot->exec = weld_exec;
@@ -1602,19 +1602,19 @@ static void select_all_perform(bContext *C, int action)
if (ts->uv_flag & UV_SYNC_SELECTION) {
switch (action) {
- case SEL_TOGGLE:
- EDBM_select_toggle_all(BMEdit_FromObject(obedit));
- break;
- case SEL_SELECT:
- EDBM_flag_enable_all(em, BM_ELEM_SELECT);
- break;
- case SEL_DESELECT:
- EDBM_flag_disable_all(em, BM_ELEM_SELECT);
- break;
- case SEL_INVERT:
- EDBM_select_swap(em);
- EDBM_selectmode_flush(em);
- break;
+ case SEL_TOGGLE:
+ EDBM_select_toggle_all(BMEdit_FromObject(obedit));
+ break;
+ case SEL_SELECT:
+ EDBM_flag_enable_all(em, BM_ELEM_SELECT);
+ break;
+ case SEL_DESELECT:
+ EDBM_flag_disable_all(em, BM_ELEM_SELECT);
+ break;
+ case SEL_INVERT:
+ EDBM_select_swap(em);
+ EDBM_selectmode_flush(em);
+ break;
}
}
else {
@@ -1648,15 +1648,15 @@ static void select_all_perform(bContext *C, int action)
luv = CustomData_bmesh_get(&em->bm->ldata, l->head.data, CD_MLOOPUV);
switch (action) {
- case SEL_SELECT:
- luv->flag |= MLOOPUV_VERTSEL;
- break;
- case SEL_DESELECT:
- luv->flag &= ~MLOOPUV_VERTSEL;
- break;
- case SEL_INVERT:
- luv->flag ^= MLOOPUV_VERTSEL;
- break;
+ case SEL_SELECT:
+ luv->flag |= MLOOPUV_VERTSEL;
+ break;
+ case SEL_DESELECT:
+ luv->flag &= ~MLOOPUV_VERTSEL;
+ break;
+ case SEL_INVERT:
+ luv->flag ^= MLOOPUV_VERTSEL;
+ break;
}
}
}
@@ -1665,12 +1665,12 @@ static void select_all_perform(bContext *C, int action)
static int select_all_exec(bContext *C, wmOperator *op)
{
- Object *obedit= CTX_data_edit_object(C);
- int action= RNA_enum_get(op->ptr, "action");
+ Object *obedit = CTX_data_edit_object(C);
+ int action = RNA_enum_get(op->ptr, "action");
select_all_perform(C, action);
- WM_event_add_notifier(C, NC_GEOM|ND_SELECT, obedit->data);
+ WM_event_add_notifier(C, NC_GEOM | ND_SELECT, obedit->data);
return OPERATOR_FINISHED;
}
@@ -1681,7 +1681,7 @@ static void UV_OT_select_all(wmOperatorType *ot)
ot->name = "(De)select All";
ot->description = "Change selection of all UV vertices";
ot->idname = "UV_OT_select_all";
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
/* api callbacks */
ot->exec = select_all_exec;
@@ -1701,10 +1701,10 @@ static int sticky_select(float *limit, int hitv[4], int v, float *hituv[4], floa
if (sticky == SI_STICKY_DISABLE)
return 0;
- for (i=0; i<hitlen; i++) {
+ for (i = 0; i < hitlen; i++) {
if (hitv[i] == v) {
if (sticky == SI_STICKY_LOC) {
- if (fabsf(hituv[i][0]-uv[0]) < limit[0] && fabsf(hituv[i][1]-uv[1]) < limit[1])
+ if (fabsf(hituv[i][0] - uv[0]) < limit[0] && fabsf(hituv[i][1] - uv[1]) < limit[1])
return 1;
}
else if (sticky == SI_STICKY_VERTEX)
@@ -1729,9 +1729,9 @@ static int mouse_select(bContext *C, float co[2], int extend, int loop)
MTexPoly *tf;
MLoopUV *luv;
NearestHit hit;
- int i, select = 1, selectmode, sticky, sync, *hitv=NULL, nvert;
+ int i, select = 1, selectmode, sticky, sync, *hitv = NULL, nvert;
BLI_array_declare(hitv);
- int flush = 0, hitlen=0; /* 0 == don't flush, 1 == sel, -1 == desel; only use when selection sync is enabled */
+ int flush = 0, hitlen = 0; /* 0 == don't flush, 1 == sel, -1 == desel; only use when selection sync is enabled */
float limit[2], **hituv = NULL;
BLI_array_declare(hituv);
float penalty[2];
@@ -1747,21 +1747,21 @@ static int mouse_select(bContext *C, float co[2], int extend, int loop)
/* retrieve operation mode */
if (ts->uv_flag & UV_SYNC_SELECTION) {
- sync= 1;
+ sync = 1;
if (ts->selectmode & SCE_SELECT_FACE)
- selectmode= UV_SELECT_FACE;
+ selectmode = UV_SELECT_FACE;
else if (ts->selectmode & SCE_SELECT_EDGE)
- selectmode= UV_SELECT_EDGE;
+ selectmode = UV_SELECT_EDGE;
else
- selectmode= UV_SELECT_VERTEX;
+ selectmode = UV_SELECT_VERTEX;
- sticky= SI_STICKY_DISABLE;
+ sticky = SI_STICKY_DISABLE;
}
else {
- sync= 0;
- selectmode= ts->uv_selectmode;
- sticky= (sima)? sima->sticky: 1;
+ sync = 0;
+ selectmode = ts->uv_selectmode;
+ sticky = (sima) ? sima->sticky : 1;
}
/* find nearest element */
@@ -1788,12 +1788,12 @@ static int mouse_select(bContext *C, float co[2], int extend, int loop)
/* mark 1 vertex as being hit */
BLI_array_growitems(hitv, hit.efa->len);
BLI_array_growitems(hituv, hit.efa->len);
- for (i=0; i<hit.efa->len; i++) {
- hitv[i]= 0xFFFFFFFF;
+ for (i = 0; i < hit.efa->len; i++) {
+ hitv[i] = 0xFFFFFFFF;
}
- hitv[hit.lindex]= hit.vert1;
- hituv[hit.lindex]= hit.luv->uv;
+ hitv[hit.lindex] = hit.vert1;
+ hituv[hit.lindex] = hit.luv->uv;
hitlen = hit.efa->len;
}
@@ -1809,16 +1809,16 @@ static int mouse_select(bContext *C, float co[2], int extend, int loop)
/* mark 2 edge vertices as being hit */
BLI_array_growitems(hitv, hit.efa->len);
BLI_array_growitems(hituv, hit.efa->len);
- for (i=0; i < hit.efa->len; i++) {
- hitv[i]= 0xFFFFFFFF;
+ for (i = 0; i < hit.efa->len; i++) {
+ hitv[i] = 0xFFFFFFFF;
}
- nvert= hit.efa->len;
+ nvert = hit.efa->len;
- hitv[hit.lindex]= hit.vert1;
- hitv[(hit.lindex+1)%nvert]= hit.vert2;
- hituv[hit.lindex]= hit.luv->uv;
- hituv[(hit.lindex+1)%nvert]= hit.nextluv->uv;
+ hitv[hit.lindex] = hit.vert1;
+ hitv[(hit.lindex + 1) % nvert] = hit.vert2;
+ hituv[hit.lindex] = hit.luv->uv;
+ hituv[(hit.lindex + 1) % nvert] = hit.nextluv->uv;
hitlen = hit.efa->len;
}
@@ -1841,7 +1841,7 @@ static int mouse_select(bContext *C, float co[2], int extend, int loop)
i = 0;
BM_ITER(l, &liter, em->bm, BM_LOOPS_OF_FACE, hit.efa) {
luv = CustomData_bmesh_get(&em->bm->ldata, l->head.data, CD_MLOOPUV);
- hituv[i]= luv->uv;
+ hituv[i] = luv->uv;
hitv[i] = BM_elem_index_get(l->v);
i++;
}
@@ -1851,7 +1851,7 @@ static int mouse_select(bContext *C, float co[2], int extend, int loop)
else if (selectmode == UV_SELECT_ISLAND) {
uv_find_nearest_vert(scene, ima, em, co, NULL, &hit);
- if (hit.efa==NULL) {
+ if (hit.efa == NULL) {
BLI_array_free(hitv);
BLI_array_free(hituv);
return OPERATOR_CANCELLED;
@@ -1868,7 +1868,7 @@ static int mouse_select(bContext *C, float co[2], int extend, int loop)
/* do selection */
if (loop) {
- flush= select_edgeloop(scene, ima, em, &hit, limit, extend);
+ flush = select_edgeloop(scene, ima, em, &hit, limit, extend);
}
else if (selectmode == UV_SELECT_ISLAND) {
select_linked(scene, ima, em, limit, &hit, extend);
@@ -1878,11 +1878,11 @@ static int mouse_select(bContext *C, float co[2], int extend, int loop)
/* (de)select uv vertex */
if (uvedit_uv_selected(em, scene, hit.l)) {
uvedit_uv_deselect(em, scene, hit.l);
- select= 0;
+ select = 0;
}
else {
uvedit_uv_select(em, scene, hit.l);
- select= 1;
+ select = 1;
}
flush = 1;
}
@@ -1890,11 +1890,11 @@ static int mouse_select(bContext *C, float co[2], int extend, int loop)
/* (de)select edge */
if (uvedit_edge_selected(em, scene, hit.l)) {
uvedit_edge_deselect(em, scene, hit.l);
- select= 0;
+ select = 0;
}
else {
uvedit_edge_select(em, scene, hit.l);
- select= 1;
+ select = 1;
}
flush = 1;
}
@@ -1902,11 +1902,11 @@ static int mouse_select(bContext *C, float co[2], int extend, int loop)
/* (de)select face */
if (uvedit_face_selected(scene, em, hit.efa)) {
uvedit_face_deselect(scene, em, hit.efa);
- select= 0;
+ select = 0;
}
else {
uvedit_face_select(scene, em, hit.efa);
- select= 1;
+ select = 1;
}
flush = -1;
}
@@ -1917,9 +1917,9 @@ static int mouse_select(bContext *C, float co[2], int extend, int loop)
BM_mesh_elem_index_ensure(em->bm, BM_VERT);
/* deselect */
- if (select==0) {
+ if (select == 0) {
BM_ITER(efa, &iter, em->bm, BM_FACES_OF_MESH, NULL) {
- tf= CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
+ tf = CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
if (!uvedit_face_visible(scene, ima, efa, tf))
continue;
@@ -1934,7 +1934,7 @@ static int mouse_select(bContext *C, float co[2], int extend, int loop)
/* select */
else {
BM_ITER(efa, &iter, em->bm, BM_FACES_OF_MESH, NULL) {
- tf= CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
+ tf = CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
if (!uvedit_face_visible(scene, ima, efa, tf))
continue;
@@ -1958,12 +1958,12 @@ static int mouse_select(bContext *C, float co[2], int extend, int loop)
if (selectmode == UV_SELECT_VERTEX) {
/* select vertex */
uvedit_uv_select(em, scene, hit.l);
- flush= 1;
+ flush = 1;
}
else if (selectmode == UV_SELECT_EDGE) {
/* select edge */
uvedit_edge_select(em, scene, hit.l);
- flush= 1;
+ flush = 1;
}
else if (selectmode == UV_SELECT_FACE) {
/* select face */
@@ -1973,7 +1973,7 @@ static int mouse_select(bContext *C, float co[2], int extend, int loop)
/* select sticky uvs */
if (sticky != SI_STICKY_DISABLE) {
BM_ITER(efa, &iter, em->bm, BM_FACES_OF_MESH, NULL) {
- tf= CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
+ tf = CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
if (!uvedit_face_visible(scene, ima, efa, tf))
continue;
@@ -1984,19 +1984,19 @@ static int mouse_select(bContext *C, float co[2], int extend, int loop)
if (sticky_select(limit, hitv, BM_elem_index_get(l->v), hituv, luv->uv, sticky, hitlen))
uvedit_uv_select(em, scene, l);
- flush= 1;
+ flush = 1;
}
}
}
}
-#if 0 /* BM_elem_select_set API handles all of this? */
+#if 0 /* BM_elem_select_set API handles all of this? */
if (sync) {
/* flush for mesh selection */
if (ts->selectmode != SCE_SELECT_FACE) {
- if (flush==1) EDBM_select_flush(em);
- else if (flush==-1) EDBM_deselect_flush(em);
+ if (flush == 1) EDBM_select_flush(em);
+ else if (flush == -1) EDBM_deselect_flush(em);
}
}
#else
@@ -2005,12 +2005,12 @@ static int mouse_select(bContext *C, float co[2], int extend, int loop)
#endif
DAG_id_tag_update(obedit->data, 0);
- WM_event_add_notifier(C, NC_GEOM|ND_SELECT, obedit->data);
+ WM_event_add_notifier(C, NC_GEOM | ND_SELECT, obedit->data);
BLI_array_free(hitv);
BLI_array_free(hituv);
- return OPERATOR_PASS_THROUGH|OPERATOR_FINISHED;
+ return OPERATOR_PASS_THROUGH | OPERATOR_FINISHED;
}
static int select_exec(bContext *C, wmOperator *op)
@@ -2019,15 +2019,15 @@ static int select_exec(bContext *C, wmOperator *op)
int extend, loop;
RNA_float_get_array(op->ptr, "location", co);
- extend= RNA_boolean_get(op->ptr, "extend");
- loop= 0;
+ extend = RNA_boolean_get(op->ptr, "extend");
+ loop = 0;
return mouse_select(C, co, extend, loop);
}
static int select_invoke(bContext *C, wmOperator *op, wmEvent *event)
{
- ARegion *ar= CTX_wm_region(C);
+ ARegion *ar = CTX_wm_region(C);
float co[2];
UI_view2d_region_to_view(&ar->v2d, event->mval[0], event->mval[1], &co[0], &co[1]);
@@ -2042,18 +2042,18 @@ static void UV_OT_select(wmOperatorType *ot)
ot->name = "Select";
ot->description = "Select UV vertices";
ot->idname = "UV_OT_select";
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
/* api callbacks */
ot->exec = select_exec;
ot->invoke = select_invoke;
- ot->poll = ED_operator_image_active; /* requires space image */;
+ ot->poll = ED_operator_image_active; /* requires space image */;
/* properties */
RNA_def_boolean(ot->srna, "extend", 0,
- "Extend", "Extend selection rather than clearing the existing selection");
+ "Extend", "Extend selection rather than clearing the existing selection");
RNA_def_float_vector(ot->srna, "location", 2, NULL, -FLT_MAX, FLT_MAX,
- "Location", "Mouse location in normalized coordinates, 0.0 to 1.0 is within the image bounds", -100.0f, 100.0f);
+ "Location", "Mouse location in normalized coordinates, 0.0 to 1.0 is within the image bounds", -100.0f, 100.0f);
}
/* ******************** loop select operator **************** */
@@ -2064,15 +2064,15 @@ static int select_loop_exec(bContext *C, wmOperator *op)
int extend, loop;
RNA_float_get_array(op->ptr, "location", co);
- extend= RNA_boolean_get(op->ptr, "extend");
- loop= 1;
+ extend = RNA_boolean_get(op->ptr, "extend");
+ loop = 1;
return mouse_select(C, co, extend, loop);
}
static int select_loop_invoke(bContext *C, wmOperator *op, wmEvent *event)
{
- ARegion *ar= CTX_wm_region(C);
+ ARegion *ar = CTX_wm_region(C);
float co[2];
UI_view2d_region_to_view(&ar->v2d, event->mval[0], event->mval[1], &co[0], &co[1]);
@@ -2087,18 +2087,18 @@ static void UV_OT_select_loop(wmOperatorType *ot)
ot->name = "Loop Select";
ot->description = "Select a loop of connected UV vertices";
ot->idname = "UV_OT_select_loop";
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
/* api callbacks */
ot->exec = select_loop_exec;
ot->invoke = select_loop_invoke;
- ot->poll = ED_operator_image_active; /* requires space image */;
+ ot->poll = ED_operator_image_active; /* requires space image */;
/* properties */
RNA_def_boolean(ot->srna, "extend", 0,
- "Extend", "Extend selection rather than clearing the existing selection");
+ "Extend", "Extend selection rather than clearing the existing selection");
RNA_def_float_vector(ot->srna, "location", 2, NULL, -FLT_MAX, FLT_MAX,
- "Location", "Mouse location in normalized coordinates, 0.0 to 1.0 is within the image bounds", -100.0f, 100.0f);
+ "Location", "Mouse location in normalized coordinates, 0.0 to 1.0 is within the image bounds", -100.0f, 100.0f);
}
/* ******************** linked select operator **************** */
@@ -2114,14 +2114,14 @@ static int select_linked_internal(bContext *C, wmOperator *op, wmEvent *event, i
float limit[2];
int extend;
- NearestHit hit, *hit_p= NULL;
+ NearestHit hit, *hit_p = NULL;
if (ts->uv_flag & UV_SYNC_SELECTION) {
BKE_report(op->reports, RPT_ERROR, "Can't select linked when sync selection is enabled");
return OPERATOR_CANCELLED;
}
- extend= RNA_boolean_get(op->ptr, "extend");
+ extend = RNA_boolean_get(op->ptr, "extend");
uvedit_pixel_to_float(sima, limit, 0.05f);
if (pick) {
@@ -2129,7 +2129,7 @@ static int select_linked_internal(bContext *C, wmOperator *op, wmEvent *event, i
if (event) {
/* invoke */
- ARegion *ar= CTX_wm_region(C);
+ ARegion *ar = CTX_wm_region(C);
UI_view2d_region_to_view(&ar->v2d, event->mval[0], event->mval[1], &co[0], &co[1]);
RNA_float_set_array(op->ptr, "location", co);
@@ -2140,13 +2140,13 @@ static int select_linked_internal(bContext *C, wmOperator *op, wmEvent *event, i
}
uv_find_nearest_vert(scene, ima, em, co, NULL, &hit);
- hit_p= &hit;
+ hit_p = &hit;
}
select_linked(scene, ima, em, limit, hit_p, extend);
DAG_id_tag_update(obedit->data, 0);
- WM_event_add_notifier(C, NC_GEOM|ND_SELECT, obedit->data);
+ WM_event_add_notifier(C, NC_GEOM | ND_SELECT, obedit->data);
return OPERATOR_FINISHED;
}
@@ -2162,15 +2162,15 @@ static void UV_OT_select_linked(wmOperatorType *ot)
ot->name = "Select Linked";
ot->description = "Select all UV vertices linked to the active UV map";
ot->idname = "UV_OT_select_linked";
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
/* api callbacks */
ot->exec = select_linked_exec;
- ot->poll = ED_operator_image_active; /* requires space image */
+ ot->poll = ED_operator_image_active; /* requires space image */
/* properties */
RNA_def_boolean(ot->srna, "extend", 0,
- "Extend", "Extend selection rather than clearing the existing selection");
+ "Extend", "Extend selection rather than clearing the existing selection");
}
static int select_linked_pick_invoke(bContext *C, wmOperator *op, wmEvent *event)
@@ -2189,19 +2189,19 @@ static void UV_OT_select_linked_pick(wmOperatorType *ot)
ot->name = "Select Linked Pick";
ot->description = "Select all UV vertices linked under the mouse";
ot->idname = "UV_OT_select_linked_pick";
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
/* api callbacks */
ot->invoke = select_linked_pick_invoke;
ot->exec = select_linked_pick_exec;
- ot->poll = ED_operator_image_active; /* requires space image */;
+ ot->poll = ED_operator_image_active; /* requires space image */;
/* properties */
RNA_def_boolean(ot->srna, "extend", 0,
- "Extend", "Extend selection rather than clearing the existing selection");
+ "Extend", "Extend selection rather than clearing the existing selection");
RNA_def_float_vector(ot->srna, "location", 2, NULL, -FLT_MAX, FLT_MAX,
- "Location", "Mouse location in normalized coordinates, 0.0 to 1.0 is within the image bounds", -100.0f, 100.0f);
+ "Location", "Mouse location in normalized coordinates, 0.0 to 1.0 is within the image bounds", -100.0f, 100.0f);
}
/* ******************** unlink selection operator **************** */
@@ -2249,7 +2249,7 @@ static int unlink_selection_exec(bContext *C, wmOperator *op)
}
DAG_id_tag_update(obedit->data, 0);
- WM_event_add_notifier(C, NC_GEOM|ND_SELECT, obedit->data);
+ WM_event_add_notifier(C, NC_GEOM | ND_SELECT, obedit->data);
return OPERATOR_FINISHED;
}
@@ -2260,7 +2260,7 @@ static void UV_OT_unlink_selected(wmOperatorType *ot)
ot->name = "Unlink Selection";
ot->description = "Unlink selected UV vertices from active UV map";
ot->idname = "UV_OT_unlink_selected";
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
/* api callbacks */
ot->exec = unlink_selection_exec;
@@ -2291,7 +2291,7 @@ static void uv_faces_do_sticky(bContext *C, SpaceImage *sima, Scene *scene, Obje
BMIter iter, liter;
/* MTexPoly *tf; */
- if ((ts->uv_flag & UV_SYNC_SELECTION)==0 && sima->sticky == SI_STICKY_VERTEX) {
+ if ((ts->uv_flag & UV_SYNC_SELECTION) == 0 && sima->sticky == SI_STICKY_VERTEX) {
/* Tag all verts as untouched, then touch the ones that have a face center
* in the loop and select all MLoopUV's that use a touched vert. */
BMVert *eve;
@@ -2322,10 +2322,10 @@ static void uv_faces_do_sticky(bContext *C, SpaceImage *sima, Scene *scene, Obje
}
}
}
- else if ((ts->uv_flag & UV_SYNC_SELECTION)==0 && sima->sticky == SI_STICKY_LOC) {
+ else if ((ts->uv_flag & UV_SYNC_SELECTION) == 0 && sima->sticky == SI_STICKY_LOC) {
BMFace *efa_vlist;
/* MTexPoly *tf_vlist; */ /* UNUSED */
- UvMapVert *start_vlist=NULL, *vlist_iter;
+ UvMapVert *start_vlist = NULL, *vlist_iter;
struct UvVertMap *vmap;
float limit[2];
unsigned int efa_index;
@@ -2335,12 +2335,12 @@ static void uv_faces_do_sticky(bContext *C, SpaceImage *sima, Scene *scene, Obje
uvedit_pixel_to_float(sima, limit, 0.05);
EDBM_index_arrays_init(em, 0, 0, 1);
- vmap= EDBM_uv_vert_map_create(em, 0, 0, limit);
+ vmap = EDBM_uv_vert_map_create(em, 0, 0, limit);
/* verts are numbered above in make_uv_vert_map_EM, make sure this stays true! */
/* BMESH_TODO - why keep this commented? - campbell */
#if 0
- for (a=0, eve= em->verts.first; eve; a++, eve= eve->next)
+ for (a = 0, eve = em->verts.first; eve; a++, eve = eve->next)
eve->tmp.l = a;
#endif
if (vmap == NULL) {
@@ -2348,7 +2348,7 @@ static void uv_faces_do_sticky(bContext *C, SpaceImage *sima, Scene *scene, Obje
}
efa = BM_iter_new(&iter, em->bm, BM_FACES_OF_MESH, NULL);
- for (efa_index=0; efa; efa=BM_iter_step(&iter), efa_index++) {
+ for (efa_index = 0; efa; efa = BM_iter_step(&iter), efa_index++) {
if (BM_elem_flag_test(efa, BM_ELEM_TAG)) {
/* tf = CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY); */ /* UNUSED */
@@ -2358,7 +2358,7 @@ static void uv_faces_do_sticky(bContext *C, SpaceImage *sima, Scene *scene, Obje
else
uvedit_uv_deselect(em, scene, l);
- vlist_iter= EDBM_uv_vert_map_at_index(vmap, BM_elem_index_get(l->v));
+ vlist_iter = EDBM_uv_vert_map_at_index(vmap, BM_elem_index_get(l->v));
while (vlist_iter) {
if (vlist_iter->separate)
@@ -2434,30 +2434,30 @@ static int border_select_exec(bContext *C, wmOperator *op)
UI_view2d_region_to_view(&ar->v2d, rect.xmax, rect.ymax, &rectf.xmax, &rectf.ymax);
/* figure out what to select/deselect */
- select= (RNA_int_get(op->ptr, "gesture_mode") == GESTURE_MODAL_SELECT);
- pinned= RNA_boolean_get(op->ptr, "pinned");
- extend= RNA_boolean_get(op->ptr, "extend");
+ select = (RNA_int_get(op->ptr, "gesture_mode") == GESTURE_MODAL_SELECT);
+ pinned = RNA_boolean_get(op->ptr, "pinned");
+ extend = RNA_boolean_get(op->ptr, "extend");
if (!extend)
select_all_perform(C, SEL_DESELECT);
if (ts->uv_flag & UV_SYNC_SELECTION)
- faces= (ts->selectmode == SCE_SELECT_FACE);
+ faces = (ts->selectmode == SCE_SELECT_FACE);
else
- faces= (ts->uv_selectmode == UV_SELECT_FACE);
+ faces = (ts->uv_selectmode == UV_SELECT_FACE);
/* do actual selection */
if (faces && !pinned) {
/* handle face selection mode */
float cent[2];
- change= 0;
+ change = 0;
BM_ITER(efa, &iter, em->bm, BM_FACES_OF_MESH, NULL) {
/* assume not touched */
BM_elem_flag_disable(efa, BM_ELEM_TAG);
- tf= CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
+ tf = CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
if (uvedit_face_visible(scene, ima, efa, tf)) {
poly_uv_center(em, efa, cent);
if (BLI_in_rctf(&rectf, cent[0], cent[1])) {
@@ -2473,10 +2473,10 @@ static int border_select_exec(bContext *C, wmOperator *op)
}
else {
/* other selection modes */
- change= 1;
+ change = 1;
BM_ITER(efa, &iter, em->bm, BM_FACES_OF_MESH, NULL) {
- tf= CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
+ tf = CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
if (!uvedit_face_visible(scene, ima, efa, tf))
continue;
BM_ITER(l, &liter, em->bm, BM_LOOPS_OF_FACE, efa) {
@@ -2486,15 +2486,15 @@ static int border_select_exec(bContext *C, wmOperator *op)
/* UV_SYNC_SELECTION - can't do pinned selection */
if (BLI_in_rctf(&rectf, luv->uv[0], luv->uv[1])) {
- if (select) uvedit_uv_select(em, scene, l);
- else uvedit_uv_deselect(em, scene, l);
+ if (select) uvedit_uv_select(em, scene, l);
+ else uvedit_uv_deselect(em, scene, l);
}
}
else if (pinned) {
if ((luv->flag & MLOOPUV_PINNED) &&
BLI_in_rctf(&rectf, luv->uv[0], luv->uv[1])) {
- if (select) uvedit_uv_select(em, scene, l);
- else uvedit_uv_deselect(em, scene, l);
+ if (select) uvedit_uv_select(em, scene, l);
+ else uvedit_uv_deselect(em, scene, l);
}
}
}
@@ -2503,16 +2503,16 @@ static int border_select_exec(bContext *C, wmOperator *op)
if (change) {
/* make sure newly selected vert selection is updated*/
-#if 0 /* BM_elem_select_set API handles all of this? */
+#if 0 /* BM_elem_select_set API handles all of this? */
if (ts->uv_flag & UV_SYNC_SELECTION) {
if (ts->selectmode != SCE_SELECT_FACE) {
- if (select) EDBM_select_flush(em);
- else EDBM_deselect_flush(em);
+ if (select) EDBM_select_flush(em);
+ else EDBM_deselect_flush(em);
}
}
#endif
- WM_event_add_notifier(C, NC_GEOM|ND_SELECT, obedit->data);
+ WM_event_add_notifier(C, NC_GEOM | ND_SELECT, obedit->data);
return OPERATOR_FINISHED;
}
@@ -2531,11 +2531,11 @@ static void UV_OT_select_border(wmOperatorType *ot)
ot->invoke = WM_border_select_invoke;
ot->exec = border_select_exec;
ot->modal = WM_border_select_modal;
- ot->poll = ED_operator_image_active; /* requires space image */;
+ ot->poll = ED_operator_image_active; /* requires space image */;
ot->cancel = WM_border_select_cancel;
/* flags */
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
/* properties */
RNA_def_boolean(ot->srna, "pinned", 0, "Pinned", "Border select pinned UVs only");
@@ -2546,18 +2546,18 @@ static void UV_OT_select_border(wmOperatorType *ot)
/* ******************** circle select operator **************** */
static void select_uv_inside_ellipse(BMEditMesh *em, SpaceImage *UNUSED(sima), Scene *scene, int select,
- float *offset, float *ell, BMLoop *l, MLoopUV *luv)
+ float *offset, float *ell, BMLoop *l, MLoopUV *luv)
{
/* normalized ellipse: ell[0] = scaleX, ell[1] = scaleY */
float x, y, r2, *uv;
- uv= luv->uv;
+ uv = luv->uv;
- x= (uv[0] - offset[0])*ell[0];
- y= (uv[1] - offset[1])*ell[1];
+ x = (uv[0] - offset[0]) * ell[0];
+ y = (uv[1] - offset[1]) * ell[1];
- r2 = x*x + y*y;
+ r2 = x * x + y * y;
if (r2 < 1.0f) {
if (select) uvedit_uv_select(em, scene, l);
else uvedit_uv_deselect(em, scene, l);
@@ -2577,21 +2577,21 @@ static int circle_select_exec(bContext *C, wmOperator *op)
MLoopUV *luv;
int x, y, radius, width, height, select;
float zoomx, zoomy, offset[2], ellipse[2];
- int gesture_mode= RNA_int_get(op->ptr, "gesture_mode");
+ int gesture_mode = RNA_int_get(op->ptr, "gesture_mode");
/* get operator properties */
- select= (gesture_mode == GESTURE_MODAL_SELECT);
- x= RNA_int_get(op->ptr, "x");
- y= RNA_int_get(op->ptr, "y");
- radius= RNA_int_get(op->ptr, "radius");
+ select = (gesture_mode == GESTURE_MODAL_SELECT);
+ x = RNA_int_get(op->ptr, "x");
+ y = RNA_int_get(op->ptr, "y");
+ radius = RNA_int_get(op->ptr, "radius");
/* compute ellipse size and location, not a circle since we deal
* with non square image. ellipse is normalized, r = 1.0. */
ED_space_image_size(sima, &width, &height);
ED_space_image_zoom(sima, ar, &zoomx, &zoomy);
- ellipse[0]= width*zoomx/radius;
- ellipse[1]= height*zoomy/radius;
+ ellipse[0] = width * zoomx / radius;
+ ellipse[1] = height * zoomy / radius;
UI_view2d_region_to_view(&ar->v2d, x, y, &offset[0], &offset[1]);
@@ -2607,7 +2607,7 @@ static int circle_select_exec(bContext *C, wmOperator *op)
if (select) EM_select_flush(em);
else EM_deselect_flush(em);
#endif
- WM_event_add_notifier(C, NC_GEOM|ND_SELECT, obedit->data);
+ WM_event_add_notifier(C, NC_GEOM | ND_SELECT, obedit->data);
return OPERATOR_FINISHED;
}
@@ -2623,11 +2623,11 @@ static void UV_OT_circle_select(wmOperatorType *ot)
ot->invoke = WM_gesture_circle_invoke;
ot->modal = WM_gesture_circle_modal;
ot->exec = circle_select_exec;
- ot->poll = ED_operator_image_active; /* requires space image */;
+ ot->poll = ED_operator_image_active; /* requires space image */;
ot->cancel = WM_gesture_circle_cancel;
/* flags */
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
/* properties */
RNA_def_int(ot->srna, "x", 0, INT_MIN, INT_MAX, "X", "", INT_MIN, INT_MAX);
@@ -2640,13 +2640,13 @@ static void UV_OT_circle_select(wmOperatorType *ot)
static void snap_uv_to_pixel(float *uvco, float w, float h)
{
- uvco[0] = ((float)((int)((uvco[0]*w) + 0.5f)))/w;
- uvco[1] = ((float)((int)((uvco[1]*h) + 0.5f)))/h;
+ uvco[0] = ((float)((int)((uvco[0] * w) + 0.5f))) / w;
+ uvco[1] = ((float)((int)((uvco[1] * h) + 0.5f))) / h;
}
static void snap_cursor_to_pixels(SpaceImage *sima)
{
- int width= 0, height= 0;
+ int width = 0, height = 0;
ED_space_image_size(sima, &width, &height);
snap_uv_to_pixel(sima->cursor, width, height);
@@ -2659,26 +2659,26 @@ static int snap_cursor_to_selection(Scene *scene, Image *ima, Object *obedit, Sp
static int snap_cursor_exec(bContext *C, wmOperator *op)
{
- SpaceImage *sima= CTX_wm_space_image(C);
- Scene *scene= CTX_data_scene(C);
- Object *obedit= CTX_data_edit_object(C);
- Image *ima= CTX_data_edit_image(C);
- int change= 0;
+ SpaceImage *sima = CTX_wm_space_image(C);
+ Scene *scene = CTX_data_scene(C);
+ Object *obedit = CTX_data_edit_object(C);
+ Image *ima = CTX_data_edit_image(C);
+ int change = 0;
- switch(RNA_enum_get(op->ptr, "target")) {
+ switch (RNA_enum_get(op->ptr, "target")) {
case 0:
snap_cursor_to_pixels(sima);
- change= 1;
+ change = 1;
break;
case 1:
- change= snap_cursor_to_selection(scene, ima, obedit, sima);
+ change = snap_cursor_to_selection(scene, ima, obedit, sima);
break;
}
if (!change)
return OPERATOR_CANCELLED;
- WM_event_add_notifier(C, NC_SPACE|ND_SPACE_IMAGE, sima);
+ WM_event_add_notifier(C, NC_SPACE | ND_SPACE_IMAGE, sima);
return OPERATOR_FINISHED;
}
@@ -2694,11 +2694,11 @@ static void UV_OT_snap_cursor(wmOperatorType *ot)
ot->name = "Snap Cursor";
ot->description = "Snap cursor to target type";
ot->idname = "UV_OT_snap_cursor";
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
/* api callbacks */
ot->exec = snap_cursor_exec;
- ot->poll = ED_operator_image_active; /* requires space image */;
+ ot->poll = ED_operator_image_active; /* requires space image */;
/* properties */
RNA_def_enum(ot->srna, "target", target_items, 0, "Target", "Target to snap the selected UVs to");
@@ -2714,10 +2714,10 @@ static int snap_uvs_to_cursor(Scene *scene, Image *ima, Object *obedit, SpaceIma
BMIter iter, liter;
MTexPoly *tface;
MLoopUV *luv;
- short change= 0;
+ short change = 0;
BM_ITER(efa, &iter, em->bm, BM_FACES_OF_MESH, NULL) {
- tface= CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
+ tface = CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
if (!uvedit_face_visible(scene, ima, efa, tface))
continue;
@@ -2725,7 +2725,7 @@ static int snap_uvs_to_cursor(Scene *scene, Image *ima, Object *obedit, SpaceIma
if (uvedit_uv_selected(em, scene, l)) {
luv = CustomData_bmesh_get(&em->bm->ldata, l->head.data, CD_MLOOPUV);
copy_v2_v2(luv->uv, sima->cursor);
- change= 1;
+ change = 1;
}
}
}
@@ -2808,7 +2808,7 @@ static int snap_uvs_to_pixels(SpaceImage *sima, Scene *scene, Object *obedit)
h = (float)height;
BM_ITER(efa, &iter, em->bm, BM_FACES_OF_MESH, NULL) {
- tface= CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
+ tface = CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
if (!uvedit_face_visible(scene, ima, efa, tface))
continue;
@@ -2827,21 +2827,21 @@ static int snap_uvs_to_pixels(SpaceImage *sima, Scene *scene, Object *obedit)
static int snap_selection_exec(bContext *C, wmOperator *op)
{
- SpaceImage *sima= CTX_wm_space_image(C);
- Scene *scene= CTX_data_scene(C);
- Object *obedit= CTX_data_edit_object(C);
- Image *ima= CTX_data_edit_image(C);
- int change= 0;
+ SpaceImage *sima = CTX_wm_space_image(C);
+ Scene *scene = CTX_data_scene(C);
+ Object *obedit = CTX_data_edit_object(C);
+ Image *ima = CTX_data_edit_image(C);
+ int change = 0;
- switch(RNA_enum_get(op->ptr, "target")) {
+ switch (RNA_enum_get(op->ptr, "target")) {
case 0:
- change= snap_uvs_to_pixels(sima, scene, obedit);
+ change = snap_uvs_to_pixels(sima, scene, obedit);
break;
case 1:
- change= snap_uvs_to_cursor(scene, ima, obedit, sima);
+ change = snap_uvs_to_cursor(scene, ima, obedit, sima);
break;
case 2:
- change= snap_uvs_to_adjacent_unselected(scene, ima, obedit);
+ change = snap_uvs_to_adjacent_unselected(scene, ima, obedit);
break;
}
@@ -2850,7 +2850,7 @@ static int snap_selection_exec(bContext *C, wmOperator *op)
uvedit_live_unwrap_update(sima, scene, obedit);
DAG_id_tag_update(obedit->data, 0);
- WM_event_add_notifier(C, NC_GEOM|ND_DATA, obedit->data);
+ WM_event_add_notifier(C, NC_GEOM | ND_DATA, obedit->data);
return OPERATOR_FINISHED;
}
@@ -2867,11 +2867,11 @@ static void UV_OT_snap_selected(wmOperatorType *ot)
ot->name = "Snap Selection";
ot->description = "Snap selected UV vertices to target type";
ot->idname = "UV_OT_snap_selected";
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
/* api callbacks */
ot->exec = snap_selection_exec;
- ot->poll = ED_operator_image_active; /* requires space image */;
+ ot->poll = ED_operator_image_active; /* requires space image */;
/* properties */
RNA_def_enum(ot->srna, "target", target_items, 0, "Target", "Target to snap the selected UVs to");
@@ -2893,7 +2893,7 @@ static int pin_exec(bContext *C, wmOperator *op)
int clear = RNA_boolean_get(op->ptr, "clear");
BM_ITER(efa, &iter, em->bm, BM_FACES_OF_MESH, NULL) {
- tface= CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
+ tface = CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
if (!uvedit_face_visible(scene, ima, efa, tface))
continue;
@@ -2911,7 +2911,7 @@ static int pin_exec(bContext *C, wmOperator *op)
}
}
- WM_event_add_notifier(C, NC_GEOM|ND_DATA, obedit->data);
+ WM_event_add_notifier(C, NC_GEOM | ND_DATA, obedit->data);
return OPERATOR_FINISHED;
}
@@ -2922,7 +2922,7 @@ static void UV_OT_pin(wmOperatorType *ot)
ot->name = "Pin";
ot->description = "Set/clear selected UV vertices as anchored between multiple unwrap operations";
ot->idname = "UV_OT_pin";
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
/* api callbacks */
ot->exec = pin_exec;
@@ -2947,7 +2947,7 @@ static int select_pinned_exec(bContext *C, wmOperator *UNUSED(op))
MLoopUV *luv;
BM_ITER(efa, &iter, em->bm, BM_FACES_OF_MESH, NULL) {
- tface= CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
+ tface = CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
if (!uvedit_face_visible(scene, ima, efa, tface))
continue;
@@ -2959,7 +2959,7 @@ static int select_pinned_exec(bContext *C, wmOperator *UNUSED(op))
}
}
- WM_event_add_notifier(C, NC_GEOM|ND_SELECT, obedit->data);
+ WM_event_add_notifier(C, NC_GEOM | ND_SELECT, obedit->data);
return OPERATOR_FINISHED;
}
@@ -2970,7 +2970,7 @@ static void UV_OT_select_pinned(wmOperatorType *ot)
ot->name = "Selected Pinned";
ot->description = "Select all pinned UV vertices";
ot->idname = "UV_OT_select_pinned";
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
/* api callbacks */
ot->exec = select_pinned_exec;
@@ -2991,11 +2991,11 @@ static int hide_exec(bContext *C, wmOperator *op)
BMIter iter, liter;
MLoopUV *luv;
int swap = RNA_boolean_get(op->ptr, "unselected");
- int facemode= sima ? sima->flag & SI_SELACTFACE : 0;
+ int facemode = sima ? sima->flag & SI_SELACTFACE : 0;
if (ts->uv_flag & UV_SYNC_SELECTION) {
EDBM_mesh_hide(em, swap);
- WM_event_add_notifier(C, NC_GEOM|ND_SELECT, obedit->data);
+ WM_event_add_notifier(C, NC_GEOM | ND_SELECT, obedit->data);
return OPERATOR_FINISHED;
}
@@ -3053,11 +3053,11 @@ static int hide_exec(bContext *C, wmOperator *op)
}
/* flush vertex selection changes */
- if(!facemode && em->selectmode != SCE_SELECT_FACE)
+ if (!facemode && em->selectmode != SCE_SELECT_FACE)
EDBM_selectmode_flush(em);
EDBM_editselection_validate(em);
- WM_event_add_notifier(C, NC_GEOM|ND_SELECT, obedit->data);
+ WM_event_add_notifier(C, NC_GEOM | ND_SELECT, obedit->data);
return OPERATOR_FINISHED;
}
@@ -3068,7 +3068,7 @@ static void UV_OT_hide(wmOperatorType *ot)
ot->name = "Hide Selected";
ot->description = "Hide (un)selected UV vertices";
ot->idname = "UV_OT_hide";
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
/* api callbacks */
ot->exec = hide_exec;
@@ -3082,17 +3082,17 @@ static void UV_OT_hide(wmOperatorType *ot)
static int reveal_exec(bContext *C, wmOperator *UNUSED(op))
{
- SpaceImage *sima= CTX_wm_space_image(C);
- ToolSettings *ts= CTX_data_tool_settings(C);
- Object *obedit= CTX_data_edit_object(C);
+ SpaceImage *sima = CTX_wm_space_image(C);
+ ToolSettings *ts = CTX_data_tool_settings(C);
+ Object *obedit = CTX_data_edit_object(C);
/*Scene *scene = CTX_data_scene(C);*/ /*UNUSED*/
BMEditMesh *em = BMEdit_FromObject(obedit);
BMFace *efa;
BMLoop *l;
BMIter iter, liter;
MLoopUV *luv;
- int facemode= sima ? sima->flag & SI_SELACTFACE : 0;
- int stickymode= sima ? (sima->sticky != SI_STICKY_DISABLE) : 1;
+ int facemode = sima ? sima->flag & SI_SELACTFACE : 0;
+ int stickymode = sima ? (sima->sticky != SI_STICKY_DISABLE) : 1;
/* note on tagging, selecting faces needs to be delayed so it doesn't select the verts and
* confuse our checks on selected verts. */
@@ -3100,7 +3100,7 @@ static int reveal_exec(bContext *C, wmOperator *UNUSED(op))
/* call the mesh function if we are in mesh sync sel */
if (ts->uv_flag & UV_SYNC_SELECTION) {
EDBM_mesh_reveal(em);
- WM_event_add_notifier(C, NC_GEOM|ND_SELECT, obedit->data);
+ WM_event_add_notifier(C, NC_GEOM | ND_SELECT, obedit->data);
return OPERATOR_FINISHED;
}
@@ -3124,7 +3124,7 @@ static int reveal_exec(bContext *C, wmOperator *UNUSED(op))
BM_ITER(efa, &iter, em->bm, BM_FACES_OF_MESH, NULL) {
BM_elem_flag_disable(efa, BM_ELEM_TAG);
if (!BM_elem_flag_test(efa, BM_ELEM_HIDDEN) && !BM_elem_flag_test(efa, BM_ELEM_SELECT)) {
- int totsel=0;
+ int totsel = 0;
BM_ITER(l, &liter, em->bm, BM_LOOPS_OF_FACE, efa) {
totsel += BM_elem_flag_test(l->v, BM_ELEM_SELECT);
}
@@ -3145,7 +3145,7 @@ static int reveal_exec(bContext *C, wmOperator *UNUSED(op))
BM_elem_flag_disable(efa, BM_ELEM_TAG);
if (!BM_elem_flag_test(efa, BM_ELEM_HIDDEN) && !BM_elem_flag_test(efa, BM_ELEM_SELECT)) {
BM_ITER(l, &liter, em->bm, BM_LOOPS_OF_FACE, efa) {
- if (BM_elem_flag_test(l->v, BM_ELEM_SELECT)==0) {
+ if (BM_elem_flag_test(l->v, BM_ELEM_SELECT) == 0) {
luv = CustomData_bmesh_get(&em->bm->ldata, l->head.data, CD_MLOOPUV);
luv->flag |= MLOOPUV_VERTSEL;
}
@@ -3175,7 +3175,7 @@ static int reveal_exec(bContext *C, wmOperator *UNUSED(op))
BM_elem_flag_disable(efa, BM_ELEM_TAG);
if (!BM_elem_flag_test(efa, BM_ELEM_HIDDEN) && !BM_elem_flag_test(efa, BM_ELEM_SELECT)) {
BM_ITER(l, &liter, em->bm, BM_LOOPS_OF_FACE, efa) {
- if (BM_elem_flag_test(l->v, BM_ELEM_SELECT)==0) {
+ if (BM_elem_flag_test(l->v, BM_ELEM_SELECT) == 0) {
luv = CustomData_bmesh_get(&em->bm->ldata, l->head.data, CD_MLOOPUV);
luv->flag |= MLOOPUV_VERTSEL;
}
@@ -3189,7 +3189,7 @@ static int reveal_exec(bContext *C, wmOperator *UNUSED(op))
/* re-select tagged faces */
BM_mesh_elem_hflag_enable_test(em->bm, BM_FACE, BM_ELEM_SELECT, TRUE, BM_ELEM_TAG);
- WM_event_add_notifier(C, NC_GEOM|ND_SELECT, obedit->data);
+ WM_event_add_notifier(C, NC_GEOM | ND_SELECT, obedit->data);
return OPERATOR_FINISHED;
}
@@ -3200,7 +3200,7 @@ static void UV_OT_reveal(wmOperatorType *ot)
ot->name = "Reveal Hidden";
ot->description = "Reveal all hidden UV vertices";
ot->idname = "UV_OT_reveal";
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
/* api callbacks */
ot->exec = reveal_exec;
@@ -3218,17 +3218,17 @@ static int set_2d_cursor_exec(bContext *C, wmOperator *op)
return OPERATOR_CANCELLED;
RNA_float_get_array(op->ptr, "location", location);
- sima->cursor[0]= location[0];
- sima->cursor[1]= location[1];
+ sima->cursor[0] = location[0];
+ sima->cursor[1] = location[1];
- WM_event_add_notifier(C, NC_SPACE|ND_SPACE_IMAGE, NULL);
+ WM_event_add_notifier(C, NC_SPACE | ND_SPACE_IMAGE, NULL);
return OPERATOR_FINISHED;
}
static int set_2d_cursor_invoke(bContext *C, wmOperator *op, wmEvent *event)
{
- ARegion *ar= CTX_wm_region(C);
+ ARegion *ar = CTX_wm_region(C);
float location[2];
UI_view2d_region_to_view(&ar->v2d, event->mval[0], event->mval[1], &location[0], &location[1]);
@@ -3247,10 +3247,10 @@ static void UV_OT_cursor_set(wmOperatorType *ot)
/* api callbacks */
ot->exec = set_2d_cursor_exec;
ot->invoke = set_2d_cursor_invoke;
- ot->poll = ED_operator_image_active; /* requires space image */;
+ ot->poll = ED_operator_image_active; /* requires space image */;
/* flags */
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
/* properties */
RNA_def_float_vector(ot->srna, "location", 2, NULL, -FLT_MAX, FLT_MAX, "Location", "Cursor location in normalised (0.0-1.0) coordinates", -10.0f, 10.0f);
@@ -3260,15 +3260,15 @@ static void UV_OT_cursor_set(wmOperatorType *ot)
static int set_tile_exec(bContext *C, wmOperator *op)
{
- Image *ima= CTX_data_edit_image(C);
+ Image *ima = CTX_data_edit_image(C);
int tile[2];
- Object *obedit= CTX_data_edit_object(C);
+ Object *obedit = CTX_data_edit_object(C);
RNA_int_get_array(op->ptr, "tile", tile);
- if (uvedit_set_tile(obedit, ima, tile[0] + ima->xrep*tile[1])) {
- WM_event_add_notifier(C, NC_GEOM|ND_DATA, obedit->data);
- WM_event_add_notifier(C, NC_SPACE|ND_SPACE_IMAGE, NULL);
+ if (uvedit_set_tile(obedit, ima, tile[0] + ima->xrep * tile[1])) {
+ WM_event_add_notifier(C, NC_GEOM | ND_DATA, obedit->data);
+ WM_event_add_notifier(C, NC_SPACE | ND_SPACE_IMAGE, NULL);
return OPERATOR_FINISHED;
}
@@ -3278,9 +3278,9 @@ static int set_tile_exec(bContext *C, wmOperator *op)
static int set_tile_invoke(bContext *C, wmOperator *op, wmEvent *event)
{
- SpaceImage *sima= CTX_wm_space_image(C);
- Image *ima= CTX_data_edit_image(C);
- ARegion *ar= CTX_wm_region(C);
+ SpaceImage *sima = CTX_wm_space_image(C);
+ Image *ima = CTX_data_edit_image(C);
+ ARegion *ar = CTX_wm_region(C);
float fx, fy;
int tile[2];
@@ -3290,13 +3290,13 @@ static int set_tile_invoke(bContext *C, wmOperator *op, wmEvent *event)
UI_view2d_region_to_view(&ar->v2d, event->mval[0], event->mval[1], &fx, &fy);
if (fx >= 0.0f && fy >= 0.0f && fx < 1.0f && fy < 1.0f) {
- fx= fx*ima->xrep;
- fy= fy*ima->yrep;
+ fx = fx * ima->xrep;
+ fy = fy * ima->yrep;
- tile[0]= fx;
- tile[1]= fy;
+ tile[0] = fx;
+ tile[1] = fy;
- sima->curtile= tile[1]*ima->xrep + tile[0];
+ sima->curtile = tile[1] * ima->xrep + tile[0];
RNA_int_set_array(op->ptr, "tile", tile);
}
@@ -3313,10 +3313,10 @@ static void UV_OT_tile_set(wmOperatorType *ot)
/* api callbacks */
ot->exec = set_tile_exec;
ot->invoke = set_tile_invoke;
- ot->poll = ED_operator_image_active; /* requires space image */;
+ ot->poll = ED_operator_image_active; /* requires space image */;
/* flags */
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
/* properties */
RNA_def_int_vector(ot->srna, "tile", 2, NULL, 0, INT_MAX, "Tile", "Tile coordinate", 0, 10);
@@ -3327,7 +3327,7 @@ static int seams_from_islands_exec(bContext *C, wmOperator *op)
{
UvVertMap *vmap;
Object *ob = CTX_data_edit_object(C);
- Mesh *me= (Mesh*)ob->data;
+ Mesh *me = (Mesh *)ob->data;
BMEditMesh *em;
BMEdge *editedge;
float limit[2] = {STD_UV_CONNECT_LIMIT, STD_UV_CONNECT_LIMIT};
@@ -3428,7 +3428,7 @@ static int seams_from_islands_exec(bContext *C, wmOperator *op)
EDBM_index_arrays_free(em);
DAG_id_tag_update(&me->id, 0);
- WM_event_add_notifier(C, NC_GEOM|ND_DATA, me);
+ WM_event_add_notifier(C, NC_GEOM | ND_DATA, me);
return OPERATOR_FINISHED;
}
@@ -3442,7 +3442,7 @@ static void UV_OT_seams_from_islands(wmOperatorType *ot)
ot->idname = "UV_OT_seams_from_islands";
/* flags */
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
/* api callbacks */
ot->exec = seams_from_islands_exec;
@@ -3456,8 +3456,8 @@ static int mark_seam_exec(bContext *C, wmOperator *UNUSED(op))
{
Object *ob = CTX_data_edit_object(C);
Scene *scene = CTX_data_scene(C);
- Mesh *me= (Mesh*)ob->data;
- BMEditMesh *em= me->edit_btmesh;
+ Mesh *me = (Mesh *)ob->data;
+ BMEditMesh *em = me->edit_btmesh;
BMesh *bm = em->bm;
BMFace *efa;
BMLoop *loop;
@@ -3478,7 +3478,7 @@ static int mark_seam_exec(bContext *C, wmOperator *UNUSED(op))
ED_unwrap_lscm(scene, ob, FALSE);
DAG_id_tag_update(&me->id, 0);
- WM_event_add_notifier(C, NC_GEOM|ND_DATA, me);
+ WM_event_add_notifier(C, NC_GEOM | ND_DATA, me);
return OPERATOR_FINISHED;
}
@@ -3491,7 +3491,7 @@ static void UV_OT_mark_seam(wmOperatorType *ot)
ot->idname = "UV_OT_mark_seam";
/* flags */
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
/* api callbacks */
ot->exec = mark_seam_exec;
@@ -3561,7 +3561,7 @@ void ED_keymap_uvedit(wmKeyConfig *keyconf)
RNA_boolean_set(WM_keymap_add_item(keymap, "UV_OT_select", SELECTMOUSE, KM_PRESS, 0, 0)->ptr, "extend", FALSE);
RNA_boolean_set(WM_keymap_add_item(keymap, "UV_OT_select", SELECTMOUSE, KM_PRESS, KM_SHIFT, 0)->ptr, "extend", TRUE);
RNA_boolean_set(WM_keymap_add_item(keymap, "UV_OT_select_loop", SELECTMOUSE, KM_PRESS, KM_ALT, 0)->ptr, "extend", FALSE);
- RNA_boolean_set(WM_keymap_add_item(keymap, "UV_OT_select_loop", SELECTMOUSE, KM_PRESS, KM_SHIFT|KM_ALT, 0)->ptr, "extend", TRUE);
+ RNA_boolean_set(WM_keymap_add_item(keymap, "UV_OT_select_loop", SELECTMOUSE, KM_PRESS, KM_SHIFT | KM_ALT, 0)->ptr, "extend", TRUE);
/* border/circle selection */
kmi = WM_keymap_add_item(keymap, "UV_OT_select_border", BKEY, KM_PRESS, 0, 0);
@@ -3574,7 +3574,7 @@ void ED_keymap_uvedit(wmKeyConfig *keyconf)
/* selection manipulation */
RNA_boolean_set(WM_keymap_add_item(keymap, "UV_OT_select_linked", LKEY, KM_PRESS, KM_CTRL, 0)->ptr, "extend", FALSE);
RNA_boolean_set(WM_keymap_add_item(keymap, "UV_OT_select_linked_pick", LKEY, KM_PRESS, 0, 0)->ptr, "extend", FALSE);
- RNA_boolean_set(WM_keymap_add_item(keymap, "UV_OT_select_linked", LKEY, KM_PRESS, KM_CTRL|KM_SHIFT, 0)->ptr, "extend", TRUE);
+ RNA_boolean_set(WM_keymap_add_item(keymap, "UV_OT_select_linked", LKEY, KM_PRESS, KM_CTRL | KM_SHIFT, 0)->ptr, "extend", TRUE);
RNA_boolean_set(WM_keymap_add_item(keymap, "UV_OT_select_linked_pick", LKEY, KM_PRESS, KM_SHIFT, 0)->ptr, "extend", TRUE);
WM_keymap_add_item(keymap, "UV_OT_unlink_selected", LKEY, KM_PRESS, KM_ALT, 0);
diff --git a/source/blender/editors/uvedit/uvedit_parametrizer.c b/source/blender/editors/uvedit/uvedit_parametrizer.c
index 7d388e6206c..d2c711fccf3 100644
--- a/source/blender/editors/uvedit/uvedit_parametrizer.c
+++ b/source/blender/editors/uvedit/uvedit_parametrizer.c
@@ -32,24 +32,23 @@
/* Utils */
#if 0
- #define param_assert(condition);
- #define param_warning(message);
- #define param_test_equals_ptr(condition);
- #define param_test_equals_int(condition);
+ #define param_assert(condition)
+ #define param_warning(message)
+ #define param_test_equals_ptr(condition)
+ #define param_test_equals_int(condition)
#else
#define param_assert(condition) \
if (!(condition)) \
- { /*printf("Assertion %s:%d\n", __FILE__, __LINE__); abort();*/ }
+ { /*printf("Assertion %s:%d\n", __FILE__, __LINE__); abort();*/ } (void)0
#define param_warning(message) \
- { /*printf("Warning %s:%d: %s\n", __FILE__, __LINE__, message);*/ }
+ { /*printf("Warning %s:%d: %s\n", __FILE__, __LINE__, message);*/ } (void)0
#define param_test_equals_ptr(str, a, b) \
if (a != b) \
- { /*printf("Equals %s => %p != %p\n", str, a, b);*/ };
+ { /*printf("Equals %s => %p != %p\n", str, a, b);*/ } (void)0
#define param_test_equals_int(str, a, b) \
if (a != b) \
- { /*printf("Equals %s => %d != %d\n", str, a, b);*/ };
+ { /*printf("Equals %s => %d != %d\n", str, a, b);*/ } (void)0
#endif
-
typedef enum PBool {
P_TRUE = 1,
P_FALSE = 0
@@ -84,10 +83,10 @@ typedef struct PVert {
struct PVert *nextlink;
union PVertUnion {
- PHashKey key; /* construct */
- int id; /* abf/lscm matrix index */
- float distortion; /* area smoothing */
- HeapNode *heaplink; /* edge collapsing */
+ PHashKey key; /* construct */
+ int id; /* abf/lscm matrix index */
+ float distortion; /* area smoothing */
+ HeapNode *heaplink; /* edge collapsing */
} u;
struct PEdge *edge;
@@ -101,10 +100,10 @@ typedef struct PEdge {
struct PEdge *nextlink;
union PEdgeUnion {
- PHashKey key; /* construct */
- int id; /* abf matrix index */
- HeapNode *heaplink; /* fill holes */
- struct PEdge *nextcollapse; /* simplification */
+ PHashKey key; /* construct */
+ int id; /* abf matrix index */
+ HeapNode *heaplink; /* fill holes */
+ struct PEdge *nextcollapse; /* simplification */
} u;
struct PVert *vert;
@@ -120,10 +119,10 @@ typedef struct PFace {
struct PFace *nextlink;
union PFaceUnion {
- PHashKey key; /* construct */
- int chart; /* construct splitting*/
- float area3d; /* stretch */
- int id; /* abf matrix index */
+ PHashKey key; /* construct */
+ int chart; /* construct splitting*/
+ float area3d; /* stretch */
+ int id; /* abf matrix index */
} u;
struct PEdge *edge;
@@ -230,12 +229,12 @@ static int PHashSizes[] = {
4194319, 8388617, 16777259, 33554467, 67108879, 134217757, 268435459
};
-#define PHASH_hash(ph, item) (((uintptr_t) (item))%((unsigned int) (ph)->cursize))
-#define PHASH_edge(v1, v2) ((v1)^(v2))
+#define PHASH_hash(ph, item) (((uintptr_t) (item)) % ((unsigned int) (ph)->cursize))
+#define PHASH_edge(v1, v2) ((v1) ^ (v2))
static PHash *phash_new(PHashLink **list, int sizehint)
{
- PHash *ph = (PHash*)MEM_callocN(sizeof(PHash), "PHash");
+ PHash *ph = (PHash *)MEM_callocN(sizeof(PHash), "PHash");
ph->size = 0;
ph->cursize_id = 0;
ph->list = list;
@@ -244,7 +243,7 @@ static PHash *phash_new(PHashLink **list, int sizehint)
ph->cursize_id++;
ph->cursize = PHashSizes[ph->cursize_id];
- ph->buckets = (PHashLink**)MEM_callocN(ph->cursize*sizeof(*ph->buckets), "PHashBuckets");
+ ph->buckets = (PHashLink **)MEM_callocN(ph->cursize * sizeof(*ph->buckets), "PHashBuckets");
return ph;
}
@@ -280,12 +279,12 @@ static void phash_insert(PHash *ph, PHashLink *link)
ph->size++;
- if (ph->size > (size*3)) {
+ if (ph->size > (size * 3)) {
PHashLink *next = NULL, *first = *(ph->list);
ph->cursize = PHashSizes[++ph->cursize_id];
MEM_freeN(ph->buckets);
- ph->buckets = (PHashLink**)MEM_callocN(ph->cursize*sizeof(*ph->buckets), "PHashBuckets");
+ ph->buckets = (PHashLink **)MEM_callocN(ph->cursize * sizeof(*ph->buckets), "PHashBuckets");
ph->size = 0;
*(ph->list) = NULL;
@@ -340,7 +339,7 @@ static float p_vec_angle_cos(float *v1, float *v2, float *v3)
normalize_v3(d1);
normalize_v3(d2);
- return d1[0]*d2[0] + d1[1]*d2[1] + d1[2]*d2[2];
+ return d1[0] * d2[0] + d1[1] * d2[1] + d1[2] * d2[2];
}
static float p_vec_angle(float *v1, float *v2, float *v3)
@@ -391,8 +390,8 @@ static float p_face_area(PFace *f)
static float p_area_signed(float *v1, float *v2, float *v3)
{
- return 0.5f*(((v2[0] - v1[0])*(v3[1] - v1[1])) -
- ((v3[0] - v1[0])*(v2[1] - v1[1])));
+ return 0.5f * (((v2[0] - v1[0]) * (v3[1] - v1[1])) -
+ ((v3[0] - v1[0]) * (v2[1] - v1[1])));
}
static float p_face_uv_area_signed(PFace *f)
@@ -400,8 +399,8 @@ static float p_face_uv_area_signed(PFace *f)
PEdge *e1 = f->edge, *e2 = e1->next, *e3 = e2->next;
PVert *v1 = e1->vert, *v2 = e2->vert, *v3 = e3->vert;
- return 0.5f*(((v2->uv[0] - v1->uv[0])*(v3->uv[1] - v1->uv[1])) -
- ((v3->uv[0] - v1->uv[0])*(v2->uv[1] - v1->uv[1])));
+ return 0.5f * (((v2->uv[0] - v1->uv[0]) * (v3->uv[1] - v1->uv[1])) -
+ ((v3->uv[0] - v1->uv[0]) * (v2->uv[1] - v1->uv[1])));
}
static float p_edge_length(PEdge *e)
@@ -413,7 +412,7 @@ static float p_edge_length(PEdge *e)
d[1] = v2->co[1] - v1->co[1];
d[2] = v2->co[2] - v1->co[2];
- return sqrt(d[0]*d[0] + d[1]*d[1] + d[2]*d[2]);
+ return sqrt(d[0] * d[0] + d[1] * d[1] + d[2] * d[2]);
}
static float p_edge_uv_length(PEdge *e)
@@ -424,7 +423,7 @@ static float p_edge_uv_length(PEdge *e)
d[0] = v2->uv[0] - v1->uv[0];
d[1] = v2->uv[1] - v1->uv[1];
- return sqrt(d[0]*d[0] + d[1]*d[1]);
+ return sqrt(d[0] * d[0] + d[1] * d[1]);
}
static void p_chart_uv_bbox(PChart *chart, float *minv, float *maxv)
@@ -433,7 +432,7 @@ static void p_chart_uv_bbox(PChart *chart, float *minv, float *maxv)
INIT_MINMAX2(minv, maxv);
- for (v=chart->verts; v; v=v->nextlink) {
+ for (v = chart->verts; v; v = v->nextlink) {
DO_MINMAX2(v->uv, minv, maxv);
}
}
@@ -442,7 +441,7 @@ static void p_chart_uv_scale(PChart *chart, float scale)
{
PVert *v;
- for (v=chart->verts; v; v=v->nextlink) {
+ for (v = chart->verts; v; v = v->nextlink) {
v->uv[0] *= scale;
v->uv[1] *= scale;
}
@@ -452,7 +451,7 @@ static void p_chart_uv_scale_xy(PChart *chart, float x, float y)
{
PVert *v;
- for (v=chart->verts; v; v=v->nextlink) {
+ for (v = chart->verts; v; v = v->nextlink) {
v->uv[0] *= x;
v->uv[1] *= y;
}
@@ -462,7 +461,7 @@ static void p_chart_uv_translate(PChart *chart, float trans[2])
{
PVert *v;
- for (v=chart->verts; v; v=v->nextlink) {
+ for (v = chart->verts; v; v = v->nextlink) {
v->uv[0] += trans[0];
v->uv[1] += trans[1];
}
@@ -472,14 +471,14 @@ static PBool p_intersect_line_2d_dir(float *v1, float *dir1, float *v2, float *d
{
float lmbda, div;
- div= dir2[0]*dir1[1] - dir2[1]*dir1[0];
+ div = dir2[0] * dir1[1] - dir2[1] * dir1[0];
if (div == 0.0f)
return P_FALSE;
- lmbda= ((v1[1]-v2[1])*dir1[0]-(v1[0]-v2[0])*dir1[1])/div;
- isect[0] = v1[0] + lmbda*dir2[0];
- isect[1] = v1[1] + lmbda*dir2[1];
+ lmbda = ((v1[1] - v2[1]) * dir1[0] - (v1[0] - v2[0]) * dir1[1]) / div;
+ isect[0] = v1[0] + lmbda * dir2[0];
+ isect[1] = v1[1] + lmbda * dir2[1];
return P_TRUE;
}
@@ -498,8 +497,8 @@ static PBool p_intersect_line_2d(float *v1, float *v2, float *v3, float *v4, flo
if (!p_intersect_line_2d_dir(v1, dir1, v2, dir2, isect)) {
/* parallel - should never happen in theory for polygon kernel, but
* let's give a point nearby in case things go wrong */
- isect[0] = (v1[0] + v2[0])*0.5f;
- isect[1] = (v1[1] + v2[1])*0.5f;
+ isect[0] = (v1[0] + v2[0]) * 0.5f;
+ isect[1] = (v1[1] + v2[1]) * 0.5f;
return P_FALSE;
}
@@ -516,7 +515,7 @@ static PEdge *p_wheel_edge_next(PEdge *e)
static PEdge *p_wheel_edge_prev(PEdge *e)
{
- return (e->pair)? e->pair->next: NULL;
+ return (e->pair) ? e->pair->next : NULL;
}
static PEdge *p_boundary_edge_next(PEdge *e)
@@ -570,10 +569,10 @@ static void p_chart_topological_sanity_check(PChart *chart)
PVert *v;
PEdge *e;
- for (v=chart->verts; v; v=v->nextlink)
+ for (v = chart->verts; v; v = v->nextlink)
param_test_equals_ptr("v->edge->vert", v, v->edge->vert);
- for (e=chart->edges; e; e=e->nextlink) {
+ for (e = chart->edges; e; e = e->nextlink) {
if (e->pair) {
param_test_equals_ptr("e->pair->pair", e, e->pair->pair);
param_test_equals_ptr("pair->vert", e->vert, e->pair->next->vert);
@@ -600,13 +599,13 @@ static void p_vert_load_pin_select_uvs(PHandle *handle, PVert *v)
v->flag |= PVERT_SELECT;
if (e->flag & PEDGE_PIN) {
- pinuv[0] += e->orig_uv[0]*handle->aspx;
- pinuv[1] += e->orig_uv[1]*handle->aspy;
+ pinuv[0] += e->orig_uv[0] * handle->aspx;
+ pinuv[1] += e->orig_uv[1] * handle->aspy;
npins++;
}
else {
- v->uv[0] += e->orig_uv[0]*handle->aspx;
- v->uv[1] += e->orig_uv[1]*handle->aspy;
+ v->uv[0] += e->orig_uv[0] * handle->aspx;
+ v->uv[1] += e->orig_uv[1] * handle->aspy;
}
nedges++;
@@ -616,8 +615,8 @@ static void p_vert_load_pin_select_uvs(PHandle *handle, PVert *v)
} while (e && e != (v->edge));
if (npins > 0) {
- v->uv[0] = pinuv[0]/npins;
- v->uv[1] = pinuv[1]/npins;
+ v->uv[0] = pinuv[0] / npins;
+ v->uv[1] = pinuv[1] / npins;
v->flag |= PVERT_PIN;
}
else if (nedges > 0) {
@@ -630,10 +629,10 @@ static void p_flush_uvs(PHandle *handle, PChart *chart)
{
PEdge *e;
- for (e=chart->edges; e; e=e->nextlink) {
+ for (e = chart->edges; e; e = e->nextlink) {
if (e->orig_uv) {
- e->orig_uv[0] = e->vert->uv[0]/handle->aspx;
- e->orig_uv[1] = e->vert->uv[1]/handle->aspy;
+ e->orig_uv[0] = e->vert->uv[0] / handle->aspx;
+ e->orig_uv[1] = e->vert->uv[1] / handle->aspy;
}
}
}
@@ -643,10 +642,10 @@ static void p_flush_uvs_blend(PHandle *handle, PChart *chart, float blend)
PEdge *e;
float invblend = 1.0f - blend;
- for (e=chart->edges; e; e=e->nextlink) {
+ for (e = chart->edges; e; e = e->nextlink) {
if (e->orig_uv) {
- e->orig_uv[0] = blend*e->old_uv[0] + invblend*e->vert->uv[0]/handle->aspx;
- e->orig_uv[1] = blend*e->old_uv[1] + invblend*e->vert->uv[1]/handle->aspy;
+ e->orig_uv[0] = blend * e->old_uv[0] + invblend * e->vert->uv[0] / handle->aspx;
+ e->orig_uv[1] = blend * e->old_uv[1] + invblend * e->vert->uv[1] / handle->aspy;
}
}
}
@@ -691,20 +690,20 @@ static void p_face_restore_uvs(PFace *f)
static PVert *p_vert_add(PHandle *handle, PHashKey key, float *co, PEdge *e)
{
- PVert *v = (PVert*)BLI_memarena_alloc(handle->arena, sizeof *v);
+ PVert *v = (PVert *)BLI_memarena_alloc(handle->arena, sizeof *v);
copy_v3_v3(v->co, co);
v->u.key = key;
v->edge = e;
v->flag = 0;
- phash_insert(handle->hash_verts, (PHashLink*)v);
+ phash_insert(handle->hash_verts, (PHashLink *)v);
return v;
}
static PVert *p_vert_lookup(PHandle *handle, PHashKey key, float *co, PEdge *e)
{
- PVert *v = (PVert*)phash_lookup(handle->hash_verts, key);
+ PVert *v = (PVert *)phash_lookup(handle->hash_verts, key);
if (v)
return v;
@@ -714,7 +713,7 @@ static PVert *p_vert_lookup(PHandle *handle, PHashKey key, float *co, PEdge *e)
static PVert *p_vert_copy(PChart *chart, PVert *v)
{
- PVert *nv = (PVert*)BLI_memarena_alloc(chart->handle->arena, sizeof *nv);
+ PVert *nv = (PVert *)BLI_memarena_alloc(chart->handle->arena, sizeof *nv);
copy_v3_v3(nv->co, v->co);
nv->uv[0] = v->uv[0];
@@ -729,7 +728,7 @@ static PVert *p_vert_copy(PChart *chart, PVert *v)
static PEdge *p_edge_lookup(PHandle *handle, PHashKey *vkeys)
{
PHashKey key = PHASH_edge(vkeys[0], vkeys[1]);
- PEdge *e = (PEdge*)phash_lookup(handle->hash_edges, key);
+ PEdge *e = (PEdge *)phash_lookup(handle->hash_edges, key);
while (e) {
if ((e->vert->u.key == vkeys[0]) && (e->next->vert->u.key == vkeys[1]))
@@ -737,7 +736,7 @@ static PEdge *p_edge_lookup(PHandle *handle, PHashKey *vkeys)
else if ((e->vert->u.key == vkeys[1]) && (e->next->vert->u.key == vkeys[0]))
return e;
- e = (PEdge*)phash_next(handle->hash_edges, key, (PHashLink*)e);
+ e = (PEdge *)phash_next(handle->hash_edges, key, (PHashLink *)e);
}
return NULL;
@@ -745,10 +744,10 @@ static PEdge *p_edge_lookup(PHandle *handle, PHashKey *vkeys)
int p_face_exists(ParamHandle *phandle, ParamKey *pvkeys, int i1, int i2, int i3)
{
- PHandle *handle = (PHandle*)phandle;
- PHashKey *vkeys = (PHashKey*)pvkeys;
+ PHandle *handle = (PHandle *)phandle;
+ PHashKey *vkeys = (PHashKey *)pvkeys;
PHashKey key = PHASH_edge(vkeys[i1], vkeys[i2]);
- PEdge *e = (PEdge*)phash_lookup(handle->hash_edges, key);
+ PEdge *e = (PEdge *)phash_lookup(handle->hash_edges, key);
while (e) {
if ((e->vert->u.key == vkeys[i1]) && (e->next->vert->u.key == vkeys[i2])) {
@@ -760,7 +759,7 @@ int p_face_exists(ParamHandle *phandle, ParamKey *pvkeys, int i1, int i2, int i3
return P_TRUE;
}
- e = (PEdge*)phash_next(handle->hash_edges, key, (PHashLink*)e);
+ e = (PEdge *)phash_next(handle->hash_edges, key, (PHashLink *)e);
}
return P_FALSE;
@@ -768,7 +767,7 @@ int p_face_exists(ParamHandle *phandle, ParamKey *pvkeys, int i1, int i2, int i3
static PChart *p_chart_new(PHandle *handle)
{
- PChart *chart = (PChart*)MEM_callocN(sizeof*chart, "PChart");
+ PChart *chart = (PChart *)MEM_callocN(sizeof *chart, "PChart");
chart->handle = handle;
return chart;
@@ -800,12 +799,12 @@ static PBool p_edge_implicit_seam(PEdge *e, PEdge *ep)
uvp2 = ep->orig_uv;
}
- if ((fabsf(uv1[0]-uvp1[0]) > limit[0]) || (fabsf(uv1[1]-uvp1[1]) > limit[1])) {
+ if ((fabsf(uv1[0] - uvp1[0]) > limit[0]) || (fabsf(uv1[1] - uvp1[1]) > limit[1])) {
e->flag |= PEDGE_SEAM;
ep->flag |= PEDGE_SEAM;
return P_TRUE;
}
- if ((fabsf(uv2[0]-uvp2[0]) > limit[0]) || (fabsf(uv2[1]-uvp2[1]) > limit[1])) {
+ if ((fabsf(uv2[0] - uvp2[0]) > limit[0]) || (fabsf(uv2[1] - uvp2[1]) > limit[1])) {
e->flag |= PEDGE_SEAM;
ep->flag |= PEDGE_SEAM;
return P_TRUE;
@@ -826,7 +825,7 @@ static PBool p_edge_has_pair(PHandle *handle, PEdge *e, PEdge **pair, PBool impl
return P_FALSE;
key = PHASH_edge(key1, key2);
- pe = (PEdge*)phash_lookup(handle->hash_edges, key);
+ pe = (PEdge *)phash_lookup(handle->hash_edges, key);
*pair = NULL;
while (pe) {
@@ -835,11 +834,13 @@ static PBool p_edge_has_pair(PHandle *handle, PEdge *e, PEdge **pair, PBool impl
v2 = pe->next->vert;
if (((v1->u.key == key1) && (v2->u.key == key2)) ||
- ((v1->u.key == key2) && (v2->u.key == key1))) {
+ ((v1->u.key == key2) && (v2->u.key == key1)))
+ {
/* don't connect seams and t-junctions */
if ((pe->flag & PEDGE_SEAM) || *pair ||
- (impl && p_edge_implicit_seam(e, pe))) {
+ (impl && p_edge_implicit_seam(e, pe)))
+ {
*pair = NULL;
return P_FALSE;
}
@@ -848,7 +849,7 @@ static PBool p_edge_has_pair(PHandle *handle, PEdge *e, PEdge **pair, PBool impl
}
}
- pe = (PEdge*)phash_next(handle->hash_edges, key, (PHashLink*)pe);
+ pe = (PEdge *)phash_next(handle->hash_edges, key, (PHashLink *)pe);
}
if (*pair && (e->vert == (*pair)->vert)) {
@@ -884,7 +885,7 @@ static PBool p_edge_connect_pair(PHandle *handle, PEdge *e, PEdge ***stack, PBoo
static int p_connect_pairs(PHandle *handle, PBool impl)
{
- PEdge **stackbase = MEM_mallocN(sizeof*stackbase*phash_size(handle->hash_faces), "Pstackbase");
+ PEdge **stackbase = MEM_mallocN(sizeof *stackbase * phash_size(handle->hash_faces), "Pstackbase");
PEdge **stack = stackbase;
PFace *f, *first;
PEdge *e, *e1, *e2;
@@ -892,7 +893,7 @@ static int p_connect_pairs(PHandle *handle, PBool impl)
int ncharts = 0;
/* connect pairs, count edges, set vertex-edge pointer to a pairless edge */
- for (first=chart->faces; first; first=first->nextlink) {
+ for (first = chart->faces; first; first = first->nextlink) {
if (first->flag & PFACE_CONNECTED)
continue;
@@ -979,7 +980,7 @@ static void p_split_vert(PChart *chart, PEdge *e)
static PChart **p_split_charts(PHandle *handle, PChart *chart, int ncharts)
{
- PChart **charts = MEM_mallocN(sizeof*charts * ncharts, "PCharts"), *nchart;
+ PChart **charts = MEM_mallocN(sizeof *charts * ncharts, "PCharts"), *nchart;
PFace *f, *nextf;
int i;
@@ -1021,12 +1022,12 @@ static PFace *p_face_add(PHandle *handle)
PEdge *e1, *e2, *e3;
/* allocate */
- f = (PFace*)BLI_memarena_alloc(handle->arena, sizeof *f);
- f->flag=0; // init !
+ f = (PFace *)BLI_memarena_alloc(handle->arena, sizeof *f);
+ f->flag = 0; // init !
- e1 = (PEdge*)BLI_memarena_alloc(handle->arena, sizeof *e1);
- e2 = (PEdge*)BLI_memarena_alloc(handle->arena, sizeof *e2);
- e3 = (PEdge*)BLI_memarena_alloc(handle->arena, sizeof *e3);
+ e1 = (PEdge *)BLI_memarena_alloc(handle->arena, sizeof *e1);
+ e2 = (PEdge *)BLI_memarena_alloc(handle->arena, sizeof *e2);
+ e3 = (PEdge *)BLI_memarena_alloc(handle->arena, sizeof *e3);
/* set up edges */
f->edge = e1;
@@ -1040,16 +1041,16 @@ static PFace *p_face_add(PHandle *handle)
e2->pair = NULL;
e3->pair = NULL;
- e1->flag =0;
- e2->flag =0;
- e3->flag =0;
+ e1->flag = 0;
+ e2->flag = 0;
+ e3->flag = 0;
return f;
}
static PFace *p_face_add_construct(PHandle *handle, ParamKey key, ParamKey *vkeys,
- float *co[3], float *uv[3], int i1, int i2, int i3,
- ParamBool *pin, ParamBool *select)
+ float *co[3], float *uv[3], int i1, int i2, int i3,
+ ParamBool *pin, ParamBool *select)
{
PFace *f = p_face_add(handle);
PEdge *e1 = f->edge, *e2 = e1->next, *e3 = e2->next;
@@ -1076,15 +1077,15 @@ static PFace *p_face_add_construct(PHandle *handle, ParamKey key, ParamKey *vkey
/* insert into hash */
f->u.key = key;
- phash_insert(handle->hash_faces, (PHashLink*)f);
+ phash_insert(handle->hash_faces, (PHashLink *)f);
e1->u.key = PHASH_edge(vkeys[i1], vkeys[i2]);
e2->u.key = PHASH_edge(vkeys[i2], vkeys[i3]);
e3->u.key = PHASH_edge(vkeys[i3], vkeys[i1]);
- phash_insert(handle->hash_edges, (PHashLink*)e1);
- phash_insert(handle->hash_edges, (PHashLink*)e2);
- phash_insert(handle->hash_edges, (PHashLink*)e3);
+ phash_insert(handle->hash_edges, (PHashLink *)e1);
+ phash_insert(handle->hash_edges, (PHashLink *)e2);
+ phash_insert(handle->hash_edges, (PHashLink *)e3);
return f;
}
@@ -1117,7 +1118,7 @@ static PFace *p_face_add_fill(PChart *chart, PVert *v1, PVert *v2, PVert *v3)
static PBool p_quad_split_direction(PHandle *handle, float **co, PHashKey *vkeys)
{
- float fac= len_v3v3(co[0], co[2]) - len_v3v3(co[1], co[3]);
+ float fac = len_v3v3(co[0], co[2]) - len_v3v3(co[1], co[3]);
PBool dir = (fac <= 0.0f);
/* the face exists check is there because of a special case: when
@@ -1125,11 +1126,11 @@ static PBool p_quad_split_direction(PHandle *handle, float **co, PHashKey *vkeys
* triangles, resulting in two identical triangles. for example in
* suzanne's nose. */
if (dir) {
- if (p_face_exists(handle,vkeys,0,1,2) || p_face_exists(handle,vkeys,0,2,3))
+ if (p_face_exists(handle, vkeys, 0, 1, 2) || p_face_exists(handle, vkeys, 0, 2, 3))
return !dir;
}
else {
- if (p_face_exists(handle,vkeys,0,1,3) || p_face_exists(handle,vkeys,1,2,3))
+ if (p_face_exists(handle, vkeys, 0, 1, 3) || p_face_exists(handle, vkeys, 1, 2, 3))
return !dir;
}
@@ -1148,7 +1149,7 @@ static void p_chart_boundaries(PChart *chart, int *nboundaries, PEdge **outer)
if (outer)
*outer = NULL;
- for (e=chart->edges; e; e=e->nextlink) {
+ for (e = chart->edges; e; e = e->nextlink) {
if (e->pair || (e->flag & PEDGE_DONE))
continue;
@@ -1170,7 +1171,7 @@ static void p_chart_boundaries(PChart *chart, int *nboundaries, PEdge **outer)
}
}
- for (e=chart->edges; e; e=e->nextlink)
+ for (e = chart->edges; e; e = e->nextlink)
e->flag &= ~PEDGE_DONE;
}
@@ -1228,7 +1229,7 @@ static void p_chart_fill_boundary(PChart *chart, PEdge *be, int nedges)
while (nedges > 2) {
PEdge *ne, *ne1, *ne2;
- e = (PEdge*)BLI_heap_popmin(heap);
+ e = (PEdge *)BLI_heap_popmin(heap);
e1 = p_boundary_edge_prev(e);
e2 = p_boundary_edge_next(e);
@@ -1285,7 +1286,7 @@ static void p_chart_fill_boundaries(PChart *chart, PEdge *outer)
PEdge *e, *be; /* *enext - as yet unused */
int nedges;
- for (e=chart->edges; e; e=e->nextlink) {
+ for (e = chart->edges; e; e = e->nextlink) {
/* enext = e->nextlink; - as yet unused */
if (e->pair || (e->flag & PEDGE_FILLED))
@@ -1322,7 +1323,7 @@ static void p_polygon_kernel_clip(float (*oldpoints)[2], int noldpoints, float (
float *p2, *p1, isect[2];
int i, p2in, p1in;
- p1 = oldpoints[noldpoints-1];
+ p1 = oldpoints[noldpoints - 1];
p1in = p_polygon_point_in(cp1, cp2, p1);
*nnewpoints = 0;
@@ -1364,20 +1365,20 @@ static void p_polygon_kernel_center(float (*points)[2], int npoints, float *cent
int i, size, nnewpoints = npoints;
float (*oldpoints)[2], (*newpoints)[2], *p1, *p2;
- size = npoints*3;
- oldpoints = MEM_mallocN(sizeof(float)*2*size, "PPolygonOldPoints");
- newpoints = MEM_mallocN(sizeof(float)*2*size, "PPolygonNewPoints");
+ size = npoints * 3;
+ oldpoints = MEM_mallocN(sizeof(float) * 2 * size, "PPolygonOldPoints");
+ newpoints = MEM_mallocN(sizeof(float) * 2 * size, "PPolygonNewPoints");
- memcpy(oldpoints, points, sizeof(float)*2*npoints);
+ memcpy(oldpoints, points, sizeof(float) * 2 * npoints);
for (i = 0; i < npoints; i++) {
p1 = points[i];
- p2 = points[(i+1)%npoints];
+ p2 = points[(i + 1) % npoints];
p_polygon_kernel_clip(oldpoints, nnewpoints, newpoints, &nnewpoints, p1, p2);
if (nnewpoints == 0) {
/* degenerate case, use center of original polygon */
- memcpy(oldpoints, points, sizeof(float)*2*npoints);
+ memcpy(oldpoints, points, sizeof(float) * 2 * npoints);
nnewpoints = npoints;
break;
}
@@ -1392,13 +1393,13 @@ static void p_polygon_kernel_center(float (*points)[2], int npoints, float *cent
return;
}
- if (nnewpoints*2 > size) {
+ if (nnewpoints * 2 > size) {
size *= 2;
MEM_freeN(oldpoints);
- oldpoints = MEM_mallocN(sizeof(float)*2*size, "oldpoints");
- memcpy(oldpoints, newpoints, sizeof(float)*2*nnewpoints);
+ oldpoints = MEM_mallocN(sizeof(float) * 2 * size, "oldpoints");
+ memcpy(oldpoints, newpoints, sizeof(float) * 2 * nnewpoints);
MEM_freeN(newpoints);
- newpoints = MEM_mallocN(sizeof(float)*2*size, "newpoints");
+ newpoints = MEM_mallocN(sizeof(float) * 2 * size, "newpoints");
}
else {
float (*sw_points)[2] = oldpoints;
@@ -1441,7 +1442,7 @@ static float p_vert_cotan(float *v1, float *v2, float *v3)
if (clen == 0.0f)
return 0.0f;
- return dot_v3v3(a, b)/clen;
+ return dot_v3v3(a, b) / clen;
}
static PBool p_vert_flipped_wheel_triangle(PVert *v)
@@ -1480,10 +1481,10 @@ static PBool p_vert_map_harmonic_weights(PVert *v)
v2 = e->pair->next->next->vert;
t2 = p_vert_cotan(v2->co, e->pair->vert->co, v1->co);
- weight = 0.5f*(t1 + t2);
+ weight = 0.5f * (t1 + t2);
weightsum += weight;
- positionsum[0] += weight*e->pair->vert->uv[0];
- positionsum[1] += weight*e->pair->vert->uv[1];
+ positionsum[0] += weight * e->pair->vert->uv[0];
+ positionsum[1] += weight * e->pair->vert->uv[1];
e = p_wheel_edge_next(e);
} while (e && (e != v->edge));
@@ -1502,15 +1503,15 @@ static PBool p_vert_map_harmonic_weights(PVert *v)
t2 = p_vert_cotan(v2->co, v->co, v1->co);
weightsum += t1 + t2;
- positionsum[0] += (v2->uv[1] - v1->uv[1]) + (t1*v2->uv[0] + t2*v1->uv[0]);
- positionsum[1] += (v1->uv[0] - v2->uv[0]) + (t1*v2->uv[1] + t2*v1->uv[1]);
+ positionsum[0] += (v2->uv[1] - v1->uv[1]) + (t1 * v2->uv[0] + t2 * v1->uv[0]);
+ positionsum[1] += (v1->uv[0] - v2->uv[0]) + (t1 * v2->uv[1] + t2 * v1->uv[1]);
e = p_wheel_edge_next(e);
} while (e && (e != v->edge));
}
if (weightsum != 0.0f) {
- weightsum = 1.0f/weightsum;
+ weightsum = 1.0f / weightsum;
positionsum[0] *= weightsum;
positionsum[1] *= weightsum;
}
@@ -1551,7 +1552,7 @@ static void p_vert_harmonic_insert(PVert *v)
if (e == NULL)
npoints++;
- points = MEM_mallocN(sizeof(float)*2*npoints, "PHarmonicPoints");
+ points = MEM_mallocN(sizeof(float) * 2 * npoints, "PHarmonicPoints");
e = v->edge;
i = 0;
@@ -1789,7 +1790,7 @@ static PBool p_collapse_allowed_geometric(PEdge *edge, PEdge *pair)
p_collapsing_verts(edge, pair, &oldv, &keepv);
- angulardefect = 2*M_PI;
+ angulardefect = 2 * M_PI;
e = oldv->edge;
do {
@@ -1819,7 +1820,7 @@ static PBool p_collapse_allowed_geometric(PEdge *edge, PEdge *pair)
b[2] = M_PI - b[0] - b[1];
/* abf criterion 1: avoid sharp and obtuse angles */
- minangle = 15.0f*M_PI/180.0f;
+ minangle = 15.0f * M_PI / 180.0f;
maxangle = M_PI - minangle;
for (i = 0; i < 3; i++) {
@@ -1834,7 +1835,7 @@ static PBool p_collapse_allowed_geometric(PEdge *edge, PEdge *pair)
if (p_vert_interior(oldv)) {
/* hlscm criterion: angular defect smaller than threshold */
- if (fabs(angulardefect) > (M_PI*30.0/180.0))
+ if (fabs(angulardefect) > (M_PI * 30.0 / 180.0))
return P_FALSE;
}
else {
@@ -1847,7 +1848,7 @@ static PBool p_collapse_allowed_geometric(PEdge *edge, PEdge *pair)
/* don't collapse significant boundary changes */
angle = p_vec_angle(v1->co, oldv->co, v2->co);
- if (angle < (M_PI*160.0/180.0))
+ if (angle < (M_PI * 160.0 / 180.0))
return P_FALSE;
}
@@ -1864,7 +1865,7 @@ static PBool p_collapse_allowed(PEdge *edge, PEdge *pair)
return P_FALSE;
return (p_collapse_allowed_topologic(edge, pair) &&
- p_collapse_allowed_geometric(edge, pair));
+ p_collapse_allowed_geometric(edge, pair));
}
static float p_collapse_cost(PEdge *edge, PEdge *pair)
@@ -1881,8 +1882,8 @@ static float p_collapse_cost(PEdge *edge, PEdge *pair)
int nshapeold = 0, nshapenew = 0;
p_collapsing_verts(edge, pair, &oldv, &keepv);
- oldf1 = (edge)? edge->face: NULL;
- oldf2 = (pair)? pair->face: NULL;
+ oldf1 = (edge) ? edge->face : NULL;
+ oldf2 = (pair) ? pair->face : NULL;
sub_v3_v3v3(edgevec, keepv->co, oldv->co);
@@ -1900,7 +1901,7 @@ static float p_collapse_cost(PEdge *edge, PEdge *pair)
sub_v3_v3v3(tetrav3, co2, oldv->co);
cross_v3_v3v3(c, tetrav2, tetrav3);
- volumecost += fabs(dot_v3v3(edgevec, c)/6.0f);
+ volumecost += fabs(dot_v3v3(edgevec, c) / 6.0f);
#if 0
shapecost += dot_v3v3(co1, keepv->co);
@@ -1909,19 +1910,19 @@ static float p_collapse_cost(PEdge *edge, PEdge *pair)
#endif
p_triangle_angles(oldv->co, co1, co2, &a1, &a2, &a3);
- a1 = a1 - M_PI/3.0;
- a2 = a2 - M_PI/3.0;
- a3 = a3 - M_PI/3.0;
- shapeold = (a1*a1 + a2*a2 + a3*a3)/((M_PI/2)*(M_PI/2));
+ a1 = a1 - M_PI / 3.0;
+ a2 = a2 - M_PI / 3.0;
+ a3 = a3 - M_PI / 3.0;
+ shapeold = (a1 * a1 + a2 * a2 + a3 * a3) / ((M_PI / 2) * (M_PI / 2));
nshapeold++;
}
else {
p_triangle_angles(keepv->co, co1, co2, &a1, &a2, &a3);
- a1 = a1 - M_PI/3.0;
- a2 = a2 - M_PI/3.0;
- a3 = a3 - M_PI/3.0;
- shapenew = (a1*a1 + a2*a2 + a3*a3)/((M_PI/2)*(M_PI/2));
+ a1 = a1 - M_PI / 3.0;
+ a2 = a2 - M_PI / 3.0;
+ a3 = a3 - M_PI / 3.0;
+ shapenew = (a1 * a1 + a2 * a2 + a3 * a3) / ((M_PI / 2) * (M_PI / 2));
nshapenew++;
}
@@ -1938,13 +1939,13 @@ static float p_collapse_cost(PEdge *edge, PEdge *pair)
elen = len_v3(edgevec);
weight = 1.0f; /* 0.2f */
- cost = weight*volumecost*volumecost + elen*elen*areacost*areacost;
+ cost = weight * volumecost * volumecost + elen * elen * areacost * areacost;
#if 0
cost += shapecost;
#else
shapeold /= nshapeold;
shapenew /= nshapenew;
- shapecost = (shapeold + 0.00001)/(shapenew + 0.00001);
+ shapecost = (shapeold + 0.00001) / (shapenew + 0.00001);
cost *= shapecost;
#endif
@@ -2005,7 +2006,7 @@ static void p_chart_post_collapse_flush(PChart *chart, PEdge *collapsed)
chart->nverts = chart->nedges = chart->nfaces = 0;
- for (v=verts; v; v=nextv) {
+ for (v = verts; v; v = nextv) {
nextv = v->nextlink;
if (v->flag & PVERT_COLLAPSE) {
@@ -2019,7 +2020,7 @@ static void p_chart_post_collapse_flush(PChart *chart, PEdge *collapsed)
}
}
- for (e=edges; e; e=nexte) {
+ for (e = edges; e; e = nexte) {
nexte = e->nextlink;
if (!collapsed || !(e->flag & PEDGE_COLLAPSE_EDGE)) {
@@ -2037,7 +2038,7 @@ static void p_chart_post_collapse_flush(PChart *chart, PEdge *collapsed)
/* these are added last so they can be popped of in the right order
* for splitting */
- for (e=collapsed; e; e=e->nextlink) {
+ for (e = collapsed; e; e = e->nextlink) {
e->nextlink = e->u.nextcollapse;
laste = e;
}
@@ -2046,7 +2047,7 @@ static void p_chart_post_collapse_flush(PChart *chart, PEdge *collapsed)
chart->collapsed_edges = collapsed;
}
- for (f=faces; f; f=nextf) {
+ for (f = faces; f; f = nextf) {
nextf = f->nextlink;
if (f->flag & PFACE_COLLAPSE) {
@@ -2069,21 +2070,21 @@ static void p_chart_post_split_flush(PChart *chart)
PEdge *e, *nexte = NULL;
PFace *f, *nextf = NULL;
- for (v=chart->collapsed_verts; v; v=nextv) {
+ for (v = chart->collapsed_verts; v; v = nextv) {
nextv = v->nextlink;
v->nextlink = chart->verts;
chart->verts = v;
chart->nverts++;
}
- for (e=chart->collapsed_edges; e; e=nexte) {
+ for (e = chart->collapsed_edges; e; e = nexte) {
nexte = e->nextlink;
e->nextlink = chart->edges;
chart->edges = e;
chart->nedges++;
}
- for (f=chart->collapsed_faces; f; f=nextf) {
+ for (f = chart->collapsed_faces; f; f = nextf) {
nextf = f->nextlink;
f->nextlink = chart->faces;
chart->faces = f;
@@ -2107,10 +2108,10 @@ static void p_chart_simplify_compute(PChart *chart)
PEdge *collapsededges = NULL, *e;
int nwheelverts, i, ncollapsed = 0;
- wheelverts = MEM_mallocN(sizeof(PVert*)*chart->nverts, "PChartWheelVerts");
+ wheelverts = MEM_mallocN(sizeof(PVert *) * chart->nverts, "PChartWheelVerts");
/* insert all potential collapses into heap */
- for (v=chart->verts; v; v=v->nextlink) {
+ for (v = chart->verts; v; v = v->nextlink) {
float cost;
PEdge *e = NULL;
@@ -2122,7 +2123,7 @@ static void p_chart_simplify_compute(PChart *chart)
v->u.heaplink = NULL;
}
- for (e=chart->edges; e; e=e->nextlink)
+ for (e = chart->edges; e; e = e->nextlink)
e->u.nextcollapse = NULL;
/* pop edge collapse out of heap one by one */
@@ -2131,7 +2132,7 @@ static void p_chart_simplify_compute(PChart *chart)
break;
HeapNode *link = BLI_heap_top(heap);
- PEdge *edge = (PEdge*)BLI_heap_popmin(heap), *pair = edge->pair;
+ PEdge *edge = (PEdge *)BLI_heap_popmin(heap), *pair = edge->pair;
PVert *oldv, *keepv;
PEdge *wheele, *nexte;
@@ -2140,9 +2141,9 @@ static void p_chart_simplify_compute(PChart *chart)
collapsededges = edge;
if (edge->vert->u.heaplink != link) {
- edge->flag |= (PEDGE_COLLAPSE_EDGE|PEDGE_COLLAPSE_PAIR);
+ edge->flag |= (PEDGE_COLLAPSE_EDGE | PEDGE_COLLAPSE_PAIR);
edge->next->vert->u.heaplink = NULL;
- SWAP(PEdge*, edge, pair);
+ SWAP(PEdge *, edge, pair);
}
else {
edge->flag |= PEDGE_COLLAPSE_EDGE;
@@ -2200,7 +2201,7 @@ static void p_chart_complexify(PChart *chart)
PVert *newv, *keepv;
int x = 0;
- for (e=chart->collapsed_edges; e; e=e->nextlink) {
+ for (e = chart->collapsed_edges; e; e = e->nextlink) {
if (!(e->flag & PEDGE_COLLAPSE_EDGE))
break;
@@ -2208,7 +2209,7 @@ static void p_chart_complexify(PChart *chart)
pair = e->pair;
if (edge->flag & PEDGE_COLLAPSE_PAIR) {
- SWAP(PEdge*, edge, pair);
+ SWAP(PEdge *, edge, pair);
}
p_split_vertex(edge, pair);
@@ -2252,28 +2253,28 @@ static void p_abf_setup_system(PAbfSystem *sys)
{
int i;
- sys->alpha = (float*)MEM_mallocN(sizeof(float)*sys->nangles, "ABFalpha");
- sys->beta = (float*)MEM_mallocN(sizeof(float)*sys->nangles, "ABFbeta");
- sys->sine = (float*)MEM_mallocN(sizeof(float)*sys->nangles, "ABFsine");
- sys->cosine = (float*)MEM_mallocN(sizeof(float)*sys->nangles, "ABFcosine");
- sys->weight = (float*)MEM_mallocN(sizeof(float)*sys->nangles, "ABFweight");
+ sys->alpha = (float *)MEM_mallocN(sizeof(float) * sys->nangles, "ABFalpha");
+ sys->beta = (float *)MEM_mallocN(sizeof(float) * sys->nangles, "ABFbeta");
+ sys->sine = (float *)MEM_mallocN(sizeof(float) * sys->nangles, "ABFsine");
+ sys->cosine = (float *)MEM_mallocN(sizeof(float) * sys->nangles, "ABFcosine");
+ sys->weight = (float *)MEM_mallocN(sizeof(float) * sys->nangles, "ABFweight");
- sys->bAlpha = (float*)MEM_mallocN(sizeof(float)*sys->nangles, "ABFbalpha");
- sys->bTriangle = (float*)MEM_mallocN(sizeof(float)*sys->nfaces, "ABFbtriangle");
- sys->bInterior = (float*)MEM_mallocN(sizeof(float)*2*sys->ninterior, "ABFbinterior");
+ sys->bAlpha = (float *)MEM_mallocN(sizeof(float) * sys->nangles, "ABFbalpha");
+ sys->bTriangle = (float *)MEM_mallocN(sizeof(float) * sys->nfaces, "ABFbtriangle");
+ sys->bInterior = (float *)MEM_mallocN(sizeof(float) * 2 * sys->ninterior, "ABFbinterior");
- sys->lambdaTriangle = (float*)MEM_callocN(sizeof(float)*sys->nfaces, "ABFlambdatri");
- sys->lambdaPlanar = (float*)MEM_callocN(sizeof(float)*sys->ninterior, "ABFlamdaplane");
- sys->lambdaLength = (float*)MEM_mallocN(sizeof(float)*sys->ninterior, "ABFlambdalen");
+ sys->lambdaTriangle = (float *)MEM_callocN(sizeof(float) * sys->nfaces, "ABFlambdatri");
+ sys->lambdaPlanar = (float *)MEM_callocN(sizeof(float) * sys->ninterior, "ABFlamdaplane");
+ sys->lambdaLength = (float *)MEM_mallocN(sizeof(float) * sys->ninterior, "ABFlambdalen");
- sys->J2dt = MEM_mallocN(sizeof(float)*sys->nangles*3, "ABFj2dt");
- sys->bstar = (float*)MEM_mallocN(sizeof(float)*sys->nfaces, "ABFbstar");
- sys->dstar = (float*)MEM_mallocN(sizeof(float)*sys->nfaces, "ABFdstar");
+ sys->J2dt = MEM_mallocN(sizeof(float) * sys->nangles * 3, "ABFj2dt");
+ sys->bstar = (float *)MEM_mallocN(sizeof(float) * sys->nfaces, "ABFbstar");
+ sys->dstar = (float *)MEM_mallocN(sizeof(float) * sys->nfaces, "ABFdstar");
for (i = 0; i < sys->ninterior; i++)
sys->lambdaLength[i] = 1.0;
- sys->minangle = 7.5*M_PI/180.0;
+ sys->minangle = 7.5 * M_PI / 180.0;
sys->maxangle = (float)M_PI - sys->minangle;
}
@@ -2346,7 +2347,7 @@ static float p_abf_compute_grad_alpha(PAbfSystem *sys, PFace *f, PEdge *e)
PVert *v = e->vert, *v1 = e->next->vert, *v2 = e->next->next->vert;
float deriv;
- deriv = (sys->alpha[e->u.id] - sys->beta[e->u.id])*sys->weight[e->u.id];
+ deriv = (sys->alpha[e->u.id] - sys->beta[e->u.id]) * sys->weight[e->u.id];
deriv += sys->lambdaTriangle[f->u.id];
if (v->flag & PVERT_INTERIOR) {
@@ -2355,12 +2356,12 @@ static float p_abf_compute_grad_alpha(PAbfSystem *sys, PFace *f, PEdge *e)
if (v1->flag & PVERT_INTERIOR) {
float product = p_abf_compute_sin_product(sys, v1, e->u.id);
- deriv += sys->lambdaLength[v1->u.id]*product;
+ deriv += sys->lambdaLength[v1->u.id] * product;
}
if (v2->flag & PVERT_INTERIOR) {
float product = p_abf_compute_sin_product(sys, v2, e->u.id);
- deriv += sys->lambdaLength[v2->u.id]*product;
+ deriv += sys->lambdaLength[v2->u.id] * product;
}
return deriv;
@@ -2373,7 +2374,7 @@ static float p_abf_compute_gradient(PAbfSystem *sys, PChart *chart)
PVert *v;
float norm = 0.0;
- for (f=chart->faces; f; f=f->nextlink) {
+ for (f = chart->faces; f; f = f->nextlink) {
PEdge *e1 = f->edge, *e2 = e1->next, *e3 = e2->next;
float gtriangle, galpha1, galpha2, galpha3;
@@ -2385,16 +2386,16 @@ static float p_abf_compute_gradient(PAbfSystem *sys, PChart *chart)
sys->bAlpha[e2->u.id] = -galpha2;
sys->bAlpha[e3->u.id] = -galpha3;
- norm += galpha1*galpha1 + galpha2*galpha2 + galpha3*galpha3;
+ norm += galpha1 * galpha1 + galpha2 * galpha2 + galpha3 * galpha3;
gtriangle = sys->alpha[e1->u.id] + sys->alpha[e2->u.id] + sys->alpha[e3->u.id] - (float)M_PI;
sys->bTriangle[f->u.id] = -gtriangle;
- norm += gtriangle*gtriangle;
+ norm += gtriangle * gtriangle;
}
- for (v=chart->verts; v; v=v->nextlink) {
+ for (v = chart->verts; v; v = v->nextlink) {
if (v->flag & PVERT_INTERIOR) {
- float gplanar = -2*M_PI, glength;
+ float gplanar = -2 * M_PI, glength;
e = v->edge;
do {
@@ -2403,11 +2404,11 @@ static float p_abf_compute_gradient(PAbfSystem *sys, PChart *chart)
} while (e && (e != v->edge));
sys->bInterior[v->u.id] = -gplanar;
- norm += gplanar*gplanar;
+ norm += gplanar * gplanar;
glength = p_abf_compute_sin_product(sys, v, -1);
sys->bInterior[sys->ninterior + v->u.id] = -glength;
- norm += glength*glength;
+ norm += glength * glength;
}
}
@@ -2418,7 +2419,7 @@ static PBool p_abf_matrix_invert(PAbfSystem *sys, PChart *chart)
{
PFace *f;
PEdge *e;
- int i, j, ninterior = sys->ninterior, nvar = 2*sys->ninterior;
+ int i, j, ninterior = sys->ninterior, nvar = 2 * sys->ninterior;
PBool success;
nlNewContext();
@@ -2431,30 +2432,30 @@ static PBool p_abf_matrix_invert(PAbfSystem *sys, PChart *chart)
for (i = 0; i < nvar; i++)
nlRightHandSideAdd(0, i, sys->bInterior[i]);
- for (f=chart->faces; f; f=f->nextlink) {
+ for (f = chart->faces; f; f = f->nextlink) {
float wi1, wi2, wi3, b, si, beta[3], j2[3][3], W[3][3];
float row1[6], row2[6], row3[6];
int vid[6];
PEdge *e1 = f->edge, *e2 = e1->next, *e3 = e2->next;
PVert *v1 = e1->vert, *v2 = e2->vert, *v3 = e3->vert;
- wi1 = 1.0f/sys->weight[e1->u.id];
- wi2 = 1.0f/sys->weight[e2->u.id];
- wi3 = 1.0f/sys->weight[e3->u.id];
+ wi1 = 1.0f / sys->weight[e1->u.id];
+ wi2 = 1.0f / sys->weight[e2->u.id];
+ wi3 = 1.0f / sys->weight[e3->u.id];
/* bstar1 = (J1*dInv*bAlpha - bTriangle) */
- b = sys->bAlpha[e1->u.id]*wi1;
- b += sys->bAlpha[e2->u.id]*wi2;
- b += sys->bAlpha[e3->u.id]*wi3;
+ b = sys->bAlpha[e1->u.id] * wi1;
+ b += sys->bAlpha[e2->u.id] * wi2;
+ b += sys->bAlpha[e3->u.id] * wi3;
b -= sys->bTriangle[f->u.id];
/* si = J1*d*J1t */
- si = 1.0f/(wi1 + wi2 + wi3);
+ si = 1.0f / (wi1 + wi2 + wi3);
/* J1t*si*bstar1 - bAlpha */
- beta[0] = b*si - sys->bAlpha[e1->u.id];
- beta[1] = b*si - sys->bAlpha[e2->u.id];
- beta[2] = b*si - sys->bAlpha[e3->u.id];
+ beta[0] = b * si - sys->bAlpha[e1->u.id];
+ beta[1] = b * si - sys->bAlpha[e2->u.id];
+ beta[2] = b * si - sys->bAlpha[e3->u.id];
/* use this later for computing other lambda's */
sys->bstar[f->u.id] = b;
@@ -2472,59 +2473,59 @@ static PBool p_abf_matrix_invert(PAbfSystem *sys, PChart *chart)
vid[3] = ninterior + v1->u.id;
sys->J2dt[e1->u.id][0] = j2[0][0] = 1.0f * wi1;
- sys->J2dt[e2->u.id][0] = j2[1][0] = p_abf_compute_sin_product(sys, v1, e2->u.id)*wi2;
- sys->J2dt[e3->u.id][0] = j2[2][0] = p_abf_compute_sin_product(sys, v1, e3->u.id)*wi3;
+ sys->J2dt[e2->u.id][0] = j2[1][0] = p_abf_compute_sin_product(sys, v1, e2->u.id) * wi2;
+ sys->J2dt[e3->u.id][0] = j2[2][0] = p_abf_compute_sin_product(sys, v1, e3->u.id) * wi3;
- nlRightHandSideAdd(0, v1->u.id, j2[0][0]*beta[0]);
- nlRightHandSideAdd(0, ninterior + v1->u.id, j2[1][0]*beta[1] + j2[2][0]*beta[2]);
+ nlRightHandSideAdd(0, v1->u.id, j2[0][0] * beta[0]);
+ nlRightHandSideAdd(0, ninterior + v1->u.id, j2[1][0] * beta[1] + j2[2][0] * beta[2]);
- row1[0] = j2[0][0]*W[0][0];
- row2[0] = j2[0][0]*W[1][0];
- row3[0] = j2[0][0]*W[2][0];
+ row1[0] = j2[0][0] * W[0][0];
+ row2[0] = j2[0][0] * W[1][0];
+ row3[0] = j2[0][0] * W[2][0];
- row1[3] = j2[1][0]*W[0][1] + j2[2][0]*W[0][2];
- row2[3] = j2[1][0]*W[1][1] + j2[2][0]*W[1][2];
- row3[3] = j2[1][0]*W[2][1] + j2[2][0]*W[2][2];
+ row1[3] = j2[1][0] * W[0][1] + j2[2][0] * W[0][2];
+ row2[3] = j2[1][0] * W[1][1] + j2[2][0] * W[1][2];
+ row3[3] = j2[1][0] * W[2][1] + j2[2][0] * W[2][2];
}
if (v2->flag & PVERT_INTERIOR) {
vid[1] = v2->u.id;
vid[4] = ninterior + v2->u.id;
- sys->J2dt[e1->u.id][1] = j2[0][1] = p_abf_compute_sin_product(sys, v2, e1->u.id)*wi1;
- sys->J2dt[e2->u.id][1] = j2[1][1] = 1.0f*wi2;
- sys->J2dt[e3->u.id][1] = j2[2][1] = p_abf_compute_sin_product(sys, v2, e3->u.id)*wi3;
+ sys->J2dt[e1->u.id][1] = j2[0][1] = p_abf_compute_sin_product(sys, v2, e1->u.id) * wi1;
+ sys->J2dt[e2->u.id][1] = j2[1][1] = 1.0f * wi2;
+ sys->J2dt[e3->u.id][1] = j2[2][1] = p_abf_compute_sin_product(sys, v2, e3->u.id) * wi3;
- nlRightHandSideAdd(0, v2->u.id, j2[1][1]*beta[1]);
- nlRightHandSideAdd(0, ninterior + v2->u.id, j2[0][1]*beta[0] + j2[2][1]*beta[2]);
+ nlRightHandSideAdd(0, v2->u.id, j2[1][1] * beta[1]);
+ nlRightHandSideAdd(0, ninterior + v2->u.id, j2[0][1] * beta[0] + j2[2][1] * beta[2]);
- row1[1] = j2[1][1]*W[0][1];
- row2[1] = j2[1][1]*W[1][1];
- row3[1] = j2[1][1]*W[2][1];
+ row1[1] = j2[1][1] * W[0][1];
+ row2[1] = j2[1][1] * W[1][1];
+ row3[1] = j2[1][1] * W[2][1];
- row1[4] = j2[0][1]*W[0][0] + j2[2][1]*W[0][2];
- row2[4] = j2[0][1]*W[1][0] + j2[2][1]*W[1][2];
- row3[4] = j2[0][1]*W[2][0] + j2[2][1]*W[2][2];
+ row1[4] = j2[0][1] * W[0][0] + j2[2][1] * W[0][2];
+ row2[4] = j2[0][1] * W[1][0] + j2[2][1] * W[1][2];
+ row3[4] = j2[0][1] * W[2][0] + j2[2][1] * W[2][2];
}
if (v3->flag & PVERT_INTERIOR) {
vid[2] = v3->u.id;
vid[5] = ninterior + v3->u.id;
- sys->J2dt[e1->u.id][2] = j2[0][2] = p_abf_compute_sin_product(sys, v3, e1->u.id)*wi1;
- sys->J2dt[e2->u.id][2] = j2[1][2] = p_abf_compute_sin_product(sys, v3, e2->u.id)*wi2;
+ sys->J2dt[e1->u.id][2] = j2[0][2] = p_abf_compute_sin_product(sys, v3, e1->u.id) * wi1;
+ sys->J2dt[e2->u.id][2] = j2[1][2] = p_abf_compute_sin_product(sys, v3, e2->u.id) * wi2;
sys->J2dt[e3->u.id][2] = j2[2][2] = 1.0f * wi3;
- nlRightHandSideAdd(0, v3->u.id, j2[2][2]*beta[2]);
- nlRightHandSideAdd(0, ninterior + v3->u.id, j2[0][2]*beta[0] + j2[1][2]*beta[1]);
+ nlRightHandSideAdd(0, v3->u.id, j2[2][2] * beta[2]);
+ nlRightHandSideAdd(0, ninterior + v3->u.id, j2[0][2] * beta[0] + j2[1][2] * beta[1]);
- row1[2] = j2[2][2]*W[0][2];
- row2[2] = j2[2][2]*W[1][2];
- row3[2] = j2[2][2]*W[2][2];
+ row1[2] = j2[2][2] * W[0][2];
+ row2[2] = j2[2][2] * W[1][2];
+ row3[2] = j2[2][2] * W[2][2];
- row1[5] = j2[0][2]*W[0][0] + j2[1][2]*W[0][1];
- row2[5] = j2[0][2]*W[1][0] + j2[1][2]*W[1][1];
- row3[5] = j2[0][2]*W[2][0] + j2[1][2]*W[2][1];
+ row1[5] = j2[0][2] * W[0][0] + j2[1][2] * W[0][1];
+ row2[5] = j2[0][2] * W[1][0] + j2[1][2] * W[1][1];
+ row3[5] = j2[0][2] * W[2][0] + j2[1][2] * W[2][1];
}
for (i = 0; i < 3; i++) {
@@ -2540,20 +2541,20 @@ static PBool p_abf_matrix_invert(PAbfSystem *sys, PChart *chart)
continue;
if (i == 0)
- nlMatrixAdd(r, c, j2[0][i]*row1[j]);
+ nlMatrixAdd(r, c, j2[0][i] * row1[j]);
else
- nlMatrixAdd(r + ninterior, c, j2[0][i]*row1[j]);
+ nlMatrixAdd(r + ninterior, c, j2[0][i] * row1[j]);
if (i == 1)
- nlMatrixAdd(r, c, j2[1][i]*row2[j]);
+ nlMatrixAdd(r, c, j2[1][i] * row2[j]);
else
- nlMatrixAdd(r + ninterior, c, j2[1][i]*row2[j]);
+ nlMatrixAdd(r + ninterior, c, j2[1][i] * row2[j]);
if (i == 2)
- nlMatrixAdd(r, c, j2[2][i]*row3[j]);
+ nlMatrixAdd(r, c, j2[2][i] * row3[j]);
else
- nlMatrixAdd(r + ninterior, c, j2[2][i]*row3[j]);
+ nlMatrixAdd(r + ninterior, c, j2[2][i] * row3[j]);
}
}
}
@@ -2565,7 +2566,7 @@ static PBool p_abf_matrix_invert(PAbfSystem *sys, PChart *chart)
success = nlSolve();
if (success) {
- for (f=chart->faces; f; f=f->nextlink) {
+ for (f = chart->faces; f; f = f->nextlink) {
float dlambda1, pre[3], dalpha;
PEdge *e1 = f->edge, *e2 = e1->next, *e3 = e2->next;
PVert *v1 = e1->vert, *v2 = e2->vert, *v3 = e3->vert;
@@ -2575,40 +2576,40 @@ static PBool p_abf_matrix_invert(PAbfSystem *sys, PChart *chart)
if (v1->flag & PVERT_INTERIOR) {
float x = nlGetVariable(0, v1->u.id);
float x2 = nlGetVariable(0, ninterior + v1->u.id);
- pre[0] += sys->J2dt[e1->u.id][0]*x;
- pre[1] += sys->J2dt[e2->u.id][0]*x2;
- pre[2] += sys->J2dt[e3->u.id][0]*x2;
+ pre[0] += sys->J2dt[e1->u.id][0] * x;
+ pre[1] += sys->J2dt[e2->u.id][0] * x2;
+ pre[2] += sys->J2dt[e3->u.id][0] * x2;
}
if (v2->flag & PVERT_INTERIOR) {
float x = nlGetVariable(0, v2->u.id);
float x2 = nlGetVariable(0, ninterior + v2->u.id);
- pre[0] += sys->J2dt[e1->u.id][1]*x2;
- pre[1] += sys->J2dt[e2->u.id][1]*x;
- pre[2] += sys->J2dt[e3->u.id][1]*x2;
+ pre[0] += sys->J2dt[e1->u.id][1] * x2;
+ pre[1] += sys->J2dt[e2->u.id][1] * x;
+ pre[2] += sys->J2dt[e3->u.id][1] * x2;
}
if (v3->flag & PVERT_INTERIOR) {
float x = nlGetVariable(0, v3->u.id);
float x2 = nlGetVariable(0, ninterior + v3->u.id);
- pre[0] += sys->J2dt[e1->u.id][2]*x2;
- pre[1] += sys->J2dt[e2->u.id][2]*x2;
- pre[2] += sys->J2dt[e3->u.id][2]*x;
+ pre[0] += sys->J2dt[e1->u.id][2] * x2;
+ pre[1] += sys->J2dt[e2->u.id][2] * x2;
+ pre[2] += sys->J2dt[e3->u.id][2] * x;
}
dlambda1 = pre[0] + pre[1] + pre[2];
- dlambda1 = sys->dstar[f->u.id]*(sys->bstar[f->u.id] - dlambda1);
+ dlambda1 = sys->dstar[f->u.id] * (sys->bstar[f->u.id] - dlambda1);
sys->lambdaTriangle[f->u.id] += dlambda1;
dalpha = (sys->bAlpha[e1->u.id] - dlambda1);
- sys->alpha[e1->u.id] += dalpha/sys->weight[e1->u.id] - pre[0];
+ sys->alpha[e1->u.id] += dalpha / sys->weight[e1->u.id] - pre[0];
dalpha = (sys->bAlpha[e2->u.id] - dlambda1);
- sys->alpha[e2->u.id] += dalpha/sys->weight[e2->u.id] - pre[1];
+ sys->alpha[e2->u.id] += dalpha / sys->weight[e2->u.id] - pre[1];
dalpha = (sys->bAlpha[e3->u.id] - dlambda1);
- sys->alpha[e3->u.id] += dalpha/sys->weight[e3->u.id] - pre[2];
+ sys->alpha[e3->u.id] += dalpha / sys->weight[e3->u.id] - pre[2];
/* clamp */
e = f->edge;
@@ -2638,12 +2639,12 @@ static PBool p_chart_abf_solve(PChart *chart)
PEdge *e, *e1, *e2, *e3;
PAbfSystem sys;
int i;
- float /* lastnorm, */ /* UNUSED */ limit = (chart->nfaces > 100)? 1.0f: 0.001f;
+ float /* lastnorm, */ /* UNUSED */ limit = (chart->nfaces > 100) ? 1.0f : 0.001f;
/* setup id's */
sys.ninterior = sys.nfaces = sys.nangles = 0;
- for (v=chart->verts; v; v=v->nextlink) {
+ for (v = chart->verts; v; v = v->nextlink) {
if (p_vert_interior(v)) {
v->flag |= PVERT_INTERIOR;
v->u.id = sys.ninterior++;
@@ -2652,7 +2653,7 @@ static PBool p_chart_abf_solve(PChart *chart)
v->flag &= ~PVERT_INTERIOR;
}
- for (f=chart->faces; f; f=f->nextlink) {
+ for (f = chart->faces; f; f = f->nextlink) {
e1 = f->edge; e2 = e1->next; e3 = e2->next;
f->u.id = sys.nfaces++;
@@ -2665,7 +2666,7 @@ static PBool p_chart_abf_solve(PChart *chart)
p_abf_setup_system(&sys);
/* compute initial angles */
- for (f=chart->faces; f; f=f->nextlink) {
+ for (f = chart->faces; f; f = f->nextlink) {
float a1, a2, a3;
e1 = f->edge; e2 = e1->next; e3 = e2->next;
@@ -2688,12 +2689,12 @@ static PBool p_chart_abf_solve(PChart *chart)
sys.alpha[e2->u.id] = sys.beta[e2->u.id] = a2;
sys.alpha[e3->u.id] = sys.beta[e3->u.id] = a3;
- sys.weight[e1->u.id] = 2.0f/(a1*a1);
- sys.weight[e2->u.id] = 2.0f/(a2*a2);
- sys.weight[e3->u.id] = 2.0f/(a3*a3);
+ sys.weight[e1->u.id] = 2.0f / (a1 * a1);
+ sys.weight[e2->u.id] = 2.0f / (a2 * a2);
+ sys.weight[e3->u.id] = 2.0f / (a3 * a3);
}
- for (v=chart->verts; v; v=v->nextlink) {
+ for (v = chart->verts; v; v = v->nextlink) {
if (v->flag & PVERT_INTERIOR) {
float anglesum = 0.0, scale;
@@ -2703,11 +2704,11 @@ static PBool p_chart_abf_solve(PChart *chart)
e = e->next->next->pair;
} while (e && (e != v->edge));
- scale = (anglesum == 0.0f)? 0.0f: 2.0f*(float)M_PI/anglesum;
+ scale = (anglesum == 0.0f) ? 0.0f : 2.0f * (float)M_PI / anglesum;
e = v->edge;
do {
- sys.beta[e->u.id] = sys.alpha[e->u.id] = sys.beta[e->u.id]*scale;
+ sys.beta[e->u.id] = sys.alpha[e->u.id] = sys.beta[e->u.id] * scale;
e = e->next->next->pair;
} while (e && (e != v->edge));
}
@@ -2775,15 +2776,15 @@ static void p_chart_pin_positions(PChart *chart, PVert **pin1, PVert **pin2)
if ((sub[0] > sub[1]) && (sub[0] > sub[2])) {
dirx = 0;
- diry = (sub[1] > sub[2])? 1: 2;
+ diry = (sub[1] > sub[2]) ? 1 : 2;
}
else if ((sub[1] > sub[0]) && (sub[1] > sub[2])) {
dirx = 1;
- diry = (sub[0] > sub[2])? 0: 2;
+ diry = (sub[0] > sub[2]) ? 0 : 2;
}
else {
dirx = 2;
- diry = (sub[0] > sub[1])? 0: 1;
+ diry = (sub[0] > sub[1]) ? 0 : 1;
}
if (dirx == 2) {
@@ -2809,8 +2810,8 @@ static PBool p_chart_symmetry_pins(PChart *chart, PEdge *outer, PVert **pin1, PV
float maxlen = 0.0f, curlen = 0.0f, totlen = 0.0f, firstlen = 0.0f;
float len1, len2;
- /* find longest series of verts split in the chart itself, these are
- * marked during construction */
+ /* find longest series of verts split in the chart itself, these are
+ * marked during construction */
be = outer;
lastbe = p_boundary_edge_prev(be);
do {
@@ -2820,7 +2821,8 @@ static PBool p_chart_symmetry_pins(PChart *chart, PEdge *outer, PVert **pin1, PV
nextbe = p_boundary_edge_next(be);
if ((be->vert->flag & PVERT_SPLIT) ||
- (lastbe->vert->flag & nextbe->vert->flag & PVERT_SPLIT)) {
+ (lastbe->vert->flag & nextbe->vert->flag & PVERT_SPLIT))
+ {
if (!cure) {
if (be == outer)
firste1 = be;
@@ -2860,7 +2862,7 @@ static PBool p_chart_symmetry_pins(PChart *chart, PEdge *outer, PVert **pin1, PV
}
}
- if (!maxe1 || !maxe2 || (maxlen < 0.5f*totlen))
+ if (!maxe1 || !maxe2 || (maxlen < 0.5f * totlen))
return P_FALSE;
/* find pin1 in the split vertices */
@@ -2919,7 +2921,7 @@ static void p_chart_extrema_verts(PChart *chart, PVert **pin1, PVert **pin2)
minvert[0] = minvert[1] = minvert[2] = NULL;
maxvert[0] = maxvert[1] = maxvert[2] = NULL;
- for (v = chart->verts; v; v=v->nextlink) {
+ for (v = chart->verts; v; v = v->nextlink) {
for (i = 0; i < 3; i++) {
if (v->co[i] < minv[i]) {
minv[i] = v->co[i];
@@ -2953,9 +2955,9 @@ static void p_chart_lscm_load_solution(PChart *chart)
{
PVert *v;
- for (v=chart->verts; v; v=v->nextlink) {
- v->uv[0] = nlGetVariable(0, 2*v->u.id);
- v->uv[1] = nlGetVariable(0, 2*v->u.id + 1);
+ for (v = chart->verts; v; v = v->nextlink) {
+ v->uv[0] = nlGetVariable(0, 2 * v->u.id);
+ v->uv[1] = nlGetVariable(0, 2 * v->u.id + 1);
}
}
@@ -2966,7 +2968,7 @@ static void p_chart_lscm_begin(PChart *chart, PBool live, PBool abf)
int npins = 0, id = 0;
/* give vertices matrix indices and count pins */
- for (v=chart->verts; v; v=v->nextlink) {
+ for (v = chart->verts; v; v = v->nextlink) {
if (v->flag & PVERT_PIN) {
npins++;
if (v->flag & PVERT_SELECT)
@@ -3007,12 +3009,12 @@ static void p_chart_lscm_begin(PChart *chart, PBool live, PBool abf)
chart->flag |= PCHART_NOPACK;
}
- for (v=chart->verts; v; v=v->nextlink)
+ for (v = chart->verts; v; v = v->nextlink)
v->u.id = id++;
nlNewContext();
- nlSolverParameteri(NL_NB_VARIABLES, 2*chart->nverts);
- nlSolverParameteri(NL_NB_ROWS, 2*chart->nfaces);
+ nlSolverParameteri(NL_NB_VARIABLES, 2 * chart->nverts);
+ nlSolverParameteri(NL_NB_ROWS, 2 * chart->nfaces);
nlSolverParameteri(NL_LEAST_SQUARES, NL_TRUE);
chart->u.lscm.context = nlGetCurrent();
@@ -3034,30 +3036,30 @@ static PBool p_chart_lscm_solve(PHandle *handle, PChart *chart)
/* TODO: make loading pins work for simplify/complexify. */
#endif
- for (v=chart->verts; v; v=v->nextlink)
+ for (v = chart->verts; v; v = v->nextlink)
if (v->flag & PVERT_PIN)
- p_vert_load_pin_select_uvs(handle, v); /* reload for live */
+ p_vert_load_pin_select_uvs(handle, v); /* reload for live */
if (chart->u.lscm.pin1) {
- nlLockVariable(2*pin1->u.id);
- nlLockVariable(2*pin1->u.id + 1);
- nlLockVariable(2*pin2->u.id);
- nlLockVariable(2*pin2->u.id + 1);
-
- nlSetVariable(0, 2*pin1->u.id, pin1->uv[0]);
- nlSetVariable(0, 2*pin1->u.id + 1, pin1->uv[1]);
- nlSetVariable(0, 2*pin2->u.id, pin2->uv[0]);
- nlSetVariable(0, 2*pin2->u.id + 1, pin2->uv[1]);
+ nlLockVariable(2 * pin1->u.id);
+ nlLockVariable(2 * pin1->u.id + 1);
+ nlLockVariable(2 * pin2->u.id);
+ nlLockVariable(2 * pin2->u.id + 1);
+
+ nlSetVariable(0, 2 * pin1->u.id, pin1->uv[0]);
+ nlSetVariable(0, 2 * pin1->u.id + 1, pin1->uv[1]);
+ nlSetVariable(0, 2 * pin2->u.id, pin2->uv[0]);
+ nlSetVariable(0, 2 * pin2->u.id + 1, pin2->uv[1]);
}
else {
/* set and lock the pins */
- for (v=chart->verts; v; v=v->nextlink) {
+ for (v = chart->verts; v; v = v->nextlink) {
if (v->flag & PVERT_PIN) {
- nlLockVariable(2*v->u.id);
- nlLockVariable(2*v->u.id + 1);
+ nlLockVariable(2 * v->u.id);
+ nlLockVariable(2 * v->u.id + 1);
- nlSetVariable(0, 2*v->u.id, v->uv[0]);
- nlSetVariable(0, 2*v->u.id + 1, v->uv[1]);
+ nlSetVariable(0, 2 * v->u.id, v->uv[0]);
+ nlSetVariable(0, 2 * v->u.id + 1, v->uv[1]);
}
}
}
@@ -3067,7 +3069,7 @@ static PBool p_chart_lscm_solve(PHandle *handle, PChart *chart)
nlBegin(NL_MATRIX);
row = 0;
- for (f=chart->faces; f; f=f->nextlink) {
+ for (f = chart->faces; f; f = f->nextlink) {
PEdge *e1 = f->edge, *e2 = e1->next, *e3 = e2->next;
PVert *v1 = e1->vert, *v2 = e2->vert, *v3 = e3->vert;
float a1, a2, a3, ratio, cosine, sine;
@@ -3090,51 +3092,51 @@ static PBool p_chart_lscm_solve(PHandle *handle, PChart *chart)
/* shift vertices to find most stable order */
if (sina3 != sinmax) {
- SHIFT3(PVert*, v1, v2, v3);
+ SHIFT3(PVert *, v1, v2, v3);
SHIFT3(float, a1, a2, a3);
SHIFT3(float, sina1, sina2, sina3);
if (sina2 == sinmax) {
- SHIFT3(PVert*, v1, v2, v3);
+ SHIFT3(PVert *, v1, v2, v3);
SHIFT3(float, a1, a2, a3);
SHIFT3(float, sina1, sina2, sina3);
}
}
/* angle based lscm formulation */
- ratio = (sina3 == 0.0f)? 1.0f: sina2/sina3;
- cosine = cosf(a1)*ratio;
- sine = sina1*ratio;
+ ratio = (sina3 == 0.0f) ? 1.0f : sina2 / sina3;
+ cosine = cosf(a1) * ratio;
+ sine = sina1 * ratio;
#if 0
nlBegin(NL_ROW);
- nlCoefficient(2*v1->u.id, cosine - 1.0);
- nlCoefficient(2*v1->u.id+1, -sine);
- nlCoefficient(2*v2->u.id, -cosine);
- nlCoefficient(2*v2->u.id+1, sine);
- nlCoefficient(2*v3->u.id, 1.0);
+ nlCoefficient(2 * v1->u.id, cosine - 1.0);
+ nlCoefficient(2 * v1->u.id + 1, -sine);
+ nlCoefficient(2 * v2->u.id, -cosine);
+ nlCoefficient(2 * v2->u.id + 1, sine);
+ nlCoefficient(2 * v3->u.id, 1.0);
nlEnd(NL_ROW);
nlBegin(NL_ROW);
- nlCoefficient(2*v1->u.id, sine);
- nlCoefficient(2*v1->u.id+1, cosine - 1.0);
- nlCoefficient(2*v2->u.id, -sine);
- nlCoefficient(2*v2->u.id+1, -cosine);
- nlCoefficient(2*v3->u.id+1, 1.0);
+ nlCoefficient(2 * v1->u.id, sine);
+ nlCoefficient(2 * v1->u.id + 1, cosine - 1.0);
+ nlCoefficient(2 * v2->u.id, -sine);
+ nlCoefficient(2 * v2->u.id + 1, -cosine);
+ nlCoefficient(2 * v3->u.id + 1, 1.0);
nlEnd(NL_ROW);
#else
- nlMatrixAdd(row, 2*v1->u.id, cosine - 1.0f);
- nlMatrixAdd(row, 2*v1->u.id+1, -sine);
- nlMatrixAdd(row, 2*v2->u.id, -cosine);
- nlMatrixAdd(row, 2*v2->u.id+1, sine);
- nlMatrixAdd(row, 2*v3->u.id, 1.0);
+ nlMatrixAdd(row, 2 * v1->u.id, cosine - 1.0f);
+ nlMatrixAdd(row, 2 * v1->u.id + 1, -sine);
+ nlMatrixAdd(row, 2 * v2->u.id, -cosine);
+ nlMatrixAdd(row, 2 * v2->u.id + 1, sine);
+ nlMatrixAdd(row, 2 * v3->u.id, 1.0);
row++;
- nlMatrixAdd(row, 2*v1->u.id, sine);
- nlMatrixAdd(row, 2*v1->u.id+1, cosine - 1.0f);
- nlMatrixAdd(row, 2*v2->u.id, -sine);
- nlMatrixAdd(row, 2*v2->u.id+1, -cosine);
- nlMatrixAdd(row, 2*v3->u.id+1, 1.0);
+ nlMatrixAdd(row, 2 * v1->u.id, sine);
+ nlMatrixAdd(row, 2 * v1->u.id + 1, cosine - 1.0f);
+ nlMatrixAdd(row, 2 * v2->u.id, -sine);
+ nlMatrixAdd(row, 2 * v2->u.id + 1, -cosine);
+ nlMatrixAdd(row, 2 * v3->u.id + 1, 1.0);
row++;
#endif
}
@@ -3148,7 +3150,7 @@ static PBool p_chart_lscm_solve(PHandle *handle, PChart *chart)
return P_TRUE;
}
else {
- for (v=chart->verts; v; v=v->nextlink) {
+ for (v = chart->verts; v; v = v->nextlink) {
v->uv[0] = 0.0f;
v->uv[1] = 0.0f;
}
@@ -3180,7 +3182,7 @@ static void p_stretch_pin_boundary(PChart *chart)
{
PVert *v;
- for (v=chart->verts; v; v=v->nextlink)
+ for (v = chart->verts; v; v = v->nextlink)
if (v->edge->pair == NULL)
v->flag |= PVERT_PIN;
else
@@ -3200,7 +3202,7 @@ static float p_face_stretch(PFace *f)
if (area <= 0.0f) /* flipped face -> infinite stretch */
return 1e10f;
- w= 1.0f/(2.0f*area);
+ w = 1.0f / (2.0f * area);
/* compute derivatives */
copy_v3_v3(Ps, v1->co);
@@ -3230,10 +3232,10 @@ static float p_face_stretch(PFace *f)
mul_v3_fl(Pt, w);
/* Sander Tensor */
- a= dot_v3v3(Ps, Ps);
- c= dot_v3v3(Pt, Pt);
+ a = dot_v3v3(Ps, Ps);
+ c = dot_v3v3(Pt, Pt);
- T = sqrt(0.5f*(a + c));
+ T = sqrt(0.5f * (a + c));
if (f->flag & PFACE_FILLED)
T *= 0.2f;
@@ -3261,7 +3263,7 @@ static void p_chart_stretch_minimize(PChart *chart, RNG *rng)
float orig_stretch, low, stretch_low, high, stretch_high, mid, stretch;
float orig_uv[2], dir[2], random_angle, trusted_radius;
- for (v=chart->verts; v; v=v->nextlink) {
+ for (v = chart->verts; v; v = v->nextlink) {
if ((v->flag & PVERT_PIN) || !(v->flag & PVERT_SELECT))
continue;
@@ -3298,8 +3300,8 @@ static void p_chart_stretch_minimize(PChart *chart, RNG *rng)
/* binary search for lowest stretch position */
for (j = 0; j < P_STRETCH_ITER; j++) {
mid = 0.5f * (low + high);
- v->uv[0]= orig_uv[0] + mid*dir[0];
- v->uv[1]= orig_uv[1] + mid*dir[1];
+ v->uv[0] = orig_uv[0] + mid * dir[0];
+ v->uv[1] = orig_uv[1] + mid * dir[1];
stretch = p_stretch_compute_vertex(v);
if (stretch_low < stretch_high) {
@@ -3322,8 +3324,8 @@ static void p_chart_stretch_minimize(PChart *chart, RNG *rng)
static int p_compare_geometric_uv(const void *a, const void *b)
{
- PVert *v1 = *(PVert**)a;
- PVert *v2 = *(PVert**)b;
+ PVert *v1 = *(PVert **)a;
+ PVert *v2 = *(PVert **)b;
if (v1->uv[0] < v2->uv[0])
return -1;
@@ -3359,9 +3361,9 @@ static PBool p_chart_convex_hull(PChart *chart, PVert ***verts, int *nverts, int
e = p_boundary_edge_next(e);
} while (e != be);
- p = points = (PVert**)MEM_mallocN(sizeof(PVert*)*npoints*2, "PCHullpoints");
- U = (PVert**)MEM_mallocN(sizeof(PVert*)*npoints, "PCHullU");
- L = (PVert**)MEM_mallocN(sizeof(PVert*)*npoints, "PCHullL");
+ p = points = (PVert **)MEM_mallocN(sizeof(PVert *) * npoints * 2, "PCHullpoints");
+ U = (PVert **)MEM_mallocN(sizeof(PVert *) * npoints, "PCHullU");
+ L = (PVert **)MEM_mallocN(sizeof(PVert *) * npoints, "PCHullL");
e = be;
do {
@@ -3370,13 +3372,13 @@ static PBool p_chart_convex_hull(PChart *chart, PVert ***verts, int *nverts, int
e = p_boundary_edge_next(e);
} while (e != be);
- qsort(points, npoints, sizeof(PVert*), p_compare_geometric_uv);
+ qsort(points, npoints, sizeof(PVert *), p_compare_geometric_uv);
ulen = llen = 0;
- for (p=points, i = 0; i < npoints; i++, p++) {
- while ((ulen > 1) && (p_area_signed(U[ulen-2]->uv, (*p)->uv, U[ulen-1]->uv) <= 0))
+ for (p = points, i = 0; i < npoints; i++, p++) {
+ while ((ulen > 1) && (p_area_signed(U[ulen - 2]->uv, (*p)->uv, U[ulen - 1]->uv) <= 0))
ulen--;
- while ((llen > 1) && (p_area_signed(L[llen-2]->uv, (*p)->uv, L[llen-1]->uv) >= 0))
+ while ((llen > 1) && (p_area_signed(L[llen - 2]->uv, (*p)->uv, L[llen - 1]->uv) >= 0))
llen--;
U[ulen] = *p;
@@ -3386,11 +3388,11 @@ static PBool p_chart_convex_hull(PChart *chart, PVert ***verts, int *nverts, int
}
npoints = 0;
- for (p=points, i = 0; i < ulen; i++, p++, npoints++)
+ for (p = points, i = 0; i < ulen; i++, p++, npoints++)
*p = U[i];
/* the first and last point in L are left out, since they are also in U */
- for (i = llen-2; i > 0; i--, p++, npoints++)
+ for (i = llen - 2; i > 0; i--, p++, npoints++)
*p = L[i];
*verts = points;
@@ -3422,7 +3424,7 @@ static float p_rectangle_area(float *p1, float *dir, float *p2, float *p3, float
if (!p_intersect_line_2d_dir(p3, dir, p4, orthodir, corner3))
return 1e10;
- return len_v2v2(corner1, corner2)*len_v2v2(corner2, corner3);
+ return len_v2v2(corner1, corner2) * len_v2v2(corner2, corner3);
}
static float p_chart_minimum_area_angle(PChart *chart)
@@ -3440,16 +3442,16 @@ static float p_chart_minimum_area_angle(PChart *chart)
return 0.0;
/* find left/top/right/bottom points, and compute angle for each point */
- angles = MEM_mallocN(sizeof(float)*npoints, "PMinAreaAngles");
+ angles = MEM_mallocN(sizeof(float) * npoints, "PMinAreaAngles");
mini = maxi = 0;
miny = 1e10;
maxy = -1e10;
for (i = 0; i < npoints; i++) {
- p1 = (i == 0)? points[npoints-1]: points[i-1];
+ p1 = (i == 0) ? points[npoints - 1] : points[i - 1];
p2 = points[i];
- p3 = (i == npoints-1)? points[0]: points[i+1];
+ p3 = (i == npoints - 1) ? points[0] : points[i + 1];
angles[i] = (float)M_PI - p_vec2_angle(p1->uv, p2->uv, p3->uv);
@@ -3471,19 +3473,19 @@ static float p_chart_minimum_area_angle(PChart *chart)
v[0] = points[idx[0]]->uv[0];
v[1] = points[idx[0]]->uv[1] + 1.0f;
- a[0] = p_vec2_angle(points[(idx[0]+1)%npoints]->uv, points[idx[0]]->uv, v);
+ a[0] = p_vec2_angle(points[(idx[0] + 1) % npoints]->uv, points[idx[0]]->uv, v);
v[0] = points[idx[1]]->uv[0] + 1.0f;
v[1] = points[idx[1]]->uv[1];
- a[1] = p_vec2_angle(points[(idx[1]+1)%npoints]->uv, points[idx[1]]->uv, v);
+ a[1] = p_vec2_angle(points[(idx[1] + 1) % npoints]->uv, points[idx[1]]->uv, v);
v[0] = points[idx[2]]->uv[0];
v[1] = points[idx[2]]->uv[1] - 1.0f;
- a[2] = p_vec2_angle(points[(idx[2]+1)%npoints]->uv, points[idx[2]]->uv, v);
+ a[2] = p_vec2_angle(points[(idx[2] + 1) % npoints]->uv, points[idx[2]]->uv, v);
v[0] = points[idx[3]]->uv[0] - 1.0f;
v[1] = points[idx[3]]->uv[1];
- a[3] = p_vec2_angle(points[(idx[3]+1)%npoints]->uv, points[idx[3]]->uv, v);
+ a[3] = p_vec2_angle(points[(idx[3] + 1) % npoints]->uv, points[idx[3]]->uv, v);
/* 4 rotating calipers */
@@ -3491,7 +3493,7 @@ static float p_chart_minimum_area_angle(PChart *chart)
minarea = 1e10;
minangle = 0.0;
- while (rotated <= (float)(M_PI/2.0)) { /* INVESTIGATE: how far to rotate? */
+ while (rotated <= (float)(M_PI / 2.0)) { /* INVESTIGATE: how far to rotate? */
/* rotate with the smallest angle */
mini = 0;
mina = 1e10;
@@ -3503,26 +3505,26 @@ static float p_chart_minimum_area_angle(PChart *chart)
}
rotated += mina;
- nextidx = (idx[mini]+1)%npoints;
+ nextidx = (idx[mini] + 1) % npoints;
a[mini] = angles[nextidx];
- a[(mini+1)%4] = a[(mini+1)%4] - mina;
- a[(mini+2)%4] = a[(mini+2)%4] - mina;
- a[(mini+3)%4] = a[(mini+3)%4] - mina;
+ a[(mini + 1) % 4] = a[(mini + 1) % 4] - mina;
+ a[(mini + 2) % 4] = a[(mini + 2) % 4] - mina;
+ a[(mini + 3) % 4] = a[(mini + 3) % 4] - mina;
/* compute area */
p1 = points[idx[mini]];
p1n = points[nextidx];
- p2 = points[idx[(mini+1)%4]];
- p3 = points[idx[(mini+2)%4]];
- p4 = points[idx[(mini+3)%4]];
+ p2 = points[idx[(mini + 1) % 4]];
+ p3 = points[idx[(mini + 2) % 4]];
+ p4 = points[idx[(mini + 3) % 4]];
len = len_v2v2(p1->uv, p1n->uv);
if (len > 0.0f) {
- len = 1.0f/len;
- v[0] = (p1n->uv[0] - p1->uv[0])*len;
- v[1] = (p1n->uv[1] - p1->uv[1])*len;
+ len = 1.0f / len;
+ v[0] = (p1n->uv[0] - p1->uv[0]) * len;
+ v[1] = (p1n->uv[1] - p1->uv[1]) * len;
area = p_rectangle_area(p1->uv, v, p2->uv, p3->uv, p4->uv);
@@ -3537,8 +3539,8 @@ static float p_chart_minimum_area_angle(PChart *chart)
}
/* try keeping rotation as small as possible */
- if (minangle > (float)(M_PI/4))
- minangle -= (float)(M_PI/2.0);
+ if (minangle > (float)(M_PI / 4))
+ minangle -= (float)(M_PI / 2.0);
MEM_freeN(angles);
MEM_freeN(points);
@@ -3553,10 +3555,10 @@ static void p_chart_rotate_minimum_area(PChart *chart)
float cosine = cos(angle);
PVert *v;
- for (v = chart->verts; v; v=v->nextlink) {
+ for (v = chart->verts; v; v = v->nextlink) {
float oldu = v->uv[0], oldv = v->uv[1];
- v->uv[0] = cosine*oldu - sine*oldv;
- v->uv[1] = sine*oldu + cosine*oldv;
+ v->uv[0] = cosine * oldu - sine * oldv;
+ v->uv[1] = sine * oldu + cosine * oldv;
}
}
@@ -3585,21 +3587,21 @@ static void p_barycentric_2d(float *v1, float *v2, float *v3, float *p, float *b
c[0] = v3[0] - v1[0];
c[1] = v3[1] - v1[1];
- div = a[0]*c[1] - a[1]*c[0];
+ div = a[0] * c[1] - a[1] * c[0];
if (div == 0.0f) {
- b[0] = 1.0f/3.0f;
- b[1] = 1.0f/3.0f;
- b[2] = 1.0f/3.0f;
+ b[0] = 1.0f / 3.0f;
+ b[1] = 1.0f / 3.0f;
+ b[2] = 1.0f / 3.0f;
}
else {
h[0] = p[0] - v1[0];
h[1] = p[1] - v1[1];
- div = 1.0f/div;
+ div = 1.0f / div;
- b[1] = (h[0]*c[1] - h[1]*c[0])*div;
- b[2] = (a[0]*h[1] - a[1]*h[0])*div;
+ b[1] = (h[0] * c[1] - h[1] * c[0]) * div;
+ b[2] = (a[0] * h[1] - a[1] * h[0]) * div;
b[0] = 1.0f - b[1] - b[2];
}
}
@@ -3611,8 +3613,8 @@ static PBool p_triangle_inside(SmoothTriangle *t, float *co)
p_barycentric_2d(t->co1, t->co2, t->co3, co, b);
if ((b[0] >= 0.0f) && (b[1] >= 0.0f) && (b[2] >= 0.0f)) {
- co[0] = t->oco1[0]*b[0] + t->oco2[0]*b[1] + t->oco3[0]*b[2];
- co[1] = t->oco1[1]*b[0] + t->oco2[1]*b[1] + t->oco3[1]*b[2];
+ co[0] = t->oco1[0] * b[0] + t->oco2[0] * b[1] + t->oco3[0] * b[2];
+ co[1] = t->oco1[1] * b[0] + t->oco2[1] * b[1] + t->oco3[1] * b[2];
return P_TRUE;
}
@@ -3632,11 +3634,11 @@ static SmoothNode *p_node_new(MemArena *arena, SmoothTriangle **tri, int ntri, f
if (ntri <= 10 || depth >= 15)
return node;
- t1 = MEM_mallocN(sizeof(SmoothTriangle)*ntri, "PNodeTri1");
- t2 = MEM_mallocN(sizeof(SmoothTriangle)*ntri, "PNodeTri1");
+ t1 = MEM_mallocN(sizeof(SmoothTriangle) * ntri, "PNodeTri1");
+ t2 = MEM_mallocN(sizeof(SmoothTriangle) * ntri, "PNodeTri1");
- axis = (bmax[0] - bmin[0] > bmax[1] - bmin[1])? 0: 1;
- split = 0.5f*(bmin[axis] + bmax[axis]);
+ axis = (bmax[0] - bmin[0] > bmax[1] - bmin[1]) ? 0 : 1;
+ split = 0.5f * (bmin[axis] + bmax[axis]);
for (i = 0; i < ntri; i++) {
t = tri[i];
@@ -3667,11 +3669,11 @@ static SmoothNode *p_node_new(MemArena *arena, SmoothTriangle **tri, int ntri, f
/* mi = bmin[axis]; */ /* UNUSED */
mx = bmax[axis];
bmax[axis] = split;
- node->c1 = p_node_new(arena, t1, t1size, bmin, bmax, depth+1);
+ node->c1 = p_node_new(arena, t1, t1size, bmin, bmax, depth + 1);
bmin[axis] = bmax[axis];
bmax[axis] = mx;
- node->c2 = p_node_new(arena, t2, t2size, bmin, bmax, depth+1);
+ node->c2 = p_node_new(arena, t2, t2size, bmin, bmax, depth + 1);
return node;
}
@@ -3710,9 +3712,9 @@ static PBool p_node_intersect(SmoothNode *node, float *co)
static int p_compare_float(const void *a, const void *b)
{
- if (*((float*)a) < *((float*)b))
+ if (*((float *)a) < *((float *)b))
return -1;
- else if (*((float*)a) == *((float*)b))
+ else if (*((float *)a) == *((float *)b))
return 0;
else
return 1;
@@ -3721,17 +3723,17 @@ static int p_compare_float(const void *a, const void *b)
static float p_smooth_median_edge_length(PChart *chart)
{
PEdge *e;
- float *lengths = MEM_mallocN(sizeof(chart->edges)*chart->nedges, "PMedianLength");
+ float *lengths = MEM_mallocN(sizeof(chart->edges) * chart->nedges, "PMedianLength");
float median;
int i;
/* ok, so i'm lazy */
- for (i=0, e=chart->edges; e; e=e->nextlink, i++)
+ for (i = 0, e = chart->edges; e; e = e->nextlink, i++)
lengths[i] = p_edge_length(e);
qsort(lengths, i, sizeof(float), p_compare_float);
- median = lengths[i/2];
+ median = lengths[i / 2];
MEM_freeN(lengths);
return median;
@@ -3739,10 +3741,10 @@ static float p_smooth_median_edge_length(PChart *chart)
static float p_smooth_distortion(PEdge *e, float avg2d, float avg3d)
{
- float len2d = p_edge_uv_length(e)*avg3d;
- float len3d = p_edge_length(e)*avg2d;
+ float len2d = p_edge_uv_length(e) * avg3d;
+ float len3d = p_edge_length(e) * avg2d;
- return (len3d == 0.0f)? 0.0f: len2d/len3d;
+ return (len3d == 0.0f) ? 0.0f : len2d / len3d;
}
static void p_smooth(PChart *chart)
@@ -3764,17 +3766,17 @@ static void p_smooth(PChart *chart)
return;
p_chart_uv_bbox(chart, minv, maxv);
- median = p_smooth_median_edge_length(chart)*0.10f;
+ median = p_smooth_median_edge_length(chart) * 0.10f;
if (median == 0.0f)
return;
- invmedian = 1.0f/median;
+ invmedian = 1.0f / median;
/* compute edge distortion */
avglen2d = avglen3d = 0.0;
- for (e=chart->edges; e; e=e->nextlink) {
+ for (e = chart->edges; e; e = e->nextlink) {
avglen2d += p_edge_uv_length(e);
avglen3d += p_edge_length(e);
}
@@ -3782,7 +3784,7 @@ static void p_smooth(PChart *chart)
avglen2d /= nedges;
avglen3d /= nedges;
- for (v=chart->verts; v; v=v->nextlink) {
+ for (v = chart->verts; v; v = v->nextlink) {
v->u.distortion = 0.0;
nwheel = 0;
@@ -3798,43 +3800,43 @@ static void p_smooth(PChart *chart)
}
/* need to do excessive grid size checking still */
- center[0] = 0.5f*(minv[0] + maxv[0]);
- center[1] = 0.5f*(minv[1] + maxv[1]);
+ center[0] = 0.5f * (minv[0] + maxv[0]);
+ center[1] = 0.5f * (minv[1] + maxv[1]);
- dx = 0.5f*(maxv[0] - minv[0]);
- dy = 0.5f*(maxv[1] - minv[1]);
+ dx = 0.5f * (maxv[0] - minv[0]);
+ dy = 0.5f * (maxv[1] - minv[1]);
padding = 0.15f;
- dx += padding*dx + 2.0f*median;
- dy += padding*dy + 2.0f*median;
+ dx += padding * dx + 2.0f * median;
+ dy += padding * dy + 2.0f * median;
- gridx = (int)(dx*invmedian);
- gridy = (int)(dy*invmedian);
+ gridx = (int)(dx * invmedian);
+ gridy = (int)(dy * invmedian);
- minv[0] = center[0] - median*gridx;
- minv[1] = center[1] - median*gridy;
- maxv[0] = center[0] + median*gridx;
- maxv[1] = center[1] + median*gridy;
+ minv[0] = center[0] - median * gridx;
+ minv[1] = center[1] - median * gridy;
+ maxv[0] = center[0] + median * gridx;
+ maxv[1] = center[1] + median * gridy;
/* create grid */
- gridx = gridx*2 + 1;
- gridy = gridy*2 + 1;
+ gridx = gridx * 2 + 1;
+ gridy = gridy * 2 + 1;
if ((gridx <= 2) || (gridy <= 2))
return;
- edgesx = gridx-1;
- edgesy = gridy-1;
- nsize = gridx*gridy;
- esize = edgesx*edgesy;
-
- nodes = MEM_mallocN(sizeof(float)*nsize, "PSmoothNodes");
- nodesx = MEM_mallocN(sizeof(float)*nsize, "PSmoothNodesX");
- nodesy = MEM_mallocN(sizeof(float)*nsize, "PSmoothNodesY");
- oldnodesx = MEM_mallocN(sizeof(float)*nsize, "PSmoothOldNodesX");
- oldnodesy = MEM_mallocN(sizeof(float)*nsize, "PSmoothOldNodesY");
- hedges = MEM_mallocN(sizeof(float)*esize, "PSmoothHEdges");
- vedges = MEM_mallocN(sizeof(float)*esize, "PSmoothVEdges");
+ edgesx = gridx - 1;
+ edgesy = gridy - 1;
+ nsize = gridx * gridy;
+ esize = edgesx * edgesy;
+
+ nodes = MEM_mallocN(sizeof(float) * nsize, "PSmoothNodes");
+ nodesx = MEM_mallocN(sizeof(float) * nsize, "PSmoothNodesX");
+ nodesy = MEM_mallocN(sizeof(float) * nsize, "PSmoothNodesY");
+ oldnodesx = MEM_mallocN(sizeof(float) * nsize, "PSmoothOldNodesX");
+ oldnodesy = MEM_mallocN(sizeof(float) * nsize, "PSmoothOldNodesY");
+ hedges = MEM_mallocN(sizeof(float) * esize, "PSmoothHEdges");
+ vedges = MEM_mallocN(sizeof(float) * esize, "PSmoothVEdges");
if (!nodes || !nodesx || !nodesy || !oldnodesx || !oldnodesy || !hedges || !vedges) {
if (nodes) MEM_freeN(nodes);
@@ -3851,17 +3853,17 @@ static void p_smooth(PChart *chart)
for (x = 0; x < gridx; x++) {
for (y = 0; y < gridy; y++) {
- i = x + y*gridx;
+ i = x + y * gridx;
- nodesx[i] = minv[0] + median*x;
- nodesy[i] = minv[1] + median*y;
+ nodesx[i] = minv[0] + median * x;
+ nodesy[i] = minv[1] + median * y;
nodes[i] = 1.0f;
}
}
/* embed in grid */
- for (f=chart->faces; f; f=f->nextlink) {
+ for (f = chart->faces; f; f = f->nextlink) {
PEdge *e1 = f->edge, *e2 = e1->next, *e3 = e2->next;
float fmin[2], fmax[2];
int bx1, by1, bx2, by2;
@@ -3872,16 +3874,16 @@ static void p_smooth(PChart *chart)
DO_MINMAX2(e2->vert->uv, fmin, fmax);
DO_MINMAX2(e3->vert->uv, fmin, fmax);
- bx1 = (int)((fmin[0] - minv[0])*invmedian);
- by1 = (int)((fmin[1] - minv[1])*invmedian);
- bx2 = (int)((fmax[0] - minv[0])*invmedian + 2);
- by2 = (int)((fmax[1] - minv[1])*invmedian + 2);
+ bx1 = (int)((fmin[0] - minv[0]) * invmedian);
+ by1 = (int)((fmin[1] - minv[1]) * invmedian);
+ bx2 = (int)((fmax[0] - minv[0]) * invmedian + 2);
+ by2 = (int)((fmax[1] - minv[1]) * invmedian + 2);
for (x = bx1; x < bx2; x++) {
for (y = by1; y < by2; y++) {
float p[2], b[3];
- i = x + y*gridx;
+ i = x + y * gridx;
p[0] = nodesx[i];
p[1] = nodesy[i];
@@ -3889,9 +3891,9 @@ static void p_smooth(PChart *chart)
p_barycentric_2d(e1->vert->uv, e2->vert->uv, e3->vert->uv, p, b);
if ((b[0] > 0.0f) && (b[1] > 0.0f) && (b[2] > 0.0f)) {
- nodes[i] = e1->vert->u.distortion*b[0];
- nodes[i] += e2->vert->u.distortion*b[1];
- nodes[i] += e3->vert->u.distortion*b[2];
+ nodes[i] = e1->vert->u.distortion * b[0];
+ nodes[i] += e2->vert->u.distortion * b[1];
+ nodes[i] += e3->vert->u.distortion * b[2];
}
}
}
@@ -3900,22 +3902,22 @@ static void p_smooth(PChart *chart)
/* smooth the grid */
maxiter = 10;
totiter = 0;
- climit = 0.00001f*nsize;
+ climit = 0.00001f * nsize;
for (it = 0; it < maxiter; it++) {
moved = 0.0f;
for (x = 0; x < edgesx; x++) {
for (y = 0; y < edgesy; y++) {
- i = x + y*gridx;
- j = x + y*edgesx;
+ i = x + y * gridx;
+ j = x + y * edgesx;
- hedges[j] = (nodes[i] + nodes[i+1])*0.5f;
- vedges[j] = (nodes[i] + nodes[i+gridx])*0.5f;
+ hedges[j] = (nodes[i] + nodes[i + 1]) * 0.5f;
+ vedges[j] = (nodes[i] + nodes[i + gridx]) * 0.5f;
/* we do *inverse* mapping */
- hedges[j] = 1.0f/hedges[j];
- vedges[j] = 1.0f/vedges[j];
+ hedges[j] = 1.0f / hedges[j];
+ vedges[j] = 1.0f / vedges[j];
}
}
@@ -3926,37 +3928,37 @@ static void p_smooth(PChart *chart)
d = 0.0f;
totiter += 1;
- memcpy(oldnodesx, nodesx, sizeof(float)*nsize);
- memcpy(oldnodesy, nodesy, sizeof(float)*nsize);
+ memcpy(oldnodesx, nodesx, sizeof(float) * nsize);
+ memcpy(oldnodesy, nodesy, sizeof(float) * nsize);
- for (x=1; x < gridx-1; x++) {
- for (y=1; y < gridy-1; y++) {
+ for (x = 1; x < gridx - 1; x++) {
+ for (y = 1; y < gridy - 1; y++) {
float p[2], oldp[2], sum1, sum2, diff[2], length;
- i = x + gridx*y;
- j = x + edgesx*y;
+ i = x + gridx * y;
+ j = x + edgesx * y;
oldp[0] = oldnodesx[i];
oldp[1] = oldnodesy[i];
- sum1 = hedges[j-1]*oldnodesx[i-1];
- sum1 += hedges[j]*oldnodesx[i+1];
- sum1 += vedges[j-edgesx]*oldnodesx[i-gridx];
- sum1 += vedges[j]*oldnodesx[i+gridx];
+ sum1 = hedges[j - 1] * oldnodesx[i - 1];
+ sum1 += hedges[j] * oldnodesx[i + 1];
+ sum1 += vedges[j - edgesx] * oldnodesx[i - gridx];
+ sum1 += vedges[j] * oldnodesx[i + gridx];
- sum2 = hedges[j-1];
+ sum2 = hedges[j - 1];
sum2 += hedges[j];
- sum2 += vedges[j-edgesx];
+ sum2 += vedges[j - edgesx];
sum2 += vedges[j];
- nodesx[i] = sum1/sum2;
+ nodesx[i] = sum1 / sum2;
- sum1 = hedges[j-1]*oldnodesy[i-1];
- sum1 += hedges[j]*oldnodesy[i+1];
- sum1 += vedges[j-edgesx]*oldnodesy[i-gridx];
- sum1 += vedges[j]*oldnodesy[i+gridx];
+ sum1 = hedges[j - 1] * oldnodesy[i - 1];
+ sum1 += hedges[j] * oldnodesy[i + 1];
+ sum1 += vedges[j - edgesx] * oldnodesy[i - gridx];
+ sum1 += vedges[j] * oldnodesy[i + gridx];
- nodesy[i] = sum1/sum2;
+ nodesy[i] = sum1 / sum2;
p[0] = nodesx[i];
p[1] = nodesy[i];
@@ -3964,7 +3966,7 @@ static void p_smooth(PChart *chart)
diff[0] = p[0] - oldp[0];
diff[1] = p[1] - oldp[1];
- length = sqrt(diff[0]*diff[0] + diff[1]*diff[1]);
+ length = sqrt(diff[0] * diff[0] + diff[1] * diff[1]);
d = MAX2(d, length);
moved += length;
}
@@ -3984,8 +3986,8 @@ static void p_smooth(PChart *chart)
MEM_freeN(vedges);
/* create bsp */
- t = triangles = MEM_mallocN(sizeof(SmoothTriangle)*esize*2, "PSmoothTris");
- trip = tri = MEM_mallocN(sizeof(SmoothTriangle*)*esize*2, "PSmoothTriP");
+ t = triangles = MEM_mallocN(sizeof(SmoothTriangle) * esize * 2, "PSmoothTris");
+ trip = tri = MEM_mallocN(sizeof(SmoothTriangle *) * esize * 2, "PSmoothTriP");
if (!triangles || !tri) {
MEM_freeN(nodes);
@@ -4001,33 +4003,33 @@ static void p_smooth(PChart *chart)
for (x = 0; x < edgesx; x++) {
for (y = 0; y < edgesy; y++) {
- i = x + y*gridx;
+ i = x + y * gridx;
t->co1[0] = nodesx[i];
t->co1[1] = nodesy[i];
- t->co2[0] = nodesx[i+1];
- t->co2[1] = nodesy[i+1];
+ t->co2[0] = nodesx[i + 1];
+ t->co2[1] = nodesy[i + 1];
- t->co3[0] = nodesx[i+gridx];
- t->co3[1] = nodesy[i+gridx];
+ t->co3[0] = nodesx[i + gridx];
+ t->co3[1] = nodesy[i + gridx];
- t->oco1[0] = minv[0] + x*median;
- t->oco1[1] = minv[1] + y*median;
+ t->oco1[0] = minv[0] + x * median;
+ t->oco1[1] = minv[1] + y * median;
- t->oco2[0] = minv[0] + (x+1)*median;
- t->oco2[1] = minv[1] + y*median;
+ t->oco2[0] = minv[0] + (x + 1) * median;
+ t->oco2[1] = minv[1] + y * median;
- t->oco3[0] = minv[0] + x*median;
- t->oco3[1] = minv[1] + (y+1)*median;
+ t->oco3[0] = minv[0] + x * median;
+ t->oco3[1] = minv[1] + (y + 1) * median;
- t2 = t+1;
+ t2 = t + 1;
- t2->co1[0] = nodesx[i+gridx+1];
- t2->co1[1] = nodesy[i+gridx+1];
+ t2->co1[0] = nodesx[i + gridx + 1];
+ t2->co1[1] = nodesy[i + gridx + 1];
- t2->oco1[0] = minv[0] + (x+1)*median;
- t2->oco1[1] = minv[1] + (y+1)*median;
+ t2->oco1[0] = minv[0] + (x + 1) * median;
+ t2->oco1[1] = minv[1] + (y + 1) * median;
t2->co2[0] = t->co2[0]; t2->co2[1] = t->co2[1];
t2->oco2[0] = t->oco2[0]; t2->oco2[1] = t->oco2[1];
@@ -4044,10 +4046,10 @@ static void p_smooth(PChart *chart)
MEM_freeN(nodesx);
MEM_freeN(nodesy);
- arena = BLI_memarena_new(1<<16, "param smooth arena");
- root = p_node_new(arena, tri, esize*2, minv, maxv, 0);
+ arena = BLI_memarena_new(1 << 16, "param smooth arena");
+ root = p_node_new(arena, tri, esize * 2, minv, maxv, 0);
- for (v=chart->verts; v; v=v->nextlink)
+ for (v = chart->verts; v; v = v->nextlink)
if (!p_node_intersect(root, v->uv))
param_warning("area smoothing error: couldn't find mapping triangle\n");
@@ -4061,23 +4063,23 @@ static void p_smooth(PChart *chart)
ParamHandle *param_construct_begin(void)
{
- PHandle *handle = MEM_callocN(sizeof*handle, "PHandle");
+ PHandle *handle = MEM_callocN(sizeof *handle, "PHandle");
handle->construction_chart = p_chart_new(handle);
handle->state = PHANDLE_STATE_ALLOCATED;
- handle->arena = BLI_memarena_new((1<<16), "param construct arena");
+ handle->arena = BLI_memarena_new((1 << 16), "param construct arena");
handle->aspx = 1.0f;
handle->aspy = 1.0f;
- handle->hash_verts = phash_new((PHashLink**)&handle->construction_chart->verts, 1);
- handle->hash_edges = phash_new((PHashLink**)&handle->construction_chart->edges, 1);
- handle->hash_faces = phash_new((PHashLink**)&handle->construction_chart->faces, 1);
+ handle->hash_verts = phash_new((PHashLink **)&handle->construction_chart->verts, 1);
+ handle->hash_edges = phash_new((PHashLink **)&handle->construction_chart->edges, 1);
+ handle->hash_faces = phash_new((PHashLink **)&handle->construction_chart->faces, 1);
- return (ParamHandle*)handle;
+ return (ParamHandle *)handle;
}
void param_aspect_ratio(ParamHandle *handle, float aspx, float aspy)
{
- PHandle *phandle = (PHandle*)handle;
+ PHandle *phandle = (PHandle *)handle;
phandle->aspx = aspx;
phandle->aspy = aspy;
@@ -4085,11 +4087,11 @@ void param_aspect_ratio(ParamHandle *handle, float aspx, float aspy)
void param_delete(ParamHandle *handle)
{
- PHandle *phandle = (PHandle*)handle;
+ PHandle *phandle = (PHandle *)handle;
int i;
param_assert((phandle->state == PHANDLE_STATE_ALLOCATED) ||
- (phandle->state == PHANDLE_STATE_CONSTRUCTED));
+ (phandle->state == PHANDLE_STATE_CONSTRUCTED));
for (i = 0; i < phandle->ncharts; i++)
p_chart_delete(phandle->charts[i]);
@@ -4110,10 +4112,10 @@ void param_delete(ParamHandle *handle)
}
void param_face_add(ParamHandle *handle, ParamKey key, int nverts,
- ParamKey *vkeys, float **co, float **uv,
- ParamBool *pin, ParamBool *select)
+ ParamKey *vkeys, float **co, float **uv,
+ ParamBool *pin, ParamBool *select)
{
- PHandle *phandle = (PHandle*)handle;
+ PHandle *phandle = (PHandle *)handle;
param_assert(phash_lookup(phandle->hash_faces, key) == NULL);
param_assert(phandle->state == PHANDLE_STATE_ALLOCATED);
@@ -4135,7 +4137,7 @@ void param_face_add(ParamHandle *handle, ParamKey key, int nverts,
void param_edge_set_seam(ParamHandle *handle, ParamKey *vkeys)
{
- PHandle *phandle = (PHandle*)handle;
+ PHandle *phandle = (PHandle *)handle;
PEdge *e;
param_assert(phandle->state == PHANDLE_STATE_ALLOCATED);
@@ -4147,7 +4149,7 @@ void param_edge_set_seam(ParamHandle *handle, ParamKey *vkeys)
void param_construct_end(ParamHandle *handle, ParamBool fill, ParamBool impl)
{
- PHandle *phandle = (PHandle*)handle;
+ PHandle *phandle = (PHandle *)handle;
PChart *chart = phandle->construction_chart;
int i, j, nboundaries = 0;
PEdge *outer;
@@ -4182,7 +4184,7 @@ void param_construct_end(ParamHandle *handle, ParamBool fill, ParamBool impl)
if (fill && (nboundaries > 1))
p_chart_fill_boundaries(chart, outer);
- for (v=chart->verts; v; v=v->nextlink)
+ for (v = chart->verts; v; v = v->nextlink)
p_vert_load_pin_select_uvs(handle, v);
}
@@ -4193,7 +4195,7 @@ void param_construct_end(ParamHandle *handle, ParamBool fill, ParamBool impl)
void param_lscm_begin(ParamHandle *handle, ParamBool live, ParamBool abf)
{
- PHandle *phandle = (PHandle*)handle;
+ PHandle *phandle = (PHandle *)handle;
PFace *f;
int i;
@@ -4201,7 +4203,7 @@ void param_lscm_begin(ParamHandle *handle, ParamBool live, ParamBool abf)
phandle->state = PHANDLE_STATE_LSCM;
for (i = 0; i < phandle->ncharts; i++) {
- for (f=phandle->charts[i]->faces; f; f=f->nextlink)
+ for (f = phandle->charts[i]->faces; f; f = f->nextlink)
p_face_backup_uvs(f);
p_chart_lscm_begin(phandle->charts[i], (PBool)live, (PBool)abf);
}
@@ -4209,7 +4211,7 @@ void param_lscm_begin(ParamHandle *handle, ParamBool live, ParamBool abf)
void param_lscm_solve(ParamHandle *handle)
{
- PHandle *phandle = (PHandle*)handle;
+ PHandle *phandle = (PHandle *)handle;
PChart *chart;
int i;
PBool result;
@@ -4233,7 +4235,7 @@ void param_lscm_solve(ParamHandle *handle)
void param_lscm_end(ParamHandle *handle)
{
- PHandle *phandle = (PHandle*)handle;
+ PHandle *phandle = (PHandle *)handle;
int i;
param_assert(phandle->state == PHANDLE_STATE_LSCM);
@@ -4250,7 +4252,7 @@ void param_lscm_end(ParamHandle *handle)
void param_stretch_begin(ParamHandle *handle)
{
- PHandle *phandle = (PHandle*)handle;
+ PHandle *phandle = (PHandle *)handle;
PChart *chart;
PVert *v;
PFace *f;
@@ -4265,12 +4267,12 @@ void param_stretch_begin(ParamHandle *handle)
for (i = 0; i < phandle->ncharts; i++) {
chart = phandle->charts[i];
- for (v=chart->verts; v; v=v->nextlink)
- v->flag &= ~PVERT_PIN; /* don't use user-defined pins */
+ for (v = chart->verts; v; v = v->nextlink)
+ v->flag &= ~PVERT_PIN; /* don't use user-defined pins */
p_stretch_pin_boundary(chart);
- for (f=chart->faces; f; f=f->nextlink) {
+ for (f = chart->faces; f; f = f->nextlink) {
p_face_backup_uvs(f);
f->u.area3d = p_face_area(f);
}
@@ -4279,7 +4281,7 @@ void param_stretch_begin(ParamHandle *handle)
void param_stretch_blend(ParamHandle *handle, float blend)
{
- PHandle *phandle = (PHandle*)handle;
+ PHandle *phandle = (PHandle *)handle;
param_assert(phandle->state == PHANDLE_STATE_STRETCH);
phandle->blend = blend;
@@ -4287,7 +4289,7 @@ void param_stretch_blend(ParamHandle *handle, float blend)
void param_stretch_iter(ParamHandle *handle)
{
- PHandle *phandle = (PHandle*)handle;
+ PHandle *phandle = (PHandle *)handle;
PChart *chart;
int i;
@@ -4301,7 +4303,7 @@ void param_stretch_iter(ParamHandle *handle)
void param_stretch_end(ParamHandle *handle)
{
- PHandle *phandle = (PHandle*)handle;
+ PHandle *phandle = (PHandle *)handle;
param_assert(phandle->state == PHANDLE_STATE_STRETCH);
phandle->state = PHANDLE_STATE_CONSTRUCTED;
@@ -4312,7 +4314,7 @@ void param_stretch_end(ParamHandle *handle)
void param_smooth_area(ParamHandle *handle)
{
- PHandle *phandle = (PHandle*)handle;
+ PHandle *phandle = (PHandle *)handle;
int i;
param_assert(phandle->state == PHANDLE_STATE_CONSTRUCTED);
@@ -4321,7 +4323,7 @@ void param_smooth_area(ParamHandle *handle)
PChart *chart = phandle->charts[i];
PVert *v;
- for (v=chart->verts; v; v=v->nextlink)
+ for (v = chart->verts; v; v = v->nextlink)
v->flag &= ~PVERT_PIN;
p_smooth(chart);
@@ -4335,20 +4337,20 @@ void param_pack(ParamHandle *handle, float margin)
float tot_width, tot_height, scale;
PChart *chart;
- int i, unpacked=0;
+ int i, unpacked = 0;
float trans[2];
- double area= 0.0;
+ double area = 0.0;
- PHandle *phandle = (PHandle*)handle;
+ PHandle *phandle = (PHandle *)handle;
if (phandle->ncharts == 0)
return;
if (phandle->aspx != phandle->aspy)
- param_scale(handle, 1.0f/phandle->aspx, 1.0f/phandle->aspy);
+ param_scale(handle, 1.0f / phandle->aspx, 1.0f / phandle->aspy);
/* we may not use all these boxes */
- boxarray = MEM_mallocN( phandle->ncharts*sizeof(boxPack), "boxPack box");
+ boxarray = MEM_mallocN(phandle->ncharts * sizeof(boxPack), "boxPack box");
for (i = 0; i < phandle->ncharts; i++) {
@@ -4359,7 +4361,7 @@ void param_pack(ParamHandle *handle, float margin)
continue;
}
- box = boxarray+(i-unpacked);
+ box = boxarray + (i - unpacked);
p_chart_uv_bbox(chart, trans, chart->u.pack.size);
@@ -4372,16 +4374,16 @@ void param_pack(ParamHandle *handle, float margin)
box->h = chart->u.pack.size[1] + trans[1];
box->index = i; /* warning this index skips PCHART_NOPACK boxes */
- if (margin>0.0f)
- area += sqrt(box->w*box->h);
+ if (margin > 0.0f)
+ area += sqrt(box->w * box->h);
}
- if (margin>0.0f) {
+ if (margin > 0.0f) {
/* multiply the margin by the area to give predictable results not dependent on UV scale,
* ...Without using the area running pack multiple times also gives a bad feedback loop.
* multiply by 0.1 so the margin value from the UI can be from 0.0 to 1.0 but not give a massive margin */
- margin = (margin*(float)area) * 0.1f;
- unpacked= 0;
+ margin = (margin * (float)area) * 0.1f;
+ unpacked = 0;
for (i = 0; i < phandle->ncharts; i++) {
chart = phandle->charts[i];
@@ -4390,24 +4392,24 @@ void param_pack(ParamHandle *handle, float margin)
continue;
}
- box = boxarray+(i-unpacked);
+ box = boxarray + (i - unpacked);
trans[0] = margin;
trans[1] = margin;
p_chart_uv_translate(chart, trans);
- box->w += margin*2;
- box->h += margin*2;
+ box->w += margin * 2;
+ box->h += margin * 2;
}
}
- boxPack2D(boxarray, phandle->ncharts-unpacked, &tot_width, &tot_height);
+ boxPack2D(boxarray, phandle->ncharts - unpacked, &tot_width, &tot_height);
- if (tot_height>tot_width)
- scale = 1.0f/tot_height;
+ if (tot_height > tot_width)
+ scale = 1.0f / tot_height;
else
- scale = 1.0f/tot_width;
+ scale = 1.0f / tot_width;
- for (i = 0; i < phandle->ncharts-unpacked; i++) {
- box = boxarray+i;
+ for (i = 0; i < phandle->ncharts - unpacked; i++) {
+ box = boxarray + i;
trans[0] = box->x;
trans[1] = box->y;
@@ -4428,7 +4430,7 @@ void param_average(ParamHandle *handle)
float tot_uvarea = 0.0f, tot_facearea = 0.0f;
float tot_fac, fac;
float minv[2], maxv[2], trans[2];
- PHandle *phandle = (PHandle*)handle;
+ PHandle *phandle = (PHandle *)handle;
if (phandle->ncharts == 0)
return;
@@ -4440,7 +4442,7 @@ void param_average(ParamHandle *handle)
chart->u.pack.area = 0.0f; /* 3d area */
chart->u.pack.rescale = 0.0f; /* UV area, abusing rescale for tmp storage, oh well :/ */
- for (f=chart->faces; f; f=f->nextlink) {
+ for (f = chart->faces; f; f = f->nextlink) {
chart->u.pack.area += p_face_area(f);
chart->u.pack.rescale += fabsf(p_face_uv_area_signed(f));
}
@@ -4449,12 +4451,12 @@ void param_average(ParamHandle *handle)
tot_uvarea += chart->u.pack.rescale;
}
- if (tot_facearea == tot_uvarea || tot_facearea==0.0f || tot_uvarea==0.0f) {
+ if (tot_facearea == tot_uvarea || tot_facearea == 0.0f || tot_uvarea == 0.0f) {
/* nothing to do */
return;
}
- tot_fac = tot_facearea/tot_uvarea;
+ tot_fac = tot_facearea / tot_uvarea;
for (i = 0; i < phandle->ncharts; i++) {
chart = phandle->charts[i];
@@ -4463,8 +4465,8 @@ void param_average(ParamHandle *handle)
/* Get the island center */
p_chart_uv_bbox(chart, minv, maxv);
- trans[0] = (minv[0] + maxv[0]) /-2.0f;
- trans[1] = (minv[1] + maxv[1]) /-2.0f;
+ trans[0] = (minv[0] + maxv[0]) / -2.0f;
+ trans[1] = (minv[1] + maxv[1]) / -2.0f;
/* Move center to 0,0 */
p_chart_uv_translate(chart, trans);
@@ -4480,7 +4482,7 @@ void param_average(ParamHandle *handle)
void param_scale(ParamHandle *handle, float x, float y)
{
- PHandle *phandle = (PHandle*)handle;
+ PHandle *phandle = (PHandle *)handle;
PChart *chart;
int i;
@@ -4492,7 +4494,7 @@ void param_scale(ParamHandle *handle, float x, float y)
void param_flush(ParamHandle *handle)
{
- PHandle *phandle = (PHandle*)handle;
+ PHandle *phandle = (PHandle *)handle;
PChart *chart;
int i;
@@ -4511,7 +4513,7 @@ void param_flush(ParamHandle *handle)
void param_flush_restore(ParamHandle *handle)
{
- PHandle *phandle = (PHandle*)handle;
+ PHandle *phandle = (PHandle *)handle;
PChart *chart;
PFace *f;
int i;
@@ -4519,7 +4521,7 @@ void param_flush_restore(ParamHandle *handle)
for (i = 0; i < phandle->ncharts; i++) {
chart = phandle->charts[i];
- for (f=chart->faces; f; f=f->nextlink)
+ for (f = chart->faces; f; f = f->nextlink)
p_face_restore_uvs(f);
}
}
diff --git a/source/blender/editors/uvedit/uvedit_smart_stitch.c b/source/blender/editors/uvedit/uvedit_smart_stitch.c
index 384581247a0..33ecf3c97ef 100644
--- a/source/blender/editors/uvedit/uvedit_smart_stitch.c
+++ b/source/blender/editors/uvedit/uvedit_smart_stitch.c
@@ -73,7 +73,7 @@ struct IslandStitchData;
/* This is a straightforward implementation, count the uv's in the island that will move and take the mean displacement/rotation and apply it to all
* elements of the island except from the stitchable */
-typedef struct IslandStitchData{
+typedef struct IslandStitchData {
/* rotation can be used only for edges, for vertices there is no such notion */
float rotation;
float translation[2];
@@ -143,7 +143,7 @@ typedef struct StitchState {
unsigned int *tris_per_island;
} StitchState;
-typedef struct PreviewPosition{
+typedef struct PreviewPosition {
int data_position;
int polycount_position;
}PreviewPosition;
@@ -162,7 +162,7 @@ typedef struct PreviewPosition{
static StitchPreviewer *_stitch_preview;
/* constructor */
-static StitchPreviewer * stitch_preview_init(void)
+static StitchPreviewer *stitch_preview_init(void)
{
_stitch_preview = MEM_mallocN(sizeof(StitchPreviewer), "stitch_previewer");
_stitch_preview->preview_polys = NULL;
@@ -227,14 +227,14 @@ static void stitch_update_header(StitchState *stitch_state, bContext *C)
static char str[] = "(S)nap %s, (M)idpoints %s, (L)imit %.2f (Alt Wheel adjust) %s, Switch (I)sland, shift select vertices";
char msg[HEADER_LENGTH];
- ScrArea *sa= CTX_wm_area(C);
+ ScrArea *sa = CTX_wm_area(C);
if (sa) {
BLI_snprintf(msg, HEADER_LENGTH, str,
- stitch_state->snap_islands? "On" : "Off",
- stitch_state->midpoints? "On": "Off",
- stitch_state->limit_dist,
- stitch_state->use_limit? "On" : "Off");
+ stitch_state->snap_islands ? "On" : "Off",
+ stitch_state->midpoints ? "On" : "Off",
+ stitch_state->limit_dist,
+ stitch_state->use_limit ? "On" : "Off");
ED_area_headerprint(sa, msg);
}
@@ -242,11 +242,11 @@ static void stitch_update_header(StitchState *stitch_state, bContext *C)
static int getNumOfIslandUvs(UvElementMap *elementMap, int island)
{
- if (island == elementMap->totalIslands-1) {
+ if (island == elementMap->totalIslands - 1) {
return elementMap->totalUVs - elementMap->islandIndices[island];
}
else {
- return elementMap->islandIndices[island+1] - elementMap->islandIndices[island];
+ return elementMap->islandIndices[island + 1] - elementMap->islandIndices[island];
}
}
@@ -257,8 +257,8 @@ static void stitch_uv_rotate(float rotation, float medianPoint[2], float uv[2])
uv[0] -= medianPoint[0];
uv[1] -= medianPoint[1];
- uv_rotation_result[0] = cos(rotation)*uv[0] - sin(rotation)*uv[1];
- uv_rotation_result[1] = sin(rotation)*uv[0] + cos(rotation)*uv[1];
+ uv_rotation_result[0] = cos(rotation) * uv[0] - sin(rotation) * uv[1];
+ uv_rotation_result[1] = sin(rotation) * uv[0] + cos(rotation) * uv[1];
uv[0] = uv_rotation_result[0] + medianPoint[0];
uv[1] = uv_rotation_result[1] + medianPoint[1];
@@ -286,8 +286,9 @@ static int stitch_check_uvs_stitchable(UvElement *element, UvElement *element_it
l_iter = element_iter->l;
luv_iter = CustomData_bmesh_get(&state->em->bm->ldata, l_iter->head.data, CD_MLOOPUV);
- if (fabs(luv_orig->uv[0] - luv_iter->uv[0]) < limit
- && fabs(luv_orig->uv[1] - luv_iter->uv[1]) < limit) {
+ if (fabs(luv_orig->uv[0] - luv_iter->uv[0]) < limit &&
+ fabs(luv_orig->uv[1] - luv_iter->uv[1]) < limit)
+ {
return 1;
}
else {
@@ -303,8 +304,10 @@ static int stitch_check_uvs_stitchable(UvElement *element, UvElement *element_it
static int stitch_check_uvs_state_stitchable(UvElement *element, UvElement *element_iter, StitchState *state)
{
if ((state->snap_islands && element->island == element_iter->island) ||
- (!state->midpoints && element->island == element_iter->island))
+ (!state->midpoints && element->island == element_iter->island))
+ {
return 0;
+ }
return stitch_check_uvs_stitchable(element, element_iter, state);
}
@@ -321,7 +324,7 @@ static void stitch_calculate_island_snapping(StitchState *state, PreviewPosition
int numOfIslandUVs = 0, j;
/* check to avoid divide by 0 */
- if (island_stitch_data[i].num_rot_elements>0) {
+ if (island_stitch_data[i].num_rot_elements > 0) {
island_stitch_data[i].rotation /= island_stitch_data[i].num_rot_elements;
island_stitch_data[i].medianPoint[0] /= island_stitch_data[i].numOfElements;
island_stitch_data[i].medianPoint[1] /= island_stitch_data[i].numOfElements;
@@ -350,10 +353,10 @@ static void stitch_calculate_island_snapping(StitchState *state, PreviewPosition
int face_preview_pos = preview_position[BM_elem_index_get(element->face)].data_position;
stitch_uv_rotate(island_stitch_data[i].rotation, island_stitch_data[i].medianPoint,
- preview->preview_polys + face_preview_pos + 2*element->tfindex);
+ preview->preview_polys + face_preview_pos + 2 * element->tfindex);
- add_v2_v2(preview->preview_polys + face_preview_pos + 2*element->tfindex,
- island_stitch_data[i].translation);
+ add_v2_v2(preview->preview_polys + face_preview_pos + 2 * element->tfindex,
+ island_stitch_data[i].translation);
}
}
/* cleanup */
@@ -397,10 +400,10 @@ static void stitch_island_calculate_edge_rotation(UvEdge *edge, StitchState *sta
normalize_v2(uv1);
normalize_v2(uv2);
- edgecos = uv1[0]*uv2[0] + uv1[1]*uv2[1];
- edgesin = uv1[0]*uv2[1] - uv2[0]*uv1[1];
+ edgecos = uv1[0] * uv2[0] + uv1[1] * uv2[1];
+ edgesin = uv1[0] * uv2[1] - uv2[0] * uv1[1];
- rotation = (edgesin > 0)? acos(MAX2(-1.0, MIN2(1.0, edgecos))): -acos(MAX2(-1.0, MIN2(1.0, edgecos)));
+ rotation = (edgesin > 0) ? acos(MAX2(-1.0, MIN2(1.0, edgecos))) : -acos(MAX2(-1.0, MIN2(1.0, edgecos)));
island_stitch_data[element1->island].num_rot_elements++;
island_stitch_data[element1->island].rotation += rotation;
@@ -435,10 +438,10 @@ static void stitch_island_calculate_vert_rotation(UvElement *element, StitchStat
index_tmp2 = element - state->element_map->buf;
index_tmp2 = state->map[index_tmp2];
- negate_v2_v2(normal, state->normals + index_tmp2*2);
- edgecos = dot_v2v2(normal, state->normals + index_tmp1*2);
- edgesin = cross_v2v2(normal, state->normals + index_tmp1*2);
- rotation += (edgesin > 0)? acos(edgecos): -acos(edgecos);
+ negate_v2_v2(normal, state->normals + index_tmp2 * 2);
+ edgecos = dot_v2v2(normal, state->normals + index_tmp1 * 2);
+ edgesin = cross_v2v2(normal, state->normals + index_tmp1 * 2);
+ rotation += (edgesin > 0) ? acos(edgecos) : -acos(edgecos);
}
}
@@ -512,7 +515,7 @@ static void stitch_set_face_preview_buffer_position(BMFace *efa, StitchPreviewer
int index = BM_elem_index_get(efa);
if (preview_position[index].data_position == STITCH_NO_PREVIEW) {
- preview_position[index].data_position = preview->preview_uvs*2;
+ preview_position[index].data_position = preview->preview_uvs * 2;
preview_position[index].polycount_position = preview->num_polys++;
preview->preview_uvs += efa->len;
}
@@ -521,7 +524,7 @@ static void stitch_set_face_preview_buffer_position(BMFace *efa, StitchPreviewer
/* setup face preview for all coincident uvs and their faces */
static void stitch_setup_face_preview_for_uv_group(UvElement *element, StitchState *state, IslandStitchData *island_stitch_data,
- PreviewPosition *preview_position) {
+ PreviewPosition *preview_position) {
StitchPreviewer *preview = uv_get_stitch_previewer();
/* static island does not change so returning immediately */
@@ -540,8 +543,8 @@ static void stitch_setup_face_preview_for_uv_group(UvElement *element, StitchSta
/* checks if uvs are indeed stitchable and registers so that they can be shown in preview */
-static void stitch_validate_stichability (UvElement *element, StitchState *state, IslandStitchData *island_stitch_data,
- PreviewPosition *preview_position) {
+static void stitch_validate_stichability(UvElement *element, StitchState *state, IslandStitchData *island_stitch_data,
+ PreviewPosition *preview_position) {
UvElement *element_iter;
StitchPreviewer *preview;
int vert_index;
@@ -597,13 +600,13 @@ static int stitch_process_data(StitchState *state, Scene *scene, int final)
if (preview == NULL)
return 0;
- preview_position = MEM_mallocN(state->em->bm->totface*sizeof(*preview_position), "stitch_face_preview_position");
+ preview_position = MEM_mallocN(state->em->bm->totface * sizeof(*preview_position), "stitch_face_preview_position");
/* each face holds its position in the preview buffer in tmp. -1 is uninitialized */
for (i = 0; i < state->em->bm->totface; i++) {
preview_position[i].data_position = STITCH_NO_PREVIEW;
}
- island_stitch_data = MEM_callocN(sizeof(*island_stitch_data)*state->element_map->totalIslands, "stitch_island_data");
+ island_stitch_data = MEM_callocN(sizeof(*island_stitch_data) * state->element_map->totalIslands, "stitch_island_data");
if (!island_stitch_data) {
return 0;
}
@@ -669,12 +672,12 @@ static int stitch_process_data(StitchState *state, Scene *scene, int final)
unsigned int buffer_index = 0;
int stitchBufferIndex = 0, unstitchBufferIndex = 0;
/* initialize the preview buffers */
- preview->preview_polys = (float *)MEM_mallocN(preview->preview_uvs*sizeof(float)*2, "tri_uv_stitch_prev");
- preview->uvs_per_polygon = MEM_mallocN(preview->num_polys*sizeof(*preview->uvs_per_polygon), "tri_uv_stitch_prev");
- preview->preview_stitchable = (float *)MEM_mallocN(preview->num_stitchable*sizeof(float)*2, "stitch_preview_stichable_data");
- preview->preview_unstitchable = (float *)MEM_mallocN(preview->num_unstitchable*sizeof(float)*2, "stitch_preview_unstichable_data");
+ preview->preview_polys = (float *)MEM_mallocN(preview->preview_uvs * sizeof(float) * 2, "tri_uv_stitch_prev");
+ preview->uvs_per_polygon = MEM_mallocN(preview->num_polys * sizeof(*preview->uvs_per_polygon), "tri_uv_stitch_prev");
+ preview->preview_stitchable = (float *)MEM_mallocN(preview->num_stitchable * sizeof(float) * 2, "stitch_preview_stichable_data");
+ preview->preview_unstitchable = (float *)MEM_mallocN(preview->num_unstitchable * sizeof(float) * 2, "stitch_preview_unstichable_data");
- preview->static_tris = (float *)MEM_mallocN(state->tris_per_island[state->static_island]*sizeof(float)*6, "static_island_preview_tris");
+ preview->static_tris = (float *)MEM_mallocN(state->tris_per_island[state->static_island] * sizeof(float) * 6, "static_island_preview_tris");
preview->num_static_tris = state->tris_per_island[state->static_island];
/* will cause cancel and freeing of all data structures so OK */
@@ -695,7 +698,7 @@ static int stitch_process_data(StitchState *state, Scene *scene, int final)
preview->uvs_per_polygon[preview_position[index].polycount_position] = efa->len;
BM_ITER_INDEX(l, &liter, state->em->bm, BM_LOOPS_OF_FACE, efa, i) {
luv = CustomData_bmesh_get(&state->em->bm->ldata, l->head.data, CD_MLOOPUV);
- copy_v2_v2(preview->preview_polys + face_preview_pos + i*2, luv->uv);
+ copy_v2_v2(preview->preview_polys + face_preview_pos + i * 2, luv->uv);
}
}
@@ -710,9 +713,9 @@ static int stitch_process_data(StitchState *state, Scene *scene, int final)
MLoopUV *luvnext = CustomData_bmesh_get(&state->em->bm->ldata, lnext->next->head.data, CD_MLOOPUV);
luv = CustomData_bmesh_get(&state->em->bm->ldata, lnext->head.data, CD_MLOOPUV);
- memcpy(preview->static_tris + buffer_index, fuv->uv, 2*sizeof(float));
- memcpy(preview->static_tris + buffer_index + 2, luv->uv, 2*sizeof(float));
- memcpy(preview->static_tris + buffer_index + 4, luvnext->uv, 2*sizeof(float));
+ memcpy(preview->static_tris + buffer_index, fuv->uv, 2 * sizeof(float));
+ memcpy(preview->static_tris + buffer_index + 2, luv->uv, 2 * sizeof(float));
+ memcpy(preview->static_tris + buffer_index + 4, luvnext->uv, 2 * sizeof(float));
buffer_index += 6;
}
else {
@@ -730,7 +733,7 @@ static int stitch_process_data(StitchState *state, Scene *scene, int final)
l = element->l;
luv = CustomData_bmesh_get(&state->em->bm->ldata, l->head.data, CD_MLOOPUV);
- copy_v2_v2(&preview->preview_stitchable[stitchBufferIndex*2], luv->uv);
+ copy_v2_v2(&preview->preview_stitchable[stitchBufferIndex * 2], luv->uv);
stitchBufferIndex++;
}
@@ -738,7 +741,7 @@ static int stitch_process_data(StitchState *state, Scene *scene, int final)
l = element->l;
luv = CustomData_bmesh_get(&state->em->bm->ldata, l->head.data, CD_MLOOPUV);
- copy_v2_v2(&preview->preview_unstitchable[unstitchBufferIndex*2], luv->uv);
+ copy_v2_v2(&preview->preview_unstitchable[unstitchBufferIndex * 2], luv->uv);
unstitchBufferIndex++;
}
}
@@ -748,8 +751,8 @@ static int stitch_process_data(StitchState *state, Scene *scene, int final)
* Here we calculate the final coordinates of the uvs *
******************************************************/
- final_position = MEM_callocN(state->selection_size*sizeof(*final_position), "stitch_uv_average");
- uvfinal_map = MEM_mallocN(state->element_map->totalUVs*sizeof(*uvfinal_map), "stitch_uv_final_map");
+ final_position = MEM_callocN(state->selection_size * sizeof(*final_position), "stitch_uv_average");
+ uvfinal_map = MEM_mallocN(state->element_map->totalUVs * sizeof(*uvfinal_map), "stitch_uv_final_map");
/* first pass, calculate final position for stitchable uvs of the static island */
for (i = 0; i < state->selection_size; i++) {
@@ -773,7 +776,7 @@ static int stitch_process_data(StitchState *state, Scene *scene, int final)
element_iter = state->element_map->vert[BM_elem_index_get(l->v)];
- for (;element_iter; element_iter = element_iter->next) {
+ for ( ; element_iter; element_iter = element_iter->next) {
if (element_iter->separate) {
if (stitch_check_uvs_state_stitchable(element, element_iter, state)) {
l = element_iter->l;
@@ -821,7 +824,7 @@ static int stitch_process_data(StitchState *state, Scene *scene, int final)
/* only calculate rotation when an edge has been fully selected */
for (i = 0; i < state->total_boundary_edges; i++) {
- UvEdge *edge = state->edges+i;
+ UvEdge *edge = state->edges + i;
if ((state->uvs[edge->uv1]->flag & STITCH_STITCHABLE) && (state->uvs[edge->uv2]->flag & STITCH_STITCHABLE)) {
stitch_island_calculate_edge_rotation(edge, state, final_position, uvfinal_map, island_stitch_data);
island_stitch_data[state->uvs[edge->uv1]->island].use_edge_rotation = 1;
@@ -862,8 +865,8 @@ static int stitch_process_data(StitchState *state, Scene *scene, int final)
else {
int face_preview_pos = preview_position[BM_elem_index_get(element_iter->face)].data_position;
if (face_preview_pos != STITCH_NO_PREVIEW) {
- copy_v2_v2(preview->preview_polys + face_preview_pos + 2*element_iter->tfindex,
- final_position[i].uv);
+ copy_v2_v2(preview->preview_polys + face_preview_pos + 2 * element_iter->tfindex,
+ final_position[i].uv);
}
}
@@ -891,12 +894,12 @@ static int stitch_process_data(StitchState *state, Scene *scene, int final)
}
/* Stitch hash initialization functions */
-static unsigned int uv_edge_hash(const void *key)
+static unsigned int uv_edge_hash(const void *key)
{
UvEdge *edge = (UvEdge *)key;
return
- BLI_ghashutil_inthash(SET_INT_IN_POINTER(edge->uv2)) +
- BLI_ghashutil_inthash(SET_INT_IN_POINTER(edge->uv1));
+ BLI_ghashutil_inthash(SET_INT_IN_POINTER(edge->uv2)) +
+ BLI_ghashutil_inthash(SET_INT_IN_POINTER(edge->uv1));
}
static int uv_edge_compare(const void *a, const void *b)
@@ -979,7 +982,7 @@ static int stitch_init(bContext *C, wmOperator *op)
BMLoop *l;
BMIter iter, liter;
BMEditMesh *em;
- GHashIterator* ghi;
+ GHashIterator *ghi;
UvEdge *all_edges;
StitchState *state = MEM_mallocN(sizeof(StitchState), "stitch state");
Scene *scene = CTX_data_scene(C);
@@ -1023,18 +1026,18 @@ static int stitch_init(bContext *C, wmOperator *op)
}
/* Allocate the unique uv buffers */
- state->uvs = MEM_mallocN(sizeof(*state->uvs)*counter, "uv_stitch_unique_uvs");
+ state->uvs = MEM_mallocN(sizeof(*state->uvs) * counter, "uv_stitch_unique_uvs");
/* internal uvs need no normals but it is hard and slow to keep a map of
* normals only for boundary uvs, so allocating for all uvs */
- state->normals = MEM_callocN(sizeof(*state->normals)*counter*2, "uv_stitch_normals");
+ state->normals = MEM_callocN(sizeof(*state->normals) * counter * 2, "uv_stitch_normals");
state->total_separate_uvs = counter;
/* we can at most have totalUVs edges or uvs selected. Actually they are less, considering we store only
* unique uvs for processing but I am accounting for all bizarre cases, especially for edges, this way */
- state->selection_stack = MEM_mallocN(sizeof(*state->selection_stack)*counter, "uv_stitch_selection_stack");
- state->map = map = MEM_mallocN(sizeof(*map)*state->element_map->totalUVs, "uv_stitch_unique_map");
+ state->selection_stack = MEM_mallocN(sizeof(*state->selection_stack) * counter, "uv_stitch_selection_stack");
+ state->map = map = MEM_mallocN(sizeof(*map) * state->element_map->totalUVs, "uv_stitch_unique_map");
/* Allocate the edge stack */
edgeHash = BLI_ghash_new(uv_edge_hash, uv_edge_compare, "stitch_edge_hash");
- all_edges = MEM_mallocN(sizeof(*all_edges)*state->element_map->totalUVs, "stitch_all_edges");
+ all_edges = MEM_mallocN(sizeof(*all_edges) * state->element_map->totalUVs, "stitch_all_edges");
if (!state->selection_stack || !state->uvs || !map || !edgeHash || !all_edges) {
stitch_state_delete(state);
@@ -1105,7 +1108,7 @@ static int stitch_init(bContext *C, wmOperator *op)
total_edges++;
}
}
- state->edges = edges = MEM_mallocN(sizeof(*edges)*total_edges, "stitch_edges");
+ state->edges = edges = MEM_mallocN(sizeof(*edges) * total_edges, "stitch_edges");
if (!ghi || !edges) {
MEM_freeN(all_edges);
stitch_state_delete(state);
@@ -1140,11 +1143,11 @@ static int stitch_init(bContext *C, wmOperator *op)
float normal[2];
stitch_calculate_edge_normal(em, edges + i, normal);
- add_v2_v2(state->normals + edges[i].uv1*2, normal);
- add_v2_v2(state->normals + edges[i].uv2*2, normal);
+ add_v2_v2(state->normals + edges[i].uv1 * 2, normal);
+ add_v2_v2(state->normals + edges[i].uv2 * 2, normal);
- normalize_v2(state->normals + edges[i].uv1*2);
- normalize_v2(state->normals + edges[i].uv2*2);
+ normalize_v2(state->normals + edges[i].uv1 * 2);
+ normalize_v2(state->normals + edges[i].uv2 * 2);
}
@@ -1188,8 +1191,8 @@ static int stitch_init(bContext *C, wmOperator *op)
/***** initialize static island preview data *****/
- state->tris_per_island = MEM_mallocN(sizeof(*state->tris_per_island)*state->element_map->totalIslands,
- "stitch island tris");
+ state->tris_per_island = MEM_mallocN(sizeof(*state->tris_per_island) * state->element_map->totalIslands,
+ "stitch island tris");
for (i = 0; i < state->element_map->totalIslands; i++) {
state->tris_per_island[i] = 0;
}
@@ -1198,7 +1201,7 @@ static int stitch_init(bContext *C, wmOperator *op)
UvElement *element = ED_uv_element_get(state->element_map, efa, BM_FACE_FIRST_LOOP(efa));
if (element) {
- state->tris_per_island[element->island] += (efa->len > 2)? efa->len-2 : 0;
+ state->tris_per_island[element->island] += (efa->len > 2) ? efa->len - 2 : 0;
}
}
@@ -1218,7 +1221,7 @@ static int stitch_invoke(bContext *C, wmOperator *op, wmEvent *UNUSED(event))
return OPERATOR_CANCELLED;
WM_event_add_modal_handler(C, op);
- WM_event_add_notifier(C, NC_GEOM|ND_DATA, obedit->data);
+ WM_event_add_notifier(C, NC_GEOM | ND_DATA, obedit->data);
return OPERATOR_RUNNING_MODAL;
}
@@ -1227,12 +1230,12 @@ static void stitch_exit(bContext *C, wmOperator *op, int finished)
StitchState *stitch_state;
Scene *scene;
SpaceImage *sima;
- ScrArea *sa= CTX_wm_area(C);
+ ScrArea *sa = CTX_wm_area(C);
Object *obedit;
- scene= CTX_data_scene(C);
- obedit= CTX_data_edit_object(C);
- sima= CTX_wm_space_image(C);
+ scene = CTX_data_scene(C);
+ obedit = CTX_data_edit_object(C);
+ sima = CTX_wm_space_image(C);
stitch_state = (StitchState *)op->customdata;
@@ -1265,7 +1268,7 @@ static void stitch_exit(bContext *C, wmOperator *op, int finished)
ED_area_headerprint(sa, NULL);
DAG_id_tag_update(obedit->data, 0);
- WM_event_add_notifier(C, NC_GEOM|ND_DATA, obedit->data);
+ WM_event_add_notifier(C, NC_GEOM | ND_DATA, obedit->data);
stitch_state_delete(stitch_state);
op->customdata = NULL;
@@ -1301,8 +1304,8 @@ static void stitch_select(bContext *C, Scene *scene, wmEvent *event, StitchState
/* add uv under mouse to processed uv's */
float co[2];
NearestHit hit;
- ARegion *ar= CTX_wm_region(C);
- Image *ima= CTX_data_edit_image(C);
+ ARegion *ar = CTX_wm_region(C);
+ Image *ima = CTX_data_edit_image(C);
UI_view2d_region_to_view(&ar->v2d, event->mval[0], event->mval[1], &co[0], &co[1]);
uv_find_nearest_vert(scene, ima, stitch_state->em, co, NULL, &hit);
@@ -1326,7 +1329,7 @@ static int stitch_modal(bContext *C, wmOperator *op, wmEvent *event)
stitch_state = (StitchState *)op->customdata;
- switch(event->type) {
+ switch (event->type) {
case MIDDLEMOUSE:
return OPERATOR_PASS_THROUGH;
@@ -1419,7 +1422,7 @@ static int stitch_modal(bContext *C, wmOperator *op, wmEvent *event)
/* Select geometry*/
case RIGHTMOUSE:
if (!event->shift) {
- return stitch_cancel(C, op);
+ return stitch_cancel(C, op);
}
if (event->val == KM_RELEASE && !(U.flag & USER_LMOUSESELECT)) {
stitch_select(C, scene, event, stitch_state);
@@ -1440,8 +1443,9 @@ static int stitch_modal(bContext *C, wmOperator *op, wmEvent *event)
}
break;
}
- else
- return OPERATOR_RUNNING_MODAL;
+ else {
+ return OPERATOR_RUNNING_MODAL;
+ }
default:
return OPERATOR_RUNNING_MODAL;
@@ -1461,7 +1465,7 @@ void UV_OT_stitch(wmOperatorType *ot)
ot->name = "Stitch";
ot->description = "Stitch selected UV vertices by proximity";
ot->idname = "UV_OT_stitch";
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
/* api callbacks */
ot->invoke = stitch_invoke;
@@ -1473,14 +1477,14 @@ void UV_OT_stitch(wmOperatorType *ot)
/* properties */
RNA_def_boolean(ot->srna, "use_limit", 0, "Use Limit", "Stitch UVs within a specified limit distance");
RNA_def_boolean(ot->srna, "snap_islands", 1, "Snap Islands",
- "Snap islands together (on edge stitch mode, rotates the islands too)");
+ "Snap islands together (on edge stitch mode, rotates the islands too)");
RNA_def_float(ot->srna, "limit", 0.01f, 0.0f, FLT_MAX, "Limit",
- "Limit distance in normalized coordinates", 0.0, FLT_MAX);
+ "Limit distance in normalized coordinates", 0.0, FLT_MAX);
RNA_def_int(ot->srna, "static_island", 0, 0, INT_MAX, "Static Island",
- "Island that stays in place when stitching islands", 0, INT_MAX);
+ "Island that stays in place when stitching islands", 0, INT_MAX);
RNA_def_boolean(ot->srna, "midpoint_snap", 0, "Snap At Midpoint",
- "UVs are stitched at midpoint instead of at static island");
+ "UVs are stitched at midpoint instead of at static island");
prop = RNA_def_collection_runtime(ot->srna, "selection", &RNA_SelectedUvElement, "Selection", "");
/* Selection should not be editable or viewed in toolbar */
RNA_def_property_flag(prop, PROP_HIDDEN);
diff --git a/source/blender/editors/uvedit/uvedit_unwrap_ops.c b/source/blender/editors/uvedit/uvedit_unwrap_ops.c
index ac04e25216d..a3cbcc57a9c 100644
--- a/source/blender/editors/uvedit/uvedit_unwrap_ops.c
+++ b/source/blender/editors/uvedit/uvedit_unwrap_ops.c
@@ -112,21 +112,21 @@ static int ED_uvedit_ensure_uvs(bContext *C, Scene *scene, Object *obedit)
return 0;
}
- ima= CTX_data_edit_image(C);
+ ima = CTX_data_edit_image(C);
if (!ima) {
/* no image in context in the 3d view, we find first image window .. */
- sc= CTX_wm_screen(C);
+ sc = CTX_wm_screen(C);
- for (sa=sc->areabase.first; sa; sa=sa->next) {
- slink= sa->spacedata.first;
+ for (sa = sc->areabase.first; sa; sa = sa->next) {
+ slink = sa->spacedata.first;
if (slink->spacetype == SPACE_IMAGE) {
- sima= (SpaceImage*)slink;
+ sima = (SpaceImage *)slink;
- ima= sima->image;
+ ima = sima->image;
if (ima) {
- if (ima->type==IMA_TYPE_R_RESULT || ima->type==IMA_TYPE_COMPOSITE)
- ima= NULL;
+ if (ima->type == IMA_TYPE_R_RESULT || ima->type == IMA_TYPE_COMPOSITE)
+ ima = NULL;
else
break;
}
@@ -183,8 +183,8 @@ static int uvedit_have_selection(Scene *scene, BMEditMesh *em, short implicit)
}
static ParamHandle *construct_param_handle(Scene *scene, BMEditMesh *em,
- short implicit, short fill, short sel,
- short correct_aspect)
+ short implicit, short fill, short sel,
+ short correct_aspect)
{
ParamHandle *handle;
BMFace *efa;
@@ -200,11 +200,11 @@ static ParamHandle *construct_param_handle(Scene *scene, BMEditMesh *em,
if (efa) {
float aspx, aspy;
- tf= CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
+ tf = CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY);
ED_image_uv_aspect(tf->tpage, &aspx, &aspy);
- if (aspx!=aspy)
+ if (aspx != aspy)
param_aspect_ratio(handle, aspx, aspy);
}
}
@@ -223,7 +223,7 @@ static ParamHandle *construct_param_handle(Scene *scene, BMEditMesh *em,
float *uv[4];
int lsel;
- if ((BM_elem_flag_test(efa, BM_ELEM_HIDDEN)) || (sel && BM_elem_flag_test(efa, BM_ELEM_SELECT)==0))
+ if ((BM_elem_flag_test(efa, BM_ELEM_HIDDEN)) || (sel && BM_elem_flag_test(efa, BM_ELEM_SELECT) == 0))
continue;
/* tf= (MTexPoly *)CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY); */ /* UNUSED */
@@ -251,8 +251,8 @@ static ParamHandle *construct_param_handle(Scene *scene, BMEditMesh *em,
v = BLI_addfillvert(l->v->co);
/*add small random offset*/
- for (i=0; i<3; i++) {
- v->co[i] += (BLI_drand()-0.5f)*FLT_EPSILON*50;
+ for (i = 0; i < 3; i++) {
+ v->co[i] += (BLI_drand() - 0.5f) * FLT_EPSILON * 50;
}
v->tmp.p = l;
@@ -270,7 +270,7 @@ static ParamHandle *construct_param_handle(Scene *scene, BMEditMesh *em,
/*mode 2 enables faster handling of tri/quads*/
BLI_edgefill(2);
- for (sefa = fillfacebase.first; sefa; sefa=sefa->next) {
+ for (sefa = fillfacebase.first; sefa; sefa = sefa->next) {
ls[0] = sefa->v1->tmp.p;
ls[1] = sefa->v2->tmp.p;
ls[2] = sefa->v3->tmp.p;
@@ -299,8 +299,8 @@ static ParamHandle *construct_param_handle(Scene *scene, BMEditMesh *em,
select[1] = uvedit_uv_selected(em, scene, ls[1]) != 0;
select[2] = uvedit_uv_selected(em, scene, ls[2]) != 0;
- if (!p_face_exists(handle,vkeys,0,1,2))
- param_face_add(handle, key, 3, vkeys, co, uv, pin, select);
+ if (!p_face_exists(handle, vkeys, 0, 1, 2))
+ param_face_add(handle, key, 3, vkeys, co, uv, pin, select);
}
BLI_end_edgefill();
@@ -340,7 +340,7 @@ static void texface_from_original_index(BMFace *efa, int index, float **uv, Para
if (BM_elem_index_get(l->v) == index) {
luv = CustomData_bmesh_get(&em->bm->ldata, l->head.data, CD_MLOOPUV);
*uv = luv->uv;
- *pin = (luv->flag & MLOOPUV_PINNED)? 1 : 0;
+ *pin = (luv->flag & MLOOPUV_PINNED) ? 1 : 0;
*select = (uvedit_uv_selected(em, scene, l) != 0);
}
}
@@ -383,11 +383,11 @@ static ParamHandle *construct_param_handle_subsurfed(Scene *scene, BMEditMesh *e
if (editFace) {
MTexPoly *tf;
float aspx, aspy;
- tf= CustomData_bmesh_get(&em->bm->pdata, editFace->head.data, CD_MTEXPOLY);
+ tf = CustomData_bmesh_get(&em->bm->pdata, editFace->head.data, CD_MTEXPOLY);
ED_image_uv_aspect(tf->tpage, &aspx, &aspy);
- if (aspx!=aspy)
+ if (aspx != aspy)
param_aspect_ratio(handle, aspx, aspy);
}
}
@@ -398,7 +398,7 @@ static ParamHandle *construct_param_handle_subsurfed(Scene *scene, BMEditMesh *e
initialDerived = CDDM_from_BMEditMesh(em, NULL, 0, 0);
derivedMesh = subsurf_make_derived_from_derived(initialDerived, &smd,
- 0, NULL, 0, 0, 1);
+ 0, NULL, 0, 0, 1);
initialDerived->release(initialDerived);
@@ -414,7 +414,7 @@ static ParamHandle *construct_param_handle_subsurfed(Scene *scene, BMEditMesh *e
numOfEdges = derivedMesh->getNumEdges(derivedMesh);
numOfFaces = derivedMesh->getNumTessFaces(derivedMesh);
- faceMap = MEM_mallocN(numOfFaces*sizeof(BMFace *), "unwrap_edit_face_map");
+ faceMap = MEM_mallocN(numOfFaces * sizeof(BMFace *), "unwrap_edit_face_map");
BM_mesh_elem_index_ensure(em->bm, BM_VERT);
EDBM_index_arrays_init(em, 0, 1, 1);
@@ -423,13 +423,13 @@ static ParamHandle *construct_param_handle_subsurfed(Scene *scene, BMEditMesh *e
for (i = 0; i < numOfFaces; i++)
faceMap[i] = EDBM_face_at_index(em, origFaceIndices[i]);
- edgeMap = MEM_mallocN(numOfEdges*sizeof(BMEdge *), "unwrap_edit_edge_map");
+ edgeMap = MEM_mallocN(numOfEdges * sizeof(BMEdge *), "unwrap_edit_edge_map");
/* map subsurfed edges to original editEdges */
for (i = 0; i < numOfEdges; i++) {
/* not all edges correspond to an old edge */
- edgeMap[i] = (origEdgeIndices[i] != -1)?
- EDBM_edge_at_index(em, origEdgeIndices[i]) : NULL;
+ edgeMap[i] = (origEdgeIndices[i] != -1) ?
+ EDBM_edge_at_index(em, origEdgeIndices[i]) : NULL;
}
EDBM_index_arrays_free(em);
@@ -442,7 +442,7 @@ static ParamHandle *construct_param_handle_subsurfed(Scene *scene, BMEditMesh *e
float *uv[4];
BMFace *origFace = faceMap[i];
- face = subsurfedFaces+i;
+ face = subsurfedFaces + i;
if (scene->toolsettings->uv_flag & UV_SYNC_SELECTION) {
if (BM_elem_flag_test(origFace, BM_ELEM_HIDDEN))
@@ -521,29 +521,29 @@ static int minimize_stretch_init(bContext *C, wmOperator *op)
return 0;
}
- ms= MEM_callocN(sizeof(MinStretch), "MinStretch");
- ms->scene= scene;
- ms->obedit= obedit;
- ms->em= em;
- ms->blend= RNA_float_get(op->ptr, "blend");
- ms->iterations= RNA_int_get(op->ptr, "iterations");
- ms->i= 0;
- ms->handle= construct_param_handle(scene, em, implicit, fill_holes, 1, 1);
- ms->lasttime= PIL_check_seconds_timer();
+ ms = MEM_callocN(sizeof(MinStretch), "MinStretch");
+ ms->scene = scene;
+ ms->obedit = obedit;
+ ms->em = em;
+ ms->blend = RNA_float_get(op->ptr, "blend");
+ ms->iterations = RNA_int_get(op->ptr, "iterations");
+ ms->i = 0;
+ ms->handle = construct_param_handle(scene, em, implicit, fill_holes, 1, 1);
+ ms->lasttime = PIL_check_seconds_timer();
param_stretch_begin(ms->handle);
if (ms->blend != 0.0f)
param_stretch_blend(ms->handle, ms->blend);
- op->customdata= ms;
+ op->customdata = ms;
return 1;
}
static void minimize_stretch_iteration(bContext *C, wmOperator *op, int interactive)
{
- MinStretch *ms= op->customdata;
- ScrArea *sa= CTX_wm_area(C);
+ MinStretch *ms = op->customdata;
+ ScrArea *sa = CTX_wm_area(C);
param_stretch_blend(ms->handle, ms->blend);
param_stretch_iter(ms->handle);
@@ -564,14 +564,14 @@ static void minimize_stretch_iteration(bContext *C, wmOperator *op, int interact
ms->lasttime = PIL_check_seconds_timer();
DAG_id_tag_update(ms->obedit->data, 0);
- WM_event_add_notifier(C, NC_GEOM|ND_DATA, ms->obedit->data);
+ WM_event_add_notifier(C, NC_GEOM | ND_DATA, ms->obedit->data);
}
}
static void minimize_stretch_exit(bContext *C, wmOperator *op, int cancel)
{
- MinStretch *ms= op->customdata;
- ScrArea *sa= CTX_wm_area(C);
+ MinStretch *ms = op->customdata;
+ ScrArea *sa = CTX_wm_area(C);
if (sa)
ED_area_headerprint(sa, NULL);
@@ -587,10 +587,10 @@ static void minimize_stretch_exit(bContext *C, wmOperator *op, int cancel)
param_delete(ms->handle);
DAG_id_tag_update(ms->obedit->data, 0);
- WM_event_add_notifier(C, NC_GEOM|ND_DATA, ms->obedit->data);
+ WM_event_add_notifier(C, NC_GEOM | ND_DATA, ms->obedit->data);
MEM_freeN(ms);
- op->customdata= NULL;
+ op->customdata = NULL;
}
static int minimize_stretch_exec(bContext *C, wmOperator *op)
@@ -600,8 +600,8 @@ static int minimize_stretch_exec(bContext *C, wmOperator *op)
if (!minimize_stretch_init(C, op))
return OPERATOR_CANCELLED;
- iterations= RNA_int_get(op->ptr, "iterations");
- for (i=0; i<iterations; i++)
+ iterations = RNA_int_get(op->ptr, "iterations");
+ for (i = 0; i < iterations; i++)
minimize_stretch_iteration(C, op, 0);
minimize_stretch_exit(C, op, 0);
@@ -617,18 +617,18 @@ static int minimize_stretch_invoke(bContext *C, wmOperator *op, wmEvent *UNUSED(
minimize_stretch_iteration(C, op, 1);
- ms= op->customdata;
+ ms = op->customdata;
WM_event_add_modal_handler(C, op);
- ms->timer= WM_event_add_timer(CTX_wm_manager(C), CTX_wm_window(C), TIMER, 0.01f);
+ ms->timer = WM_event_add_timer(CTX_wm_manager(C), CTX_wm_window(C), TIMER, 0.01f);
return OPERATOR_RUNNING_MODAL;
}
static int minimize_stretch_modal(bContext *C, wmOperator *op, wmEvent *event)
{
- MinStretch *ms= op->customdata;
+ MinStretch *ms = op->customdata;
- switch(event->type) {
+ switch (event->type) {
case ESCKEY:
case RIGHTMOUSE:
minimize_stretch_exit(C, op, 1);
@@ -642,7 +642,7 @@ static int minimize_stretch_modal(bContext *C, wmOperator *op, wmEvent *event)
case WHEELUPMOUSE:
if (ms->blend < 0.95f) {
ms->blend += 0.1f;
- ms->lasttime= 0.0f;
+ ms->lasttime = 0.0f;
RNA_float_set(op->ptr, "blend", ms->blend);
minimize_stretch_iteration(C, op, 1);
}
@@ -651,14 +651,14 @@ static int minimize_stretch_modal(bContext *C, wmOperator *op, wmEvent *event)
case WHEELDOWNMOUSE:
if (ms->blend > 0.05f) {
ms->blend -= 0.1f;
- ms->lasttime= 0.0f;
+ ms->lasttime = 0.0f;
RNA_float_set(op->ptr, "blend", ms->blend);
minimize_stretch_iteration(C, op, 1);
}
break;
case TIMER:
if (ms->timer == event->customdata) {
- double start= PIL_check_seconds_timer();
+ double start = PIL_check_seconds_timer();
do {
minimize_stretch_iteration(C, op, 1);
@@ -687,7 +687,7 @@ void UV_OT_minimize_stretch(wmOperatorType *ot)
/* identifiers */
ot->name = "Minimize Stretch";
ot->idname = "UV_OT_minimize_stretch";
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO|OPTYPE_GRAB_POINTER|OPTYPE_BLOCKING;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO | OPTYPE_GRAB_POINTER | OPTYPE_BLOCKING;
ot->description = "Reduce UV stretching by relaxing angles";
/* api callbacks */
@@ -718,7 +718,7 @@ static int pack_islands_exec(bContext *C, wmOperator *op)
}
if (RNA_struct_property_is_set(op->ptr, "margin")) {
- scene->toolsettings->uvcalc_margin= RNA_float_get(op->ptr, "margin");
+ scene->toolsettings->uvcalc_margin = RNA_float_get(op->ptr, "margin");
}
else {
RNA_float_set(op->ptr, "margin", scene->toolsettings->uvcalc_margin);
@@ -730,7 +730,7 @@ static int pack_islands_exec(bContext *C, wmOperator *op)
param_delete(handle);
DAG_id_tag_update(obedit->data, 0);
- WM_event_add_notifier(C, NC_GEOM|ND_DATA, obedit->data);
+ WM_event_add_notifier(C, NC_GEOM | ND_DATA, obedit->data);
return OPERATOR_FINISHED;
}
@@ -740,7 +740,7 @@ void UV_OT_pack_islands(wmOperatorType *ot)
/* identifiers */
ot->name = "Pack Islands";
ot->idname = "UV_OT_pack_islands";
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
/* api callbacks */
ot->exec = pack_islands_exec;
@@ -764,13 +764,13 @@ static int average_islands_scale_exec(bContext *C, wmOperator *UNUSED(op))
return OPERATOR_CANCELLED;
}
- handle= construct_param_handle(scene, em, implicit, 0, 1, 1);
+ handle = construct_param_handle(scene, em, implicit, 0, 1, 1);
param_average(handle);
param_flush(handle);
param_delete(handle);
DAG_id_tag_update(obedit->data, 0);
- WM_event_add_notifier(C, NC_GEOM|ND_DATA, obedit->data);
+ WM_event_add_notifier(C, NC_GEOM | ND_DATA, obedit->data);
return OPERATOR_FINISHED;
}
@@ -780,7 +780,7 @@ void UV_OT_average_islands_scale(wmOperatorType *ot)
/* identifiers */
ot->name = "Average Islands Scale";
ot->idname = "UV_OT_average_islands_scale";
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
/* api callbacks */
ot->exec = average_islands_scale_exec;
@@ -832,27 +832,27 @@ void ED_uvedit_live_unwrap_end(short cancel)
/*************** UV Map Common Transforms *****************/
#define VIEW_ON_EQUATOR 0
-#define VIEW_ON_POLES 1
-#define ALIGN_TO_OBJECT 2
+#define VIEW_ON_POLES 1
+#define ALIGN_TO_OBJECT 2
-#define POLAR_ZX 0
-#define POLAR_ZY 1
+#define POLAR_ZX 0
+#define POLAR_ZY 1
static void uv_map_transform_center(Scene *scene, View3D *v3d, float *result,
- Object *ob, BMEditMesh *em)
+ Object *ob, BMEditMesh *em)
{
BMFace *efa;
BMLoop *l;
BMIter iter, liter;
float min[3], max[3], *cursx;
- int around= (v3d)? v3d->around: V3D_CENTER;
+ int around = (v3d) ? v3d->around : V3D_CENTER;
/* only operates on the edit object - this is all that's needed now */
switch (around) {
case V3D_CENTER: /* bounding box center */
- min[0]= min[1]= min[2]= 1e20f;
- max[0]= max[1]= max[2]= -1e20f;
+ min[0] = min[1] = min[2] = 1e20f;
+ max[0] = max[1] = max[2] = -1e20f;
BM_ITER(efa, &iter, em->bm, BM_FACES_OF_MESH, NULL) {
if (BM_elem_flag_test(efa, BM_ELEM_SELECT)) {
@@ -865,17 +865,17 @@ static void uv_map_transform_center(Scene *scene, View3D *v3d, float *result,
break;
case V3D_CURSOR: /*cursor center*/
- cursx= give_cursor(scene, v3d);
+ cursx = give_cursor(scene, v3d);
/* shift to objects world */
- result[0]= cursx[0]-ob->obmat[3][0];
- result[1]= cursx[1]-ob->obmat[3][1];
- result[2]= cursx[2]-ob->obmat[3][2];
+ result[0] = cursx[0] - ob->obmat[3][0];
+ result[1] = cursx[1] - ob->obmat[3][1];
+ result[2] = cursx[2] - ob->obmat[3][2];
break;
case V3D_LOCAL: /*object center*/
case V3D_CENTROID: /* multiple objects centers, only one object here*/
default:
- result[0]= result[1]= result[2]= 0.0;
+ result[0] = result[1] = result[2] = 0.0;
break;
}
}
@@ -884,7 +884,7 @@ static void uv_map_rotation_matrix(float result[][4], RegionView3D *rv3d, Object
float upangledeg, float sideangledeg, float radius)
{
float rotup[4][4], rotside[4][4], viewmatrix[4][4], rotobj[4][4];
- float sideangle= 0.0f, upangle= 0.0f;
+ float sideangle = 0.0f, upangle = 0.0f;
int k;
/* get rotation of the current view matrix */
@@ -894,15 +894,15 @@ static void uv_map_rotation_matrix(float result[][4], RegionView3D *rv3d, Object
unit_m4(viewmatrix);
/* but shifting */
- for (k=0; k<4; k++)
- viewmatrix[3][k] =0.0f;
+ for (k = 0; k < 4; k++)
+ viewmatrix[3][k] = 0.0f;
/* get rotation of the current object matrix */
- copy_m4_m4(rotobj,ob->obmat);
+ copy_m4_m4(rotobj, ob->obmat);
/* but shifting */
- for (k=0; k<4; k++)
- rotobj[3][k] =0.0f;
+ for (k = 0; k < 4; k++)
+ rotobj[3][k] = 0.0f;
zero_m4(rotup);
zero_m4(rotside);
@@ -910,19 +910,19 @@ static void uv_map_rotation_matrix(float result[][4], RegionView3D *rv3d, Object
/* compensate front/side.. against opengl x,y,z world definition */
/* this is "kanonen gegen spatzen", a few plus minus 1 will do here */
/* i wanted to keep the reason here, so we're rotating*/
- sideangle= (float)M_PI*(sideangledeg + 180.0f)/180.0f;
- rotside[0][0]= (float)cos(sideangle);
- rotside[0][1]= -(float)sin(sideangle);
- rotside[1][0]= (float)sin(sideangle);
- rotside[1][1]= (float)cos(sideangle);
- rotside[2][2]= 1.0f;
-
- upangle= (float)M_PI*upangledeg/180.0f;
- rotup[1][1]= (float)cos(upangle)/radius;
- rotup[1][2]= -(float)sin(upangle)/radius;
- rotup[2][1]= (float)sin(upangle)/radius;
- rotup[2][2]= (float)cos(upangle)/radius;
- rotup[0][0]= (float)1.0f/radius;
+ sideangle = (float)M_PI * (sideangledeg + 180.0f) / 180.0f;
+ rotside[0][0] = (float)cos(sideangle);
+ rotside[0][1] = -(float)sin(sideangle);
+ rotside[1][0] = (float)sin(sideangle);
+ rotside[1][1] = (float)cos(sideangle);
+ rotside[2][2] = 1.0f;
+
+ upangle = (float)M_PI * upangledeg / 180.0f;
+ rotup[1][1] = (float)cos(upangle) / radius;
+ rotup[1][2] = -(float)sin(upangle) / radius;
+ rotup[2][1] = (float)sin(upangle) / radius;
+ rotup[2][2] = (float)cos(upangle) / radius;
+ rotup[0][0] = (float)1.0f / radius;
/* calculate transforms*/
mul_serie_m4(result, rotup, rotside, viewmatrix, rotobj, NULL, NULL, NULL, NULL);
@@ -937,21 +937,21 @@ static void uv_map_transform(bContext *C, wmOperator *op, float center[3], float
View3D *v3d = CTX_wm_view3d(C);
RegionView3D *rv3d = CTX_wm_region_view3d(C);
/* common operator properties */
- int align= RNA_enum_get(op->ptr, "align");
- int direction= RNA_enum_get(op->ptr, "direction");
- float radius= RNA_struct_find_property(op->ptr, "radius")? RNA_float_get(op->ptr, "radius"): 1.0f;
+ int align = RNA_enum_get(op->ptr, "align");
+ int direction = RNA_enum_get(op->ptr, "direction");
+ float radius = RNA_struct_find_property(op->ptr, "radius") ? RNA_float_get(op->ptr, "radius") : 1.0f;
float upangledeg, sideangledeg;
uv_map_transform_center(scene, v3d, center, obedit, em);
if (direction == VIEW_ON_EQUATOR) {
- upangledeg= 90.0f;
- sideangledeg= 0.0f;
+ upangledeg = 90.0f;
+ sideangledeg = 0.0f;
}
else {
- upangledeg= 0.0f;
- if (align == POLAR_ZY) sideangledeg= 0.0f;
- else sideangledeg= 90.0f;
+ upangledeg = 0.0f;
+ if (align == POLAR_ZY) sideangledeg = 0.0f;
+ else sideangledeg = 90.0f;
}
/* be compatible to the "old" sphere/cylinder mode */
@@ -964,13 +964,13 @@ static void uv_map_transform(bContext *C, wmOperator *op, float center[3], float
static void uv_transform_properties(wmOperatorType *ot, int radius)
{
- static EnumPropertyItem direction_items[]= {
+ static EnumPropertyItem direction_items[] = {
{VIEW_ON_EQUATOR, "VIEW_ON_EQUATOR", 0, "View on Equator", "3D view is on the equator"},
{VIEW_ON_POLES, "VIEW_ON_POLES", 0, "View on Poles", "3D view is on the poles"},
{ALIGN_TO_OBJECT, "ALIGN_TO_OBJECT", 0, "Align to Object", "Align according to object transform"},
{0, NULL, 0, NULL, NULL}
};
- static EnumPropertyItem align_items[]= {
+ static EnumPropertyItem align_items[] = {
{POLAR_ZX, "POLAR_ZX", 0, "Polar ZX", "Polar 0 is X"},
{POLAR_ZY, "POLAR_ZY", 0, "Polar ZY", "Polar 0 is Y"},
{0, NULL, 0, NULL, NULL}
@@ -987,11 +987,11 @@ static void uv_transform_properties(wmOperatorType *ot, int radius)
static void correct_uv_aspect(BMEditMesh *em)
{
- BMFace *efa= BM_active_face_get(em->bm, TRUE);
+ BMFace *efa = BM_active_face_get(em->bm, TRUE);
BMLoop *l;
BMIter iter, liter;
MLoopUV *luv;
- float scale, aspx= 1.0f, aspy=1.0f;
+ float scale, aspx = 1.0f, aspy = 1.0f;
if (efa) {
MTexPoly *tf;
@@ -1004,7 +1004,7 @@ static void correct_uv_aspect(BMEditMesh *em)
return;
if (aspx > aspy) {
- scale= aspy/aspx;
+ scale = aspy / aspx;
BM_ITER(efa, &iter, em->bm, BM_FACES_OF_MESH, NULL) {
if (!BM_elem_flag_test(efa, BM_ELEM_SELECT) || BM_elem_flag_test(efa, BM_ELEM_HIDDEN))
@@ -1012,20 +1012,20 @@ static void correct_uv_aspect(BMEditMesh *em)
BM_ITER(l, &liter, em->bm, BM_LOOPS_OF_FACE, efa) {
luv = CustomData_bmesh_get(&em->bm->ldata, l->head.data, CD_MLOOPUV);
- luv->uv[0] = ((luv->uv[0]-0.5)*scale)+0.5;
+ luv->uv[0] = ((luv->uv[0] - 0.5) * scale) + 0.5;
}
}
}
else {
- scale= aspx/aspy;
+ scale = aspx / aspy;
BM_ITER(efa, &iter, em->bm, BM_FACES_OF_MESH, NULL) {
- if (!BM_elem_flag_test(efa, BM_ELEM_SELECT)||BM_elem_flag_test(efa, BM_ELEM_HIDDEN))
+ if (!BM_elem_flag_test(efa, BM_ELEM_SELECT) || BM_elem_flag_test(efa, BM_ELEM_HIDDEN))
continue;
BM_ITER(l, &liter, em->bm, BM_LOOPS_OF_FACE, efa) {
luv = CustomData_bmesh_get(&em->bm->ldata, l->head.data, CD_MLOOPUV);
- luv->uv[1] = ((luv->uv[1]-0.5)*scale)+0.5;
+ luv->uv[1] = ((luv->uv[1] - 0.5) * scale) + 0.5;
}
}
}
@@ -1050,9 +1050,9 @@ static void uv_map_clip_correct(BMEditMesh *em, wmOperator *op)
BMIter iter, liter;
MLoopUV *luv;
float dx, dy, min[2], max[2];
- int correct_aspect= RNA_boolean_get(op->ptr, "correct_aspect");
- int clip_to_bounds= RNA_boolean_get(op->ptr, "clip_to_bounds");
- int scale_to_bounds= RNA_boolean_get(op->ptr, "scale_to_bounds");
+ int correct_aspect = RNA_boolean_get(op->ptr, "correct_aspect");
+ int clip_to_bounds = RNA_boolean_get(op->ptr, "clip_to_bounds");
+ int scale_to_bounds = RNA_boolean_get(op->ptr, "scale_to_bounds");
/* correct for image aspect ratio */
if (correct_aspect)
@@ -1072,13 +1072,13 @@ static void uv_map_clip_correct(BMEditMesh *em, wmOperator *op)
}
/* rescale UV to be in 1/1 */
- dx= (max[0]-min[0]);
- dy= (max[1]-min[1]);
+ dx = (max[0] - min[0]);
+ dy = (max[1] - min[1]);
if (dx > 0.0f)
- dx= 1.0f/dx;
+ dx = 1.0f / dx;
if (dy > 0.0f)
- dy= 1.0f/dy;
+ dy = 1.0f / dy;
BM_ITER(efa, &iter, em->bm, BM_FACES_OF_MESH, NULL) {
if (!BM_elem_flag_test(efa, BM_ELEM_SELECT))
@@ -1087,8 +1087,8 @@ static void uv_map_clip_correct(BMEditMesh *em, wmOperator *op)
BM_ITER(l, &liter, em->bm, BM_LOOPS_OF_FACE, efa) {
luv = CustomData_bmesh_get(&em->bm->ldata, l->head.data, CD_MLOOPUV);
- luv->uv[0] = (luv->uv[0]-min[0])*dx;
- luv->uv[1] = (luv->uv[1]-min[1])*dy;
+ luv->uv[0] = (luv->uv[0] - min[0]) * dx;
+ luv->uv[1] = (luv->uv[1] - min[1]) * dy;
}
}
}
@@ -1115,14 +1115,14 @@ void ED_unwrap_lscm(Scene *scene, Object *obedit, const short sel)
BMEditMesh *em = BMEdit_FromObject(obedit);
ParamHandle *handle;
- const short fill_holes= scene->toolsettings->uvcalc_flag & UVCALC_FILLHOLES;
- const short correct_aspect= !(scene->toolsettings->uvcalc_flag & UVCALC_NO_ASPECT_CORRECT);
+ const short fill_holes = scene->toolsettings->uvcalc_flag & UVCALC_FILLHOLES;
+ const short correct_aspect = !(scene->toolsettings->uvcalc_flag & UVCALC_NO_ASPECT_CORRECT);
const short use_subsurf = scene->toolsettings->uvcalc_flag & UVCALC_USESUBSURF;
if (use_subsurf)
handle = construct_param_handle_subsurfed(scene, em, fill_holes, sel, correct_aspect);
else
- handle= construct_param_handle(scene, em, 0, fill_holes, sel, correct_aspect);
+ handle = construct_param_handle(scene, em, 0, fill_holes, sel, correct_aspect);
param_lscm_begin(handle, PARAM_FALSE, scene->toolsettings->unwrapper == 0);
param_lscm_solve(handle);
@@ -1146,7 +1146,7 @@ static int unwrap_exec(bContext *C, wmOperator *op)
int use_subsurf = RNA_boolean_get(op->ptr, "use_subsurf_data");
int subsurf_level = RNA_int_get(op->ptr, "uv_subsurf_level");
float obsize[3], unitsize[3] = {1.0f, 1.0f, 1.0f};
- short implicit= 0;
+ short implicit = 0;
if (!uvedit_have_selection(scene, em, implicit)) {
return OPERATOR_CANCELLED;
@@ -1166,20 +1166,20 @@ static int unwrap_exec(bContext *C, wmOperator *op)
scene->toolsettings->uv_subsurf_level = subsurf_level;
- if (fill_holes) scene->toolsettings->uvcalc_flag |= UVCALC_FILLHOLES;
- else scene->toolsettings->uvcalc_flag &= ~UVCALC_FILLHOLES;
+ if (fill_holes) scene->toolsettings->uvcalc_flag |= UVCALC_FILLHOLES;
+ else scene->toolsettings->uvcalc_flag &= ~UVCALC_FILLHOLES;
- if (correct_aspect) scene->toolsettings->uvcalc_flag &= ~UVCALC_NO_ASPECT_CORRECT;
- else scene->toolsettings->uvcalc_flag |= UVCALC_NO_ASPECT_CORRECT;
+ if (correct_aspect) scene->toolsettings->uvcalc_flag &= ~UVCALC_NO_ASPECT_CORRECT;
+ else scene->toolsettings->uvcalc_flag |= UVCALC_NO_ASPECT_CORRECT;
- if (use_subsurf) scene->toolsettings->uvcalc_flag |= UVCALC_USESUBSURF;
- else scene->toolsettings->uvcalc_flag &= ~UVCALC_USESUBSURF;
+ if (use_subsurf) scene->toolsettings->uvcalc_flag |= UVCALC_USESUBSURF;
+ else scene->toolsettings->uvcalc_flag &= ~UVCALC_USESUBSURF;
/* execute unwrap */
ED_unwrap_lscm(scene, obedit, TRUE);
DAG_id_tag_update(obedit->data, 0);
- WM_event_add_notifier(C, NC_GEOM|ND_DATA, obedit->data);
+ WM_event_add_notifier(C, NC_GEOM | ND_DATA, obedit->data);
return OPERATOR_FINISHED;
}
@@ -1195,7 +1195,7 @@ void UV_OT_unwrap(wmOperatorType *ot)
ot->name = "Unwrap";
ot->description = "Unwrap the mesh of the object being edited";
ot->idname = "UV_OT_unwrap";
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
/* api callbacks */
ot->exec = unwrap_exec;
@@ -1209,9 +1209,9 @@ void UV_OT_unwrap(wmOperatorType *ot)
RNA_def_boolean(ot->srna, "correct_aspect", 1, "Correct Aspect",
"Map UVs taking image aspect ratio into account");
RNA_def_boolean(ot->srna, "use_subsurf_data", 0, "Use Subsurf Data",
- "Map UVs taking vertex position after subsurf into account");
+ "Map UVs taking vertex position after subsurf into account");
RNA_def_int(ot->srna, "uv_subsurf_level", 1, 1, 6, "SubSurf Target",
- "Number of times to subdivide before calculating UVs", 1, 6);
+ "Number of times to subdivide before calculating UVs", 1, 6);
}
/**************** Project From View operator **************/
@@ -1236,8 +1236,8 @@ static int uv_from_view_exec(bContext *C, wmOperator *op)
}
/* establish the camera object, so we can default to view mapping if anything is wrong with it */
- if ((rv3d->persp==RV3D_CAMOB) && (v3d->camera) && (v3d->camera->type==OB_CAMERA)) {
- camera= v3d->camera->data;
+ if ((rv3d->persp == RV3D_CAMOB) && (v3d->camera) && (v3d->camera->type == OB_CAMERA)) {
+ camera = v3d->camera->data;
}
if (RNA_boolean_get(op->ptr, "orthographic")) {
@@ -1254,7 +1254,7 @@ static int uv_from_view_exec(bContext *C, wmOperator *op)
}
}
else if (camera) {
- struct UvCameraInfo *uci= project_camera_info(v3d->camera, obedit->obmat, scene->r.xsch, scene->r.ysch);
+ struct UvCameraInfo *uci = project_camera_info(v3d->camera, obedit->obmat, scene->r.xsch, scene->r.ysch);
if (uci) {
BM_ITER(efa, &iter, em->bm, BM_FACES_OF_MESH, NULL) {
@@ -1287,14 +1287,14 @@ static int uv_from_view_exec(bContext *C, wmOperator *op)
uv_map_clip_correct(em, op);
DAG_id_tag_update(obedit->data, 0);
- WM_event_add_notifier(C, NC_GEOM|ND_DATA, obedit->data);
+ WM_event_add_notifier(C, NC_GEOM | ND_DATA, obedit->data);
return OPERATOR_FINISHED;
}
static int uv_from_view_poll(bContext *C)
{
- RegionView3D *rv3d= CTX_wm_region_view3d(C);
+ RegionView3D *rv3d = CTX_wm_region_view3d(C);
if (!ED_operator_uvmap(C))
return 0;
@@ -1307,7 +1307,7 @@ void UV_OT_from_view(wmOperatorType *ot)
/* identifiers */
ot->name = "Project From View";
ot->idname = "UV_OT_project_from_view";
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
/* api callbacks */
ot->exec = uv_from_view_exec;
@@ -1322,9 +1322,9 @@ void UV_OT_from_view(wmOperatorType *ot)
static int reset_exec(bContext *C, wmOperator *UNUSED(op))
{
- Scene *scene= CTX_data_scene(C);
- Object *obedit= CTX_data_edit_object(C);
- Mesh *me = (Mesh*)obedit->data;
+ Scene *scene = CTX_data_scene(C);
+ Object *obedit = CTX_data_edit_object(C);
+ Mesh *me = (Mesh *)obedit->data;
/* add uvs if they don't exist yet */
if (!ED_uvedit_ensure_uvs(C, scene, obedit)) {
@@ -1336,7 +1336,7 @@ static int reset_exec(bContext *C, wmOperator *UNUSED(op))
}
DAG_id_tag_update(obedit->data, 0);
- WM_event_add_notifier(C, NC_GEOM|ND_DATA, obedit->data);
+ WM_event_add_notifier(C, NC_GEOM | ND_DATA, obedit->data);
return OPERATOR_FINISHED;
}
@@ -1346,7 +1346,7 @@ void UV_OT_reset(wmOperatorType *ot)
/* identifiers */
ot->name = "Reset";
ot->idname = "UV_OT_reset";
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
/* api callbacks */
ot->exec = reset_exec;
@@ -1362,7 +1362,7 @@ static void uv_sphere_project(float target[2], float source[3], float center[3],
sub_v3_v3v3(pv, source, center);
mul_m4_v3(rotmat, pv);
- map_to_sphere( &target[0], &target[1],pv[0], pv[1], pv[2]);
+ map_to_sphere(&target[0], &target[1], pv[0], pv[1], pv[2]);
/* split line is always zero */
if (target[0] >= 1.0f)
@@ -1387,11 +1387,11 @@ static void uv_map_mirror(BMEditMesh *em, BMFace *efa, MTexPoly *UNUSED(tf))
}
mi = 0;
- for (i=1; i<efa->len; i++)
+ for (i = 1; i < efa->len; i++)
if (uvs[i][0] > uvs[mi][0])
mi = i;
- for (i=0; i<efa->len; i++) {
+ for (i = 0; i < efa->len; i++) {
if (i != mi) {
dx = uvs[mi][0] - uvs[i][0];
if (dx > 0.5f) uvs[i][0] += 1.0f;
@@ -1437,7 +1437,7 @@ static int sphere_project_exec(bContext *C, wmOperator *op)
uv_map_clip_correct(em, op);
DAG_id_tag_update(obedit->data, 0);
- WM_event_add_notifier(C, NC_GEOM|ND_DATA, obedit->data);
+ WM_event_add_notifier(C, NC_GEOM | ND_DATA, obedit->data);
return OPERATOR_FINISHED;
}
@@ -1447,7 +1447,7 @@ void UV_OT_sphere_project(wmOperatorType *ot)
/* identifiers */
ot->name = "Sphere Projection";
ot->idname = "UV_OT_sphere_project";
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
/* api callbacks */
ot->exec = sphere_project_exec;
@@ -1467,7 +1467,7 @@ static void uv_cylinder_project(float target[2], float source[3], float center[3
sub_v3_v3v3(pv, source, center);
mul_m4_v3(rotmat, pv);
- map_to_tube( &target[0], &target[1],pv[0], pv[1], pv[2]);
+ map_to_tube(&target[0], &target[1], pv[0], pv[1], pv[2]);
/* split line is always zero */
if (target[0] >= 1.0f)
@@ -1510,7 +1510,7 @@ static int cylinder_project_exec(bContext *C, wmOperator *op)
uv_map_clip_correct(em, op);
DAG_id_tag_update(obedit->data, 0);
- WM_event_add_notifier(C, NC_GEOM|ND_DATA, obedit->data);
+ WM_event_add_notifier(C, NC_GEOM | ND_DATA, obedit->data);
return OPERATOR_FINISHED;
}
@@ -1520,7 +1520,7 @@ void UV_OT_cylinder_project(wmOperatorType *ot)
/* identifiers */
ot->name = "Cylinder Projection";
ot->idname = "UV_OT_cylinder_project";
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
/* api callbacks */
ot->exec = cylinder_project_exec;
@@ -1551,14 +1551,14 @@ static int cube_project_exec(bContext *C, wmOperator *op)
return OPERATOR_CANCELLED;
}
- loc= obedit->obmat[3];
- cube_size= RNA_float_get(op->ptr, "cube_size");
+ loc = obedit->obmat[3];
+ cube_size = RNA_float_get(op->ptr, "cube_size");
/* choose x,y,z axis for projection depending on the largest normal
- * component, but clusters all together around the center of map. */
+ * component, but clusters all together around the center of map. */
BM_ITER(efa, &iter, em->bm, BM_FACES_OF_MESH, NULL) {
- int first=1;
+ int first = 1;
/* tf = CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_MTEXPOLY); */ /* UNUSED */
if (!BM_elem_flag_test(efa, BM_ELEM_SELECT))
@@ -1570,8 +1570,8 @@ static int cube_project_exec(bContext *C, wmOperator *op)
BM_ITER(l, &liter, em->bm, BM_LOOPS_OF_FACE, efa) {
luv = CustomData_bmesh_get(&em->bm->ldata, l->head.data, CD_MLOOPUV);
- luv->uv[0] = 0.5f+0.5f*cube_size*(loc[cox] + l->v->co[cox]);
- luv->uv[1] = 0.5f+0.5f*cube_size*(loc[coy] + l->v->co[coy]);
+ luv->uv[0] = 0.5f + 0.5f * cube_size * (loc[cox] + l->v->co[cox]);
+ luv->uv[1] = 0.5f + 0.5f * cube_size * (loc[coy] + l->v->co[coy]);
if (first) {
dx = floor(luv->uv[0]);
@@ -1588,7 +1588,7 @@ static int cube_project_exec(bContext *C, wmOperator *op)
uv_map_clip_correct(em, op);
DAG_id_tag_update(obedit->data, 0);
- WM_event_add_notifier(C, NC_GEOM|ND_DATA, obedit->data);
+ WM_event_add_notifier(C, NC_GEOM | ND_DATA, obedit->data);
return OPERATOR_FINISHED;
}
@@ -1598,7 +1598,7 @@ void UV_OT_cube_project(wmOperatorType *ot)
/* identifiers */
ot->name = "Cube Projection";
ot->idname = "UV_OT_cube_project";
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
/* api callbacks */
ot->exec = cube_project_exec;