public void AnimateInterpolatingStroke() { SPoint StartPointInFrame0 = new SPoint(0, 0); SPoint StartPointInFrame10 = new SPoint(0, 10); SPoint EndPointInFrame0 = new SPoint(100, 0); SPoint EndPointInFrame10 = new SPoint(100, 10); var controlPointAnimation = new AnimationStroke(); var s1 = StrokeFactory.CreateInterpolatingStroke(new SPoint[] { StartPointInFrame0, StartPointInFrame10 }); controlPointAnimation.AddStrokeAsTimeDependentControlPoint(s1); var s2 = StrokeFactory.CreateInterpolatingStroke(new SPoint[] { EndPointInFrame0, EndPointInFrame10 }); controlPointAnimation.AddStrokeAsTimeDependentControlPoint(s2); var s = new InterpolatingStroke(controlPointAnimation); for (int t = 0; t <= 10; t++) { Assert.IsTrue(controlPointAnimation.NextFrame()); var currentPoints = s.ToArray(); AssertAllPointsInHorizontalLine(currentPoints, t, 0, 100); } Assert.IsFalse(controlPointAnimation.NextFrame()); }
public new byte InterpolateValue(byte a, byte b, int n, int i) { return(InterpolatingStroke.InterpolateValue(a, b, n, i)); }