package utils
{
import flash.geom.Point;
import spark.effects.interpolation.IInterpolator;
public class PointInterpolator implements IInterpolator
{
public function interpolate(fraction:Number, startValue:Object, endValue:Object):Object
{
var startPoint:Point = Point(startValue);
var endPoint:Point = Point(endValue);
return new Point(startPoint.x + fraction * (endPoint.x - startPoint.x),
startPoint.y + fraction * (endPoint.y - startPoint.y));
}
public function increment(baseValue:Object, incrementValue:Object):Object
{
var basePoint:Point = Point(baseValue);
var incrementPoint:Point = Point(incrementValue);
return new Point(basePoint.x + incrementPoint.x,
basePoint.y + incrementPoint.y);
}
public function decrement(baseValue:Object, decrementValue:Object):Object
{
var basePoint:Point = Point(baseValue);
var decrementPoint:Point = Point(decrementValue);
return new Point(basePoint.x - decrementPoint.x,
basePoint.y - decrementPoint.y);
}
}
}