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:
authorSergey Sharybin <sergey.vfx@gmail.com>2014-02-14 12:58:52 +0400
committerSergey Sharybin <sergey.vfx@gmail.com>2014-02-14 12:58:52 +0400
commit54dd355cc866ecfe4583857c09ee9e8d2938428c (patch)
treeca0289fbd7558239cce7f73001308f3209bc7b7c /source/blender/blenkernel/intern/curve.c
parent7fb7ce789f803749021e8d2468f35e31783c21b1 (diff)
Fix T38562: Wrong curve tilt after Switch Direction
Diffstat (limited to 'source/blender/blenkernel/intern/curve.c')
-rw-r--r--source/blender/blenkernel/intern/curve.c9
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) {