rendered paste bodydynamic class classes.MovieClipAnimations.Point
{
var x:Number = null;
var y:Number = null;
static function random(w:Number, h:Number):Point
{
return new Point(Math.round(Math.random()*w), Math.round(Math.random()*h));
}
function Point(x:Number, y:Number)
{
this.x = x;
this.y = y;
}
function translate(p:Point, m:Number)
{
if (typeof m == "undefined") m = 1;
this.x += m * p.x;
this.y += m * p.y;
}
function negate():Point
{
return new Point(-this.x, -this.y);
}
function distance(p:Point):Number
{
return Math.sqrt(Math.pow(this.x - p.x, 2) + Math.pow(this.y - p.y, 2));
}
function midpoint(p:Point):Point
{
return new Point((this.x + p.x)/2, (this.y + p.y)/2);
}
function equals(p:Point):Boolean
{
return(Boolean(x == p.x && y == p.y));
}
function getPointFromSlop(degrees:Number, distance:Number):Point
{
var angle:Number = degrees * (Math.PI / 180);
return(new Point(distance * Math.cos(angle) + this.x, -(distance * Math.sin(angle)) + this.y));
}
function toString()
{
return "Point[x=" + Math.round(this.x) + ",y=" + Math.round(this.y) + "]";
}
}