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:
Diffstat (limited to 'source/blender/editors/mesh/mesh_navmesh.c')
-rw-r--r--source/blender/editors/mesh/mesh_navmesh.c297
1 files changed, 149 insertions, 148 deletions
diff --git a/source/blender/editors/mesh/mesh_navmesh.c b/source/blender/editors/mesh/mesh_navmesh.c
index 02ef1540cc1..f1b0a82b654 100644
--- a/source/blender/editors/mesh/mesh_navmesh.c
+++ b/source/blender/editors/mesh/mesh_navmesh.c
@@ -85,89 +85,90 @@ static void createVertsTrisData(bContext *C, LinkNode *obs, int *nverts_r, float
ntris = 0;
/* calculate number of verts and tris */
- for (oblink = obs; oblink; oblink= oblink->next) {
- ob= (Object*) oblink->link;
- dm= mesh_create_derived_no_virtual(scene, ob, NULL, CD_MASK_MESH);
- BLI_linklist_append(&dms, (void*)dm);
+ for (oblink = obs; oblink; oblink = oblink->next) {
+ ob = (Object *) oblink->link;
+ dm = mesh_create_derived_no_virtual(scene, ob, NULL, CD_MASK_MESH);
+ BLI_linklist_append(&dms, (void *)dm);
- nverts+= dm->getNumVerts(dm);
- nfaces= dm->getNumTessFaces(dm);
- ntris+= nfaces;
+ nverts += dm->getNumVerts(dm);
+ nfaces = dm->getNumTessFaces(dm);
+ ntris += nfaces;
/* resolve quad faces */
- mface= dm->getTessFaceArray(dm);
- for (i= 0; i<nfaces; i++) {
- MFace *mf= &mface[i];
+ mface = dm->getTessFaceArray(dm);
+ for (i = 0; i < nfaces; i++) {
+ MFace *mf = &mface[i];
if (mf->v4)
- ntris+=1;
+ ntris += 1;
}
}
/* create data */
- verts= MEM_mallocN(sizeof(float)*3*nverts, "createVertsTrisData verts");
- tris= MEM_mallocN(sizeof(int)*3*ntris, "createVertsTrisData faces");
+ verts = MEM_mallocN(sizeof(float) * 3 * nverts, "createVertsTrisData verts");
+ tris = MEM_mallocN(sizeof(int) * 3 * ntris, "createVertsTrisData faces");
- basenverts= 0;
- tri= tris;
- for (oblink= obs, dmlink= dms; oblink && dmlink;
- oblink= oblink->next, dmlink= dmlink->next) {
- ob= (Object*) oblink->link;
- dm= (DerivedMesh*) dmlink->link;
+ basenverts = 0;
+ tri = tris;
+ for (oblink = obs, dmlink = dms; oblink && dmlink;
+ oblink = oblink->next, dmlink = dmlink->next)
+ {
+ ob = (Object *) oblink->link;
+ dm = (DerivedMesh *) dmlink->link;
- curnverts= dm->getNumVerts(dm);
- mvert= dm->getVertArray(dm);
+ curnverts = dm->getNumVerts(dm);
+ mvert = dm->getVertArray(dm);
/* copy verts */
- for (i= 0; i<curnverts; i++) {
- MVert *v= &mvert[i];
+ for (i = 0; i < curnverts; i++) {
+ MVert *v = &mvert[i];
copy_v3_v3(co, v->co);
mul_v3_m4v3(wco, ob->obmat, co);
- verts[3*(basenverts+i)+0]= wco[0];
- verts[3*(basenverts+i)+1]= wco[2];
- verts[3*(basenverts+i)+2]= wco[1];
+ verts[3 * (basenverts + i) + 0] = wco[0];
+ verts[3 * (basenverts + i) + 1] = wco[2];
+ verts[3 * (basenverts + i) + 2] = wco[1];
}
/* create tris */
- curnfaces= dm->getNumTessFaces(dm);
- mface= dm->getTessFaceArray(dm);
+ curnfaces = dm->getNumTessFaces(dm);
+ mface = dm->getTessFaceArray(dm);
- for (i= 0; i<curnfaces; i++) {
- MFace *mf= &mface[i];
+ for (i = 0; i < curnfaces; i++) {
+ MFace *mf = &mface[i];
- tri[0]= basenverts + mf->v1;
- tri[1]= basenverts + mf->v3;
- tri[2]= basenverts + mf->v2;
+ tri[0] = basenverts + mf->v1;
+ tri[1] = basenverts + mf->v3;
+ tri[2] = basenverts + mf->v2;
tri += 3;
if (mf->v4) {
- tri[0]= basenverts + mf->v1;
- tri[1]= basenverts + mf->v4;
- tri[2]= basenverts + mf->v3;
+ tri[0] = basenverts + mf->v1;
+ tri[1] = basenverts + mf->v4;
+ tri[2] = basenverts + mf->v3;
tri += 3;
}
}
- basenverts+= curnverts;
+ basenverts += curnverts;
}
/* release derived mesh */
- for (dmlink= dms; dmlink; dmlink= dmlink->next) {
- dm= (DerivedMesh*) dmlink->link;
+ for (dmlink = dms; dmlink; dmlink = dmlink->next) {
+ dm = (DerivedMesh *) dmlink->link;
dm->release(dm);
}
BLI_linklist_free(dms, NULL);
- *nverts_r= nverts;
- *verts_r= verts;
- *ntris_r= ntris;
- *tris_r= tris;
+ *nverts_r = nverts;
+ *verts_r = verts;
+ *ntris_r = ntris;
+ *tris_r = tris;
}
static int buildNavMesh(const RecastData *recastParams, int nverts, float *verts, int ntris, int *tris,
- struct recast_polyMesh **pmesh, struct recast_polyMeshDetail **dmesh)
+ struct recast_polyMesh **pmesh, struct recast_polyMeshDetail **dmesh)
{
float bmin[3], bmax[3];
struct recast_heightfield *solid;
@@ -181,22 +182,22 @@ static int buildNavMesh(const RecastData *recastParams, int nverts, float *verts
recast_calcBounds(verts, nverts, bmin, bmax);
/* ** Step 1. Initialize build config ** */
- walkableHeight= (int)ceilf(recastParams->agentheight/ recastParams->cellheight);
- walkableClimb= (int)floorf(recastParams->agentmaxclimb / recastParams->cellheight);
- walkableRadius= (int)ceilf(recastParams->agentradius / recastParams->cellsize);
- minRegionArea= (int)(recastParams->regionminsize * recastParams->regionminsize);
- mergeRegionArea= (int)(recastParams->regionmergesize * recastParams->regionmergesize);
- maxEdgeLen= (int)(recastParams->edgemaxlen/recastParams->cellsize);
- detailSampleDist= recastParams->detailsampledist< 0.9f ? 0 :
- recastParams->cellsize * recastParams->detailsampledist;
- detailSampleMaxError= recastParams->cellheight * recastParams->detailsamplemaxerror;
+ walkableHeight = (int)ceilf(recastParams->agentheight / recastParams->cellheight);
+ walkableClimb = (int)floorf(recastParams->agentmaxclimb / recastParams->cellheight);
+ walkableRadius = (int)ceilf(recastParams->agentradius / recastParams->cellsize);
+ minRegionArea = (int)(recastParams->regionminsize * recastParams->regionminsize);
+ mergeRegionArea = (int)(recastParams->regionmergesize * recastParams->regionmergesize);
+ maxEdgeLen = (int)(recastParams->edgemaxlen / recastParams->cellsize);
+ detailSampleDist = recastParams->detailsampledist < 0.9f ? 0 :
+ recastParams->cellsize * recastParams->detailsampledist;
+ detailSampleMaxError = recastParams->cellheight * recastParams->detailsamplemaxerror;
/* Set the area where the navigation will be build. */
recast_calcGridSize(bmin, bmax, recastParams->cellsize, &width, &height);
/* ** Step 2: Rasterize input polygon soup ** */
/* Allocate voxel heightfield where we rasterize our input data to */
- solid= recast_newHeightfield();
+ solid = recast_newHeightfield();
if (!recast_createHeightfield(solid, width, height, bmin, bmax, recastParams->cellsize, recastParams->cellheight)) {
recast_destroyHeightfield(solid);
@@ -205,7 +206,7 @@ static int buildNavMesh(const RecastData *recastParams, int nverts, float *verts
}
/* Allocate array that can hold triangle flags */
- triflags= MEM_callocN(sizeof(unsigned char)*ntris, "buildNavMesh triflags");
+ triflags = MEM_callocN(sizeof(unsigned char) * ntris, "buildNavMesh triflags");
/* Find triangles which are walkable based on their slope and rasterize them */
recast_markWalkableTriangles(RAD2DEG(recastParams->agentmaxslope), verts, nverts, tris, ntris, triflags);
@@ -219,7 +220,7 @@ static int buildNavMesh(const RecastData *recastParams, int nverts, float *verts
/* ** Step 4: Partition walkable surface to simple regions ** */
- chf= recast_newCompactHeightfield();
+ chf = recast_newCompactHeightfield();
if (!recast_buildCompactHeightfield(walkableHeight, walkableClimb, solid, chf)) {
recast_destroyHeightfield(solid);
recast_destroyCompactHeightfield(chf);
@@ -252,7 +253,7 @@ static int buildNavMesh(const RecastData *recastParams, int nverts, float *verts
/* ** Step 5: Trace and simplify region contours ** */
/* Create contours */
- cset= recast_newContourSet();
+ cset = recast_newContourSet();
if (!recast_buildContours(chf, recastParams->edgemaxerror, maxEdgeLen, cset)) {
recast_destroyCompactHeightfield(chf);
@@ -262,7 +263,7 @@ static int buildNavMesh(const RecastData *recastParams, int nverts, float *verts
}
/* ** Step 6: Build polygons mesh from contours ** */
- *pmesh= recast_newPolyMesh();
+ *pmesh = recast_newPolyMesh();
if (!recast_buildPolyMesh(cset, recastParams->vertsperpoly, *pmesh)) {
recast_destroyCompactHeightfield(chf);
recast_destroyContourSet(cset);
@@ -274,7 +275,7 @@ static int buildNavMesh(const RecastData *recastParams, int nverts, float *verts
/* ** Step 7: Create detail mesh which allows to access approximate height on each polygon ** */
- *dmesh= recast_newPolyMeshDetail();
+ *dmesh = recast_newPolyMeshDetail();
if (!recast_buildPolyMeshDetail(*pmesh, chf, detailSampleDist, detailSampleMaxError, *dmesh)) {
recast_destroyCompactHeightfield(chf);
recast_destroyContourSet(cset);
@@ -294,12 +295,12 @@ static Object *createRepresentation(bContext *C, struct recast_polyMesh *pmesh,
{
float co[3], rot[3];
BMEditMesh *em;
- int i,j, k;
+ int i, j, k;
unsigned short *v;
int face[3];
- Scene *scene= CTX_data_scene(C);
+ Scene *scene = CTX_data_scene(C);
Object *obedit;
- int createob= base==NULL;
+ int createob = base == NULL;
int nverts, nmeshes, nvp;
unsigned short *verts, *polys;
unsigned int *meshes;
@@ -311,33 +312,33 @@ static Object *createRepresentation(bContext *C, struct recast_polyMesh *pmesh,
if (createob) {
/* create new object */
- obedit= ED_object_add_type(C, OB_MESH, co, rot, FALSE, 1);
+ obedit = ED_object_add_type(C, OB_MESH, co, rot, FALSE, 1);
}
else {
- obedit= base->object;
+ obedit = base->object;
scene_select_base(scene, base);
copy_v3_v3(obedit->loc, co);
copy_v3_v3(obedit->rot, rot);
}
- ED_object_enter_editmode(C, EM_DO_UNDO|EM_IGNORE_LAYER);
+ ED_object_enter_editmode(C, EM_DO_UNDO | EM_IGNORE_LAYER);
em = BMEdit_FromObject(obedit);
if (!createob) {
/* clear */
- EDBM_ClearMesh(em);
+ EDBM_mesh_clear(em);
}
/* create verts for polygon mesh */
- verts= recast_polyMeshGetVerts(pmesh, &nverts);
+ verts = recast_polyMeshGetVerts(pmesh, &nverts);
recast_polyMeshGetBoundbox(pmesh, bmin, NULL);
recast_polyMeshGetCell(pmesh, &cs, &ch);
- for (i= 0; i<nverts; i++) {
- v= &verts[3*i];
- co[0]= bmin[0] + v[0]*cs;
- co[1]= bmin[1] + v[1]*ch;
- co[2]= bmin[2] + v[2]*cs;
+ for (i = 0; i < nverts; i++) {
+ v = &verts[3 * i];
+ co[0] = bmin[0] + v[0] * cs;
+ co[1] = bmin[1] + v[1] * ch;
+ co[2] = bmin[2] + v[2] * cs;
SWAP(float, co[1], co[2]);
BM_vert_create(em->bm, co, NULL);
}
@@ -346,74 +347,74 @@ static Object *createRepresentation(bContext *C, struct recast_polyMesh *pmesh,
CustomData_add_layer_named(&em->bm->pdata, CD_RECAST, CD_CALLOC, NULL, 0, "createRepresentation recastData");
/* create verts and faces for detailed mesh */
- meshes= recast_polyMeshDetailGetMeshes(dmesh, &nmeshes);
- polys= recast_polyMeshGetPolys(pmesh, NULL, &nvp);
- dverts= recast_polyMeshDetailGetVerts(dmesh, NULL);
- tris= recast_polyMeshDetailGetTris(dmesh, NULL);
-
- for (i= 0; i<nmeshes; i++) {
- int uniquevbase= em->bm->totvert;
- unsigned int vbase= meshes[4*i+0];
- unsigned short ndv= meshes[4*i+1];
- unsigned short tribase= meshes[4*i+2];
- unsigned short trinum= meshes[4*i+3];
- const unsigned short *p= &polys[i*nvp*2];
- int nv= 0;
-
- for (j= 0; j < nvp; ++j) {
- if (p[j]==0xffff) break;
+ meshes = recast_polyMeshDetailGetMeshes(dmesh, &nmeshes);
+ polys = recast_polyMeshGetPolys(pmesh, NULL, &nvp);
+ dverts = recast_polyMeshDetailGetVerts(dmesh, NULL);
+ tris = recast_polyMeshDetailGetTris(dmesh, NULL);
+
+ for (i = 0; i < nmeshes; i++) {
+ int uniquevbase = em->bm->totvert;
+ unsigned int vbase = meshes[4 * i + 0];
+ unsigned short ndv = meshes[4 * i + 1];
+ unsigned short tribase = meshes[4 * i + 2];
+ unsigned short trinum = meshes[4 * i + 3];
+ const unsigned short *p = &polys[i * nvp * 2];
+ int nv = 0;
+
+ for (j = 0; j < nvp; ++j) {
+ if (p[j] == 0xffff) break;
nv++;
}
/* create unique verts */
- for (j= nv; j<ndv; j++) {
- copy_v3_v3(co, &dverts[3*(vbase + j)]);
+ for (j = nv; j < ndv; j++) {
+ copy_v3_v3(co, &dverts[3 * (vbase + j)]);
SWAP(float, co[1], co[2]);
BM_vert_create(em->bm, co, NULL);
}
- EDBM_init_index_arrays(em, 1, 0, 0);
+ EDBM_index_arrays_init(em, 1, 0, 0);
/* create faces */
- for (j= 0; j<trinum; j++) {
- unsigned char *tri= &tris[4*(tribase+j)];
+ for (j = 0; j < trinum; j++) {
+ unsigned char *tri = &tris[4 * (tribase + j)];
BMFace *newFace;
int *polygonIdx;
- for (k= 0; k<3; k++) {
- if (tri[k]<nv)
- face[k] = p[tri[k]]; /* shared vertex */
+ for (k = 0; k < 3; k++) {
+ if (tri[k] < nv)
+ face[k] = p[tri[k]]; /* shared vertex */
else
- face[k] = uniquevbase+tri[k]-nv; /* unique vertex */
+ face[k] = uniquevbase + tri[k] - nv; /* unique vertex */
}
- newFace= BM_face_create_quad_tri(em->bm,
- EDBM_get_vert_for_index(em, face[0]),
- EDBM_get_vert_for_index(em, face[2]),
- EDBM_get_vert_for_index(em, face[1]), NULL,
- NULL, FALSE);
+ newFace = BM_face_create_quad_tri(em->bm,
+ EDBM_vert_at_index(em, face[0]),
+ EDBM_vert_at_index(em, face[2]),
+ EDBM_vert_at_index(em, face[1]), NULL,
+ NULL, FALSE);
/* set navigation polygon idx to the custom layer */
- polygonIdx= (int*)CustomData_bmesh_get(&em->bm->pdata, newFace->head.data, CD_RECAST);
- *polygonIdx= i+1; /* add 1 to avoid zero idx */
+ polygonIdx = (int *)CustomData_bmesh_get(&em->bm->pdata, newFace->head.data, CD_RECAST);
+ *polygonIdx = i + 1; /* add 1 to avoid zero idx */
}
- EDBM_free_index_arrays(em);
+ EDBM_index_arrays_free(em);
}
recast_destroyPolyMesh(pmesh);
recast_destroyPolyMeshDetail(dmesh);
- DAG_id_tag_update((ID*)obedit->data, OB_RECALC_DATA);
- WM_event_add_notifier(C, NC_GEOM|ND_DATA, obedit->data);
+ DAG_id_tag_update((ID *)obedit->data, OB_RECALC_DATA);
+ WM_event_add_notifier(C, NC_GEOM | ND_DATA, obedit->data);
ED_object_exit_editmode(C, EM_FREEDATA);
- WM_event_add_notifier(C, NC_OBJECT|ND_DRAW, obedit);
+ WM_event_add_notifier(C, NC_OBJECT | ND_DRAW, obedit);
if (createob) {
- obedit->gameflag&= ~OB_COLLISION;
- obedit->gameflag|= OB_NAVMESH;
- obedit->body_type= OB_BODY_TYPE_NAVMESH;
+ obedit->gameflag &= ~OB_COLLISION;
+ obedit->gameflag |= OB_NAVMESH;
+ obedit->body_type = OB_BODY_TYPE_NAVMESH;
rename_id((ID *)obedit, "Navmesh");
}
@@ -424,31 +425,31 @@ static Object *createRepresentation(bContext *C, struct recast_polyMesh *pmesh,
static int navmesh_create_exec(bContext *C, wmOperator *op)
{
- Scene *scene= CTX_data_scene(C);
- LinkNode *obs= NULL;
- Base *navmeshBase= NULL;
+ Scene *scene = CTX_data_scene(C);
+ LinkNode *obs = NULL;
+ Base *navmeshBase = NULL;
CTX_DATA_BEGIN(C, Base*, base, selected_editable_bases) {
if (base->object->type == OB_MESH) {
- if (base->object->body_type==OB_BODY_TYPE_NAVMESH) {
+ if (base->object->body_type == OB_BODY_TYPE_NAVMESH) {
if (!navmeshBase || base == scene->basact) {
- navmeshBase= base;
+ navmeshBase = base;
}
}
else {
- BLI_linklist_append(&obs, (void*)base->object);
+ BLI_linklist_append(&obs, (void *)base->object);
}
}
}
CTX_DATA_END;
if (obs) {
- struct recast_polyMesh *pmesh= NULL;
- struct recast_polyMeshDetail *dmesh= NULL;
+ struct recast_polyMesh *pmesh = NULL;
+ struct recast_polyMeshDetail *dmesh = NULL;
- int nverts= 0, ntris= 0;
- int *tris= 0;
- float *verts= NULL;
+ int nverts = 0, ntris = 0;
+ int *tris = 0;
+ float *verts = NULL;
createVertsTrisData(C, obs, &nverts, &verts, &ntris, &tris);
BLI_linklist_free(obs, NULL);
@@ -478,7 +479,7 @@ void MESH_OT_navmesh_make(wmOperatorType *ot)
ot->exec = navmesh_create_exec;
/* flags */
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
}
static int navmesh_face_copy_exec(bContext *C, wmOperator *op)
@@ -487,20 +488,20 @@ static int navmesh_face_copy_exec(bContext *C, wmOperator *op)
BMEditMesh *em = BMEdit_FromObject(obedit);
/* do work here */
- BMFace *efa_act= BM_active_face_get(em->bm, FALSE);
+ BMFace *efa_act = BM_active_face_get(em->bm, FALSE);
if (efa_act) {
if (CustomData_has_layer(&em->bm->pdata, CD_RECAST)) {
BMFace *efa;
BMIter iter;
- int targetPolyIdx= *(int*)CustomData_bmesh_get(&em->bm->pdata, efa_act->head.data, CD_RECAST);
- targetPolyIdx= targetPolyIdx>=0? targetPolyIdx : -targetPolyIdx;
+ int targetPolyIdx = *(int *)CustomData_bmesh_get(&em->bm->pdata, efa_act->head.data, CD_RECAST);
+ targetPolyIdx = targetPolyIdx >= 0 ? targetPolyIdx : -targetPolyIdx;
if (targetPolyIdx > 0) {
/* set target poly idx to other selected faces */
BM_ITER(efa, &iter, em->bm, BM_FACES_OF_MESH, NULL) {
if (BM_elem_flag_test(efa, BM_ELEM_SELECT) && efa != efa_act) {
- int *recastDataBlock = (int*)CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_RECAST);
+ int *recastDataBlock = (int *)CustomData_bmesh_get(&em->bm->pdata, efa->head.data, CD_RECAST);
*recastDataBlock = targetPolyIdx;
}
}
@@ -511,8 +512,8 @@ static int navmesh_face_copy_exec(bContext *C, wmOperator *op)
}
}
- DAG_id_tag_update((ID*)obedit->data, OB_RECALC_DATA);
- WM_event_add_notifier(C, NC_GEOM|ND_DATA, obedit->data);
+ DAG_id_tag_update((ID *)obedit->data, OB_RECALC_DATA);
+ WM_event_add_notifier(C, NC_GEOM | ND_DATA, obedit->data);
return OPERATOR_FINISHED;
}
@@ -529,27 +530,27 @@ void MESH_OT_navmesh_face_copy(struct wmOperatorType *ot)
ot->exec = navmesh_face_copy_exec;
/* flags */
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
}
-static int compare(const void * a, const void * b)
+static int compare(const void *a, const void *b)
{
- return ( *(int*)a - *(int*)b );
+ return (*(int *)a - *(int *)b);
}
static int findFreeNavPolyIndex(BMEditMesh *em)
{
/* construct vector of indices */
int numfaces = em->bm->totface;
- int *indices = MEM_callocN(sizeof(int)*numfaces, "findFreeNavPolyIndex(indices)");
+ int *indices = MEM_callocN(sizeof(int) * numfaces, "findFreeNavPolyIndex(indices)");
BMFace *ef;
BMIter iter;
- int i, idx = em->bm->totface-1, freeIdx = 1;
+ int i, idx = em->bm->totface - 1, freeIdx = 1;
/*XXX this originally went last to first, but that isn't possible anymore*/
BM_ITER(ef, &iter, em->bm, BM_FACES_OF_MESH, NULL) {
- int polyIdx = *(int*)CustomData_bmesh_get(&em->bm->pdata, ef->head.data, CD_RECAST);
- indices[idx]= polyIdx;
+ int polyIdx = *(int *)CustomData_bmesh_get(&em->bm->pdata, ef->head.data, CD_RECAST);
+ indices[idx] = polyIdx;
idx--;
}
@@ -557,10 +558,10 @@ static int findFreeNavPolyIndex(BMEditMesh *em)
/* search first free index */
freeIdx = 1;
- for (i = 0; i<numfaces; i++) {
- if (indices[i]==freeIdx)
+ for (i = 0; i < numfaces; i++) {
+ if (indices[i] == freeIdx)
freeIdx++;
- else if (indices[i]>freeIdx)
+ else if (indices[i] > freeIdx)
break;
}
@@ -579,21 +580,21 @@ static int navmesh_face_add_exec(bContext *C, wmOperator *UNUSED(op))
if (CustomData_has_layer(&em->bm->pdata, CD_RECAST)) {
int targetPolyIdx = findFreeNavPolyIndex(em);
- if (targetPolyIdx>0) {
+ if (targetPolyIdx > 0) {
/* set target poly idx to selected faces */
/*XXX this originally went last to first, but that isn't possible anymore*/
BM_ITER(ef, &iter, em->bm, BM_FACES_OF_MESH, NULL) {
if (BM_elem_flag_test(ef, BM_ELEM_SELECT)) {
- int *recastDataBlock = (int*)CustomData_bmesh_get(&em->bm->pdata, ef->head.data, CD_RECAST);
+ int *recastDataBlock = (int *)CustomData_bmesh_get(&em->bm->pdata, ef->head.data, CD_RECAST);
*recastDataBlock = targetPolyIdx;
}
}
}
}
- DAG_id_tag_update((ID*)obedit->data, OB_RECALC_DATA);
- WM_event_add_notifier(C, NC_GEOM|ND_DATA, obedit->data);
+ DAG_id_tag_update((ID *)obedit->data, OB_RECALC_DATA);
+ WM_event_add_notifier(C, NC_GEOM | ND_DATA, obedit->data);
return OPERATOR_FINISHED;
}
@@ -610,7 +611,7 @@ void MESH_OT_navmesh_face_add(struct wmOperatorType *ot)
ot->exec = navmesh_face_add_exec;
/* flags */
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
}
static int navmesh_obmode_data_poll(bContext *C)
@@ -642,7 +643,7 @@ static int navmesh_reset_exec(bContext *C, wmOperator *UNUSED(op))
BKE_mesh_ensure_navmesh(me);
DAG_id_tag_update(&me->id, OB_RECALC_DATA);
- WM_event_add_notifier(C, NC_GEOM|ND_DATA, &me->id);
+ WM_event_add_notifier(C, NC_GEOM | ND_DATA, &me->id);
return OPERATOR_FINISHED;
}
@@ -659,7 +660,7 @@ void MESH_OT_navmesh_reset(struct wmOperatorType *ot)
ot->exec = navmesh_reset_exec;
/* flags */
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
}
static int navmesh_clear_exec(bContext *C, wmOperator *UNUSED(op))
@@ -670,7 +671,7 @@ static int navmesh_clear_exec(bContext *C, wmOperator *UNUSED(op))
CustomData_free_layers(&me->pdata, CD_RECAST, me->totpoly);
DAG_id_tag_update(&me->id, OB_RECALC_DATA);
- WM_event_add_notifier(C, NC_GEOM|ND_DATA, &me->id);
+ WM_event_add_notifier(C, NC_GEOM | ND_DATA, &me->id);
return OPERATOR_FINISHED;
}
@@ -687,5 +688,5 @@ void MESH_OT_navmesh_clear(struct wmOperatorType *ot)
ot->exec = navmesh_clear_exec;
/* flags */
- ot->flag = OPTYPE_REGISTER|OPTYPE_UNDO;
+ ot->flag = OPTYPE_REGISTER | OPTYPE_UNDO;
}