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:
authorHans Goudey <h.goudey@me.com>2020-05-19 23:40:53 +0300
committerHans Goudey <h.goudey@me.com>2020-05-19 23:40:53 +0300
commit8e0a57f9bd58b8325329f4cf564de0b39c98c6e3 (patch)
treea8907d02390ed9f27cb934d675296cc47d6667b4 /source/blender/bmesh
parent0a19b8a5b44e18a22d41d67b82785504eeb65ce2 (diff)
parentc554f4e14fce679e047fd8ee75368548de70d0cb (diff)
Merge branch 'blender-v2.83-release'
Diffstat (limited to 'source/blender/bmesh')
-rw-r--r--source/blender/bmesh/tools/bmesh_bevel.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/source/blender/bmesh/tools/bmesh_bevel.c b/source/blender/bmesh/tools/bmesh_bevel.c
index d1ddceb00b0..720eb34bda7 100644
--- a/source/blender/bmesh/tools/bmesh_bevel.c
+++ b/source/blender/bmesh/tools/bmesh_bevel.c
@@ -4167,6 +4167,10 @@ static int tri_corner_test(BevelParams *bp, BevVert *bv)
if (bv->vmesh->count != 3) {
return 0;
}
+
+ /* Only use the tri-corner special case if the offset is the same for every edge. */
+ float offset = bv->edges[0].offset_l;
+
totang = 0.0f;
for (i = 0; i < bv->edgecount; i++) {
e = &bv->edges[i];
@@ -4178,6 +4182,11 @@ static int tri_corner_test(BevelParams *bp, BevVert *bv)
else if (absang >= 3.0f * (float)M_PI_4) {
return -1;
}
+
+ if (e->is_bev && !compare_ff(e->offset_l, offset, BEVEL_EPSILON)) {
+ return -1;
+ }
+
totang += ang;
}
if (in_plane_e != bv->edgecount - 3) {