Vector

Vector

Source:
All of functions that related to Vector

Methods

(static) clockWiseVec(a_x, a_y, b_x, b_y) → {boolean}

Source:
Check if second vector is on the right of first vector
Example
Math.clockWiseVec(0, 5, 5, 0);
//true
Parameters:
Name Type Description
a_x number x position of first vector
a_y number y position of first vector
b_x number x position of second vector
b_y number y position of second vector
Returns:
Type
boolean

(static) crossVec(a_x, a_y, b_x, b_y) → {number}

Source:
Calculate cross product of two vectors
Example
Math.crossVec(5, 0, 5, 5);
//25
Parameters:
Name Type Description
a_x number x position of first vector
a_y number y position of first vector
b_x number x position of second vector
b_y number y position of second vector
Returns:
Type
number

(static) dotVec(a_x, a_y, b_x, b_y) → {number}

Source:
Calculate dot product of two vectors
Example
Math.dotVec(5, 0, 5, 5);
//25
Parameters:
Name Type Description
a_x number x position of first vector
a_y number y position of first vector
b_x number x position of second vector
b_y number y position of second vector
Returns:
Type
number

(static) headVec(x, y) → {number}

Source:
Calculate angle of vector
Example
Math.headVec(5, 5);
//0.7853981633974483
Parameters:
Name Type Description
x number x position
y number y position
Returns:
Angle in radians
Type
number

(static) lerpVec(a_x, a_y, b_x, b_y, scale, returnDataopt) → {Object}

Source:
Interpolates from two vectors
Example
Math.lerpVec(5, 0, 5, 5, 0.5);
//{x: 5, y: 2.5}
Parameters:
Name Type Attributes Description
a_x number x position of first vector
a_y number y position of first vector
b_x number x position of second vector
b_y number y position of second vector
scale number
returnData object <optional>
Object to put data
Returns:
Type
Object

(static) magVec(x, y, squareopt) → {number}

Source:
Calculate magnitude of vector
Example
Math.magVec(4, 0, true);
//4
Parameters:
Name Type Attributes Default Description
x number x position
y number y position
square boolean <optional>
false `false` if magnitude squared
Returns:
Type
number

(static) normVec(x, y, returnDataopt) → {Object}

Source:
Normalize vector as scaling r to 1
Example
Math.normVec(2, 0);
//{x: 1, y: 0}
Parameters:
Name Type Attributes Description
x number x position
y number y position
returnData object <optional>
Object to put data
Returns:
Type
Object

(static) perVec(x, y, returnDataopt) → {Object}

Source:
Calculate per product from vector
Example
Math.perVec(5, 0);
//{x1: -0, y1: 5, x2: 0, y2: -5}
Parameters:
Name Type Attributes Description
x number x position
y number y position
returnData object <optional>
Object to put data
Returns:
Type
Object

(static) pol(x, y, returnDataopt) → {Object}

Source:
Convert cartesian to polar coordinates
Example
Math.pol(1, 0);
//{angle: 0, radial: 1}
Parameters:
Name Type Attributes Description
x number x position
y number y position
returnData object <optional>
Object to put data
Returns:
Type
Object

(static) projVec(a_x, a_y, b_x, b_y, returnDataopt) → {Object}

Source:
Calculate projection vector from two vectors
Example
Math.projVec(5, 0, 5, 5);
//{x: 2.5, y: 2.5}
Parameters:
Name Type Attributes Description
a_x number x position of first vector
a_y number y position of first vector
b_x number x position of second vector
b_y number y position of second vector
returnData object <optional>
Object to put data
Returns:
Type
Object

(static) rec(x, y, radial, angle, returnDataopt) → {Object}

Source:
Convert polar to cartesian coordinates
Example
Math.rec(0, 0, 1, 0);
//{x: 1, y: 0}
Parameters:
Name Type Attributes Description
x number x position
y number y position
radial number r
angle number angle
returnData object <optional>
Object to put data
Returns:
Type
Object

(static) rejVec(a_x, a_y, b_x, b_y, returnDataopt) → {Object}

Source:
Calculate rejection vector from two vectors
Example
Math.rejVec(5, 0, 5, 5);
//{x: 2.5, y: -2.5}
Parameters:
Name Type Attributes Description
a_x number x position of first vector
a_y number y position of first vector
b_x number x position of second vector
b_y number y position of second vector
returnData object <optional>
Object to put data
Returns:
Type
Object

(static) revVec(x, y, returnDataopt) → {Object}

Source:
Reverse vector
Example
Math.revVec(5, 0);
//{x: -5, y: 0}
Parameters:
Name Type Attributes Description
x number x position
y number y position
returnData object <optional>
Object to put data
Returns:
Type
Object

(static) scaleVec(x, y, scale, returnDataopt) → {Object}

Source:
Scale vector
Example
Math.scaleVec(2, 0, 2);
//{x: 4, y: 0}
Parameters:
Name Type Attributes Description
x number x position
y number y position
scale number scale position
returnData object <optional>
Object to put data
Returns:
Type
Object

(static) truncVec(x, y, num, returnDataopt) → {Object}

Source:
Truncate vector to r = 1
Example
Math.truncVec(4, 0, 1);
//{x: 0.25, y: 0}
Parameters:
Name Type Attributes Description
x number x position
y number y position
num number truncate ratio
returnData object <optional>
Object to put data
Returns:
Type
Object

(static) wedgeVec(a_x, a_y, b_x, b_y) → {number}

Source:
Calculate wedge product of two vectors
Example
Math.wedgeVec(5, 0, 5, 5);
//25
Parameters:
Name Type Description
a_x number x position of first vector
a_y number y position of first vector
b_x number x position of second vector
b_y number y position of second vector
Returns:
Type
number