diff options
author | Campbell Barton <ideasman42@gmail.com> | 2019-08-29 15:59:21 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2019-08-29 16:11:18 +0300 |
commit | 7745c6e35c39ef9c2f4bb9472e52feb9aec5dd7b (patch) | |
tree | d825068dc67be835c5ee1c1c0e344b70be0d148e /source/blender/bmesh/tools/bmesh_beautify.c | |
parent | 7f23c914781268977b464a3c0dcba2f89e01dc36 (diff) |
Fix T56532: Boolean locks up Blender
Actual issue is with triangle beautify,
avoid precision error by scaling the epsilon
by the face area when it's over 1
The mesh in the report was very large (approx 2000 on each side),
causing precision issues with a fixed epsilon.
Diffstat (limited to 'source/blender/bmesh/tools/bmesh_beautify.c')
-rw-r--r-- | source/blender/bmesh/tools/bmesh_beautify.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/source/blender/bmesh/tools/bmesh_beautify.c b/source/blender/bmesh/tools/bmesh_beautify.c index 5d511374989..dabdbc3c97a 100644 --- a/source/blender/bmesh/tools/bmesh_beautify.c +++ b/source/blender/bmesh/tools/bmesh_beautify.c @@ -199,7 +199,7 @@ static float bm_edge_calc_rotate_beauty__area(const float v1[3], * Allowing to rotate out of a degenerate state can flip the faces * (when performed iteratively). */ - return BLI_polyfill_beautify_quad_rotate_calc_ex(v1_xy, v2_xy, v3_xy, v4_xy, true); + return BLI_polyfill_beautify_quad_rotate_calc_ex(v1_xy, v2_xy, v3_xy, v4_xy, true, NULL); } while (false); return FLT_MAX; |