I have been doing some tests and was just wonder what is better in the long run.
1. Using flashes built in Point object.
2. Using MathCode:function Util_Distance1(Object1 : Object, Object2 : Object) : Number { import flash.geom.Point; var p1 : Point = new Point(Object1._x, Object1._y); var p2 : Point = new Point(Object2._x, Object2._y) var result_distance : Number = Point.distance(p1,p2); delete p1; delete p2; return result_distance; }
The test I have ran both return 0 as the timed result.Code:function Util_Distance2(Object1 : Object, Object2 : Object) : Number { xdist = Object2._x - Object1._x; ydist = Object2._y - Object1._y; return Math.sqrt(xdist * xdist + ydist * ydist); }
So my question is, which of the two functions would give any performance?
Full Code
Code:function Util_Distance1(Object1 : Object, Object2 : Object) : Number { import flash.geom.Point; var p1 : Point = new Point(Object1._x, Object1._y); var p2 : Point = new Point(Object2._x, Object2._y) var result_distance : Number = Point.distance(p1,p2); delete p1; delete p2; return result_distance; } function Util_Distance2(Object1 : Object, Object2 : Object) : Number { xdist = Object2._x - Object1._x; ydist = Object2._y - Object1._y; return Math.sqrt(xdist * xdist + ydist * ydist); } var StartTime:Number = getTimer(); var resultDistance : Number = Util_Distance1(Player1, Player2); var EndTime:Number = getTimer(); trace ("Using Geom") trace ("Distance: " + resultDistance); trace ("Duration: " + (EndTime - StartTime) + " (ms)"); StartTime = getTimer(); resultDistance = Util_Distance2(Player1, Player2); EndTime = getTimer(); trace ("Using Math") trace ("Distance: " + resultDistance); trace ("Duration: " + (EndTime - StartTime) + " (ms)");




Reply With Quote