rendered paste bodyIndex: source/blender/blenkernel/intern/lattice.c
===================================================================
RCS file: /cvsroot/bf-blender/blender/source/blender/blenkernel/intern/lattice.c,v
retrieving revision 1.40
diff -u -p -r1.40 lattice.c
--- source/blender/blenkernel/intern/lattice.c 4 Apr 2007 13:18:28 -0000 1.40
+++ source/blender/blenkernel/intern/lattice.c 13 May 2007 17:14:31 -0000
@@ -568,9 +568,15 @@ static float *calc_curve_deform(Object *
/* we want the ipo to work on the default 100 frame range, because there's no
actual time involved in path position */
if(cu->ipo) {
- fac*= 100.0f;
- if(calc_ipo_spec(cu->ipo, CU_SPEED, &fac)==0)
- fac/= 100.0;
+ IpoCurve *icu = find_ipocurve(cu->ipo, CU_SPEED);
+ if(icu) {
+ float xmax = icu->bezt[icu->totvert - 1].vec[1][0];
+ printf("icu->bezt[%d].vec[1][0] = %f\n", icu->totvert - 1,
+ icu->bezt[icu->totvert - 1].vec[1][0]);
+ fac *= xmax;
+ if(calc_ipo_spec(cu->ipo, CU_SPEED, &fac)==0)
+ fac /= xmax;
+ }
}
if( where_on_path_deform(par, fac, loc, dir)) { /* returns OK */