Options
All
  • Public
  • Public/Protected
  • All
Menu

2D vector.

( class Vector2 implements Vector )

Hierarchy

  • Vector2

Implements

Index

Constructors

constructor

  • new Vector2(x?: number, y?: number): Vector2
  • Parameters

    • Optional x: number
    • Optional y: number

    Returns Vector2

Properties

x

x: number

y

y: number

Methods

add

  • Adds v to this vector.

    Parameters

    Returns Vector2

addScalar

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

    Parameters

    • s: number

    Returns Vector2

addScaledVector

  • Adds the multiple of v and s to this vector.

    Parameters

    Returns Vector2

addVectors

  • Sets this vector to a + b.

    Parameters

    Returns Vector2

angle

  • angle(): number
  • computes the angle in radians with respect to the positive x-axis

    Returns number

applyMatrix3

  • Multiplies this vector (with an implicit 1 as the 3rd component) by m.

    Parameters

    Returns Vector2

ceil

  • The x and y components of the vector are rounded up to the nearest integer value.

    Returns Vector2

clamp

  • If this vector's x or y value is greater than the max vector's x or y value, it is replaced by the corresponding value. If this vector's x or y value is less than the min vector's x or y value, it is replaced by the corresponding value.

    Parameters

    • min: Vector2

      the minimum x and y values.

    • max: Vector2

      the maximum x and y values in the desired range.

    Returns Vector2

clampLength

  • clampLength(min: number, max: number): Vector2
  • If this vector's length is greater than the max value, it is replaced by the max value. If this vector's length is less than the min value, it is replaced by the min value.

    Parameters

    • min: number

      the minimum value the length will be clamped to.

    • max: number

      the maximum value the length will be clamped to.

    Returns Vector2

clampScalar

  • clampScalar(min: number, max: number): Vector2
  • If this vector's x or y values are greater than the max value, they are replaced by the max value. If this vector's x or y values are less than the min value, they are replaced by the min value.

    Parameters

    • min: number

      the minimum value the components will be clamped to.

    • max: number

      the maximum value the components will be clamped to.

    Returns Vector2

clone

  • clone(): this
  • Clones this vector.

    Returns this

copy

  • copy(v: this): this
  • Copies value of v to this vector.

    Parameters

    • v: this

    Returns this

distanceTo

  • Computes distance of this vector to v.

    Parameters

    Returns number

distanceToManhattan

  • distanceToManhattan(v: Vector2): number
  • deprecated

    Use {@link Vector2#manhattanDistanceTo .manhattanDistanceTo()} instead.

    Parameters

    Returns number

distanceToSquared

  • distanceToSquared(v: Vector2): number
  • Computes squared distance of this vector to v.

    Parameters

    Returns number

divide

  • Divides this vector by v.

    Parameters

    Returns Vector2

divideScalar

  • Divides this vector by scalar s. Set vector to ( 0, 0 ) if s == 0.

    Parameters

    • s: number

    Returns Vector2

dot

  • Computes dot product of this vector and v.

    Parameters

    Returns number

equals

  • Checks for strict equality of this vector and v.

    Parameters

    Returns boolean

floor

  • The components of the vector are rounded down to the nearest integer value.

    Returns Vector2

fromArray

  • fromArray(array: number[], offset?: number): Vector2
  • Sets this vector's x value to be array[offset] and y value to be array[offset + 1].

    Parameters

    • array: number[]

      the source array.

    • Optional offset: number

      (optional) offset into the array. Default is 0.

    Returns Vector2

getComponent

  • getComponent(index: number): number
  • Gets a component of this vector.

    Parameters

    • index: number

    Returns number

length

  • length(): number
  • Computes length of this vector.

    Returns number

lengthManhattan

  • lengthManhattan(): number
  • deprecated

    Use {@link Vector2#manhattanLength .manhattanLength()} instead.

    Returns number

lengthSq

  • lengthSq(): number
  • Computes squared length of this vector.

    Returns number

lerp

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

    Parameters

    • v: Vector2

      vector to interpolate towards.

    • alpha: number

      interpolation factor in the closed interval [0, 1].

    Returns Vector2

lerpVectors

  • Sets this vector to be the vector linearly interpolated between v1 and v2 where alpha is the distance along the line connecting the two vectors - alpha = 0 will be v1, and alpha = 1 will be v2.

    Parameters

    • v1: Vector2

      the starting vector.

    • v2: Vector2

      vector to interpolate towards.

    • alpha: number

      interpolation factor in the closed interval [0, 1].

    Returns Vector2

manhattanDistanceTo

  • manhattanDistanceTo(v: Vector2): number
  • Computes the Manhattan length (distance) from this vector to the given vector v

    see

    Wikipedia: Taxicab Geometry

    Parameters

    Returns number

manhattanLength

  • manhattanLength(): number

max

  • If this vector's x or y value is less than v's x or y value, replace that value with the corresponding max value.

    Parameters

    Returns Vector2

min

  • If this vector's x or y value is greater than v's x or y value, replace that value with the corresponding min value.

    Parameters

    Returns Vector2

multiply

  • Multiplies this vector by v.

    Parameters

    Returns Vector2

multiplyScalar

  • multiplyScalar(scalar: number): Vector2
  • Multiplies this vector by scalar s.

    Parameters

    • scalar: number

    Returns Vector2

negate

  • Inverts this vector.

    Returns Vector2

normalize

rotateAround

  • Rotates the vector around center by angle radians.

    Parameters

    • center: Vector2

      the point around which to rotate.

    • angle: number

      the angle to rotate, in radians.

    Returns Vector2

round

  • The components of the vector are rounded to the nearest integer value.

    Returns Vector2

roundToZero

  • The components of the vector are rounded towards zero (up if negative, down if positive) to an integer value.

    Returns Vector2

set

  • set(x: number, y: number): Vector2
  • Sets value of this vector.

    Parameters

    • x: number
    • y: number

    Returns Vector2

setComponent

  • setComponent(index: number, value: number): void
  • Sets a component of this vector.

    Parameters

    • index: number
    • value: number

    Returns void

setLength

  • setLength(length: number): Vector2
  • Normalizes this vector and multiplies it by l.

    Parameters

    • length: number

    Returns Vector2

setScalar

  • setScalar(scalar: number): Vector2
  • Sets the x and y values of this vector both equal to scalar.

    Parameters

    • scalar: number

    Returns Vector2

setX

  • Sets X component of this vector.

    Parameters

    • x: number

    Returns Vector2

setY

  • Sets Y component of this vector.

    Parameters

    • y: number

    Returns Vector2

sub

  • Subtracts v from this vector.

    Parameters

    Returns Vector2

subScalar

  • Subtracts s from this vector's x and y components.

    Parameters

    • s: number

    Returns Vector2

subVectors

  • Sets this vector to a - b.

    Parameters

    Returns Vector2

toArray

  • toArray(array?: number[], offset?: number): number[]
  • Returns an array [x, y], or copies x and y into the provided array.

    Parameters

    • Optional array: number[]

      (optional) array to store the vector to. If this is not provided, a new array will be created.

    • Optional offset: number

      (optional) optional offset into the array.

    Returns number[]

Generated using TypeDoc