Fix #32329: inset produces incorrect result, epsilon was too small to handle
floating point error.
This commit is contained in:
@@ -283,7 +283,8 @@ void bmo_inset_exec(BMesh *bm, BMOperator *op)
|
|||||||
* cross product between both face normals */
|
* cross product between both face normals */
|
||||||
add_v3_v3v3(tvec, e_info_a->no, e_info_b->no);
|
add_v3_v3v3(tvec, e_info_a->no, e_info_b->no);
|
||||||
|
|
||||||
if ((f_a == f_b) || compare_v3v3(f_a->no, f_b->no, 0.00001f)) {
|
/* epsilon increased to fix [#32329] */
|
||||||
|
if ((f_a == f_b) || compare_v3v3(f_a->no, f_b->no, 0.001f)) {
|
||||||
normalize_v3(tvec);
|
normalize_v3(tvec);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
Reference in New Issue
Block a user