diff options
Diffstat (limited to 'source/blender')
-rw-r--r-- | source/blender/blenkernel/intern/curve.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/curve.c b/source/blender/blenkernel/intern/curve.c index 8567a57d153..2454c104755 100644 --- a/source/blender/blenkernel/intern/curve.c +++ b/source/blender/blenkernel/intern/curve.c @@ -3519,6 +3519,9 @@ void BKE_nurb_direction_switch(Nurb *nu) bezt1->alfa = -bezt1->alfa; bezt2->alfa = -bezt2->alfa; } + else { + bezt1->alfa = -bezt1->alfa; + } a--; bezt1++; bezt2--; @@ -3537,6 +3540,12 @@ void BKE_nurb_direction_switch(Nurb *nu) bp1++; bp2--; } + /* If there're odd number of points no need to touch coord of middle one, + * but still need to change it's tilt. + */ + if (nu->pntsu & 1) { + bp1->alfa = -bp1->alfa; + } if (nu->type == CU_NURBS) { /* no knots for too short paths */ if (nu->knotsu) { |