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:
authorCampbell Barton <ideasman42@gmail.com>2009-11-21 17:35:28 +0300
committerCampbell Barton <ideasman42@gmail.com>2009-11-21 17:35:28 +0300
commitbd1f548d8e4a47b81b03af3d50339b2fa33ff5fb (patch)
tree4e7281db29254a9cd5b22216c3d5156c48224f0d /source/blender/blenkernel/intern/anim.c
parent09cf0118790e7f38fc65c3fed523edb66c095674 (diff)
fix for [#19655] Curve is a disaster
when changing curve twist I assumed 2D curves would not need dir or quat values set, however these are used when getting a path from a curve. also added interp_v3_v3v3v3v3
Diffstat (limited to 'source/blender/blenkernel/intern/anim.c')
-rw-r--r--source/blender/blenkernel/intern/anim.c14
1 files changed, 5 insertions, 9 deletions
diff --git a/source/blender/blenkernel/intern/anim.c b/source/blender/blenkernel/intern/anim.c
index a1b138b9a74..6b8b604cb94 100644
--- a/source/blender/blenkernel/intern/anim.c
+++ b/source/blender/blenkernel/intern/anim.c
@@ -250,17 +250,13 @@ int where_on_path(Object *ob, float ctime, float *vec, float *dir, float *quat,
/* note, commented out for follow constraint */
//if(cu->flag & CU_FOLLOW) {
-
+
key_curve_tangent_weights(1.0f-fac, data, KEY_BSPLINE);
-
- dir[0]= data[0]*p0->vec[0] + data[1]*p1->vec[0] + data[2]*p2->vec[0] + data[3]*p3->vec[0] ;
- dir[1]= data[0]*p0->vec[1] + data[1]*p1->vec[1] + data[2]*p2->vec[1] + data[3]*p3->vec[1] ;
- dir[2]= data[0]*p0->vec[2] + data[1]*p1->vec[2] + data[2]*p2->vec[2] + data[3]*p3->vec[2] ;
-
+
+ interp_v3_v3v3v3v3(dir, p0->vec, p1->vec, p2->vec, p3->vec, data);
+
/* make compatible with vectoquat */
- dir[0]= -dir[0];
- dir[1]= -dir[1];
- dir[2]= -dir[2];
+ negate_v3(dir);
//}
nu= cu->nurb.first;