Skip to main content

Vector2

Represents a vector with two single-precision floating-point values.

let vec2 = new Vector2(x: number = 0, y: number = 0)

Instance properties​

  • x: The x component of the vector.
  • y: The y component of the vector.

Static properties​

  • One: Gets the vector (1,1).
  • UnitX: Gets the vector (1,0).
  • UnitY: Gets the vector (0,1).
  • Zero: Gets the vector (0,0).

Instance methods​

clone​

vec2.clone(): Vector2

Returns a new Vector2 with the same x, y values as this one.

equals​

vec2.equals(v: Vector2): boolean

Returns true if the components of this vector and v are strictly equal; false otherwise.

length​

vec2.length(): number

Returns the length of the vector.

lengthSqr​

vec2.lengthSqr(): number

Returns the length of the vector squared.

distance​

vec2.distanceTo(v: Vector2): number

Computes the Euclidean distance between the two given points.

distanceSqr​

vec2.distanceToSqr(v: Vector2): number

Computes the Euclidean distance squared between the two given points.

angle​

vec2.angle(): number

Return the angle in radians of this vector with respect to the positive x-axis.

Static methods​

add​

Vector2.add(v1: Vector2, v2: Vector2): Vector2

Adds two vectors together.

sub​

Vector2.sub(v1: Vector2, v2: Vector2): Vector2

Subtracts the second vector from the first.

multiply​

Vector2.multiply(v1: Vector2, v2: Vector2): Vector2

Returns a new vector whose values are the product of each pair of elements in two specified vectors.

divide​

Vector2.divide(v1: Vector2, v2: Vector2): Vector2

Divides the first vector by the second.

addScalar​

Vector2.addScalar(v: Vector2, s: number): Vector2

Adds the scalar value s to this vector's x, y values.

subScalar​

Vector2.subScalar(v: Vector2, s: number): Vector2

Subtracts the scalar value s to this vector's x, y values.

multiplyScalar​

Vector2.multiplyScalar(v: Vector2, s: number): Vector2

Multiplies a vector by a specified scalar.

divideScalar​

Vector2.divideScalar(v: Vector2, s: number): Vector2

Divides the specified vector by a specified scalar value.

dot​

Vector2.dot(v1: Vector2, v2: Vector2): Vector2

Returns the dot product of two vectors.

cross​

Vector2.cross(v1: Vector2, v2: Vector2): Vector2

Returns the cross product of two vectors.

normalize​

Vector2.normalize(v: Vector2): Vector2

Returns a vector with the same direction as the specified vector, but with a length of one.

max​

Vector2.max(v1: Vector2, v2: Vector2): Vector2

Returns a vector whose elements are the maximum of each of the pairs of elements in two specified vectors.

min​

Vector2.min(v1: Vector2, v2: Vector2): Vector2

Returns a vector whose elements are the minimum of each of the pairs of elements in two specified vectors.

lerp​

Vector2.lerp(v1: Vector2, v2: Vector2, alpha: number): Vector2

Linearly interpolate between this vector and v, where alpha is the percent distance along the line - alpha = 0 will be this vector, and alpha = 1 will be v.

clamp​

Vector2.clamp(v: Vector2, min: Vector2, max: Vector2): Vector2

Restricts a vector between a minimum and a maximum value.

negate​

Vector2.negate(v: Vector2): Vector2

Negates a specified vector.

abs​

Vector2.abs(v: Vector2): Vector2

Returns a vector whose elements are the absolute values of each of the specified vector's elements.

applyMat3​

Vector2.applyMat3(v: Vector2, m: Matrix3): Vector2

Transforms a vector by a specified 3x3 matrix.

applyMat4​

Vector2.applyMat4(v: Vector2, m: Matrix4): Vector2

Transforms a vector by a specified 4x4 matrix.

applyQuat​

Vector2.applyQuat(v: Vector2, q: Quaternion): Vector2

Transforms a vector by the specified Quaternion rotation value.