diff options
author | Campbell Barton <ideasman42@gmail.com> | 2020-11-05 10:27:47 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2020-11-05 10:27:47 +0300 |
commit | 7bc7b7da2d2fdd48a7c8c28f7c23419ca9178b4d (patch) | |
tree | 0f530a63822d3511351cd0425bf7ef41775739eb /source/blender | |
parent | e0db650483c4843ac08017c7ce3d0ce72bf4e5ed (diff) | |
parent | 4987b7d347a885916916a888c18401ea2fe552f4 (diff) |
Merge branch 'blender-v2.91-release'
Diffstat (limited to 'source/blender')
-rw-r--r-- | source/blender/blenkernel/intern/curve.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/curve.c b/source/blender/blenkernel/intern/curve.c index a2eb65b8a04..38c1b0d9211 100644 --- a/source/blender/blenkernel/intern/curve.c +++ b/source/blender/blenkernel/intern/curve.c @@ -2184,6 +2184,22 @@ static void bevel_list_calc_bisect(BevList *bl) bevp1 = bevp2; bevp2++; } + + if (is_cyclic == false) { + bevp0 = &bl->bevpoints[0]; + bevp1 = &bl->bevpoints[1]; + sub_v3_v3v3(bevp0->dir, bevp1->vec, bevp0->vec); + if (normalize_v3(bevp0->dir) == 0.0f) { + copy_v3_v3(bevp0->dir, bevp1->dir); + } + + bevp0 = &bl->bevpoints[bl->nr - 2]; + bevp1 = &bl->bevpoints[bl->nr - 1]; + sub_v3_v3v3(bevp1->dir, bevp1->vec, bevp0->vec); + if (normalize_v3(bevp1->dir) == 0.0f) { + copy_v3_v3(bevp1->dir, bevp0->dir); + } + } } static void bevel_list_flip_tangents(BevList *bl) { |