While looking into bug 1696331, I noticed that interpolation from zero tangents was...
authordooglus <dooglus@1f10aa63-cdf2-0310-b900-c93c546f37ac>
Wed, 11 Apr 2007 20:01:19 +0000 (20:01 +0000)
committerdooglus <dooglus@1f10aa63-cdf2-0310-b900-c93c546f37ac>
Wed, 11 Apr 2007 20:01:19 +0000 (20:01 +0000)
git-svn-id: http://svn.voria.com/code@455 1f10aa63-cdf2-0310-b900-c93c546f37ac

synfig-core/trunk/src/synfig/valuenode_bline.cpp

index 4004136..912c4a7 100644 (file)
@@ -63,6 +63,10 @@ linear_interpolation(const Vector& a, const Vector& b, float c)
 inline Vector
 radial_interpolation(const Vector& a, const Vector& b, float c)
 {
+       // if either extreme is zero then use linear interpolation instead
+       if (a.is_equal_to(Vector::zero()) || b.is_equal_to(Vector::zero()))
+               return linear_interpolation(a, b, c);
+
        affine_combo<Real,float> mag_combo;
        affine_combo<Angle,float> ang_combo;