forked from bartvdbraak/blender
Fix nan problem in previous bevel commit.
For chains, access to g_prod[0] was undefined. And two minor style (whitespace) changes.
This commit is contained in:
parent
263efb0b9a
commit
cebc7bb198
@ -1 +1 @@
|
|||||||
Subproject commit cd65bc3277eda27e1c0b9f20a25928f6586d89a8
|
Subproject commit 469c949d1ca882be19daa128842f813b72a944d8
|
@ -1 +1 @@
|
|||||||
Subproject commit f5536e5e49c34dfc0a7b8990257cd393339e23c6
|
Subproject commit c88411ff7776a2db5d6ef6117a1b2faa42a95611
|
@ -1985,6 +1985,7 @@ static bool adjust_the_cycle_or_chain_fast(BoundVert *vstart, int np, bool iscyc
|
|||||||
g_prod[i] = gprod;
|
g_prod[i] = gprod;
|
||||||
gprod_sum += gprod;
|
gprod_sum += gprod;
|
||||||
}
|
}
|
||||||
|
g_prod[0] = 1.0f;
|
||||||
if (iscycle) {
|
if (iscycle) {
|
||||||
gprod *= g[0];
|
gprod *= g[0];
|
||||||
if (fabs(gprod - 1.0f) > BEVEL_EPSILON) {
|
if (fabs(gprod - 1.0f) > BEVEL_EPSILON) {
|
||||||
@ -1993,8 +1994,6 @@ static bool adjust_the_cycle_or_chain_fast(BoundVert *vstart, int np, bool iscyc
|
|||||||
MEM_freeN(g_prod);
|
MEM_freeN(g_prod);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
else
|
|
||||||
g_prod[0] = 1.0f;
|
|
||||||
}
|
}
|
||||||
if (gprod_sum == 0.0f) {
|
if (gprod_sum == 0.0f) {
|
||||||
MEM_freeN(g);
|
MEM_freeN(g);
|
||||||
@ -2163,7 +2162,7 @@ static void adjust_offsets(BevelParams *bp)
|
|||||||
/* first follow paired edges in left->right direction */
|
/* first follow paired edges in left->right direction */
|
||||||
v = vchainstart = vanchor;
|
v = vchainstart = vanchor;
|
||||||
iscycle = false;
|
iscycle = false;
|
||||||
while(v->eon && !v->visited && !iscycle) {
|
while (v->eon && !v->visited && !iscycle) {
|
||||||
enext = find_other_end_edge_half(bp, v->efirst, &bvcur);
|
enext = find_other_end_edge_half(bp, v->efirst, &bvcur);
|
||||||
BLI_assert(enext != NULL);
|
BLI_assert(enext != NULL);
|
||||||
vnext = enext->leftv;
|
vnext = enext->leftv;
|
||||||
@ -2191,7 +2190,7 @@ static void adjust_offsets(BevelParams *bp)
|
|||||||
vchainstart = vnext;
|
vchainstart = vnext;
|
||||||
v->visited = true;
|
v->visited = true;
|
||||||
v = vnext;
|
v = vnext;
|
||||||
} while(!v->visited && v->eon);
|
} while (!v->visited && v->eon);
|
||||||
adjust_the_cycle_or_chain(vchainstart, false);
|
adjust_the_cycle_or_chain(vchainstart, false);
|
||||||
}
|
}
|
||||||
} while ((vanchor = vanchor->next) != bv->vmesh->boundstart);
|
} while ((vanchor = vanchor->next) != bv->vmesh->boundstart);
|
||||||
|
@ -1 +1 @@
|
|||||||
Subproject commit ccf20e08702ee6424edbda01544bb9f8bc386de4
|
Subproject commit 7695e14cfc5820ac66546e0e515914d85ab81af3
|
Loading…
Reference in New Issue
Block a user