home *** CD-ROM | disk | FTP | other *** search
- package com.lofiminds.gm
- {
- public class Vector
- {
-
-
- public var x:Number;
-
- public var y:Number;
-
- public function Vector(param1:Number = 0, param2:Number = 0)
- {
- super();
- x = param1;
- y = param2;
- }
-
- public function cross(param1:Vector) : Number
- {
- return x * param1.y - y * param1.x;
- }
-
- public function magnitude() : Number
- {
- return Math.sqrt(x * x + y * y);
- }
-
- public function divEquals(param1:Number) : Vector
- {
- if(param1 == 0)
- {
- param1 = 0.0001;
- }
- x /= param1;
- y /= param1;
- return this;
- }
-
- public function times(param1:Vector) : Vector
- {
- return new Vector(x * param1.x,y * param1.y);
- }
-
- public function plusEquals(param1:Vector) : Vector
- {
- x += param1.x;
- y += param1.y;
- return this;
- }
-
- public function dot(param1:Vector) : Number
- {
- return x * param1.x + y * param1.y;
- }
-
- public function toString() : String
- {
- return x + " : " + y;
- }
-
- public function normalize() : Vector
- {
- var _loc1_:Number = magnitude();
- if(_loc1_ == 0)
- {
- _loc1_ = 0.0001;
- }
- return mult(1 / _loc1_);
- }
-
- public function minusEquals(param1:Vector) : Vector
- {
- x -= param1.x;
- y -= param1.y;
- return this;
- }
-
- public function copy(param1:Vector) : void
- {
- x = param1.x;
- y = param1.y;
- }
-
- public function multEquals(param1:Number) : Vector
- {
- x *= param1;
- y *= param1;
- return this;
- }
-
- public function minus(param1:Vector) : Vector
- {
- return new Vector(x - param1.x,y - param1.y);
- }
-
- public function plus(param1:Vector) : Vector
- {
- return new Vector(x + param1.x,y + param1.y);
- }
-
- public function distance(param1:Vector) : Number
- {
- var _loc2_:Vector = this.minus(param1);
- return _loc2_.magnitude();
- }
-
- public function setTo(param1:Number, param2:Number) : void
- {
- x = param1;
- y = param2;
- }
-
- public function mult(param1:Number) : Vector
- {
- return new Vector(x * param1,y * param1);
- }
- }
- }
-