Class Vec2

Two-dimensional vector (point).

Methods (like Vec2.multiply, Vec2.add) generally mutate the instance. Create new instances with Vec2.clone.

Implements

Constructors

Properties

x: number = 0

X component.

y: number = 0

Y component.

Accessors

  • get degrees(): number

    Degrees relativ to X axis.

    Returns number

  • get length(): number

    Length.

    Returns number

  • get lengthSquared(): number

    Squared length.

    Returns number

  • get max(): number

    Get greater of x or y.

    Returns number

  • get min(): number

    Get lesser of x or y.

    Returns number

  • get radians(): number

    Radians relativ to X axis.

    Returns number

  • set xy(xy: number): void

    Set both x and y.

    Parameters

    • xy: number

    Returns void

Methods

  • Add components.

    Parameters

    • x: number
    • Optionaly: number

    Returns this

    Self

  • Clamp all components.

    Parameters

    • min: number = 0

      Min

    • max: number = 1

      Max

    Returns this

    Self

  • Clamp x and y separately.

    Parameters

    • minX: number = 0

      Min X

    • minY: number = 0

      Min Y

    • maxX: number = 0

      Max X

    • maxY: number = 0

      Max Y

    Returns this

    Self

  • Parameters

    • epsilon: number = Number.EPSILON

    Returns boolean

  • Apply anchor relative to rects dimensions to this vec.

    Parameters

    Returns this

    Self

    const r = new Rect(10, 10, 20, 20);

    // v.x === 30, v.y === 20
    const v = new Vec2().copyAnchorPointFrom(r, { x: 1, y: 0.5 });
  • Copy components into a typed array.

    Parameters

    • array: TypedArray

      Typed array

    • offset: number = 0

      Element offset

    Returns void

  • Cross product.

    Parameters

    • x: number
    • Optionaly: number

    Returns number

    Cross product

  • Get angle between this and (x, y) from origin.

    Parameters

    • x: number
    • Optionaly: number

    Returns number

    Angle in degrees

  • Get angle of the vector between this and (x, y).

    Parameters

    • x: number
    • Optionaly: number

    Returns number

    Angle in degrees

  • Divide by components.

    Parameters

    • x: number
    • Optionaly: number

    Returns this

  • Make this vector the result of (x, y) / this vector.

    Parameters

    • x: number
    • Optionaly: number

    Returns this

    Self

  • Dot product.

    Parameters

    • x: number
    • Optionaly: number

    Returns number

    Dot product.

  • Check equality of components.

    Parameters

    • x: number
    • y: number
    • epsilon: number = Number.EPSILON

      Tolerance

    Returns boolean

    true if equal within tolerance

  • Make all components absolute.

    Returns this

    Self

  • Make this vector the direction vector between this and (x, y).

    Parameters

    • x: number
    • Optionaly: number

    Returns this

    Self

  • Make this vector the direction vector between this and vec.

    Parameters

    Returns this

    Self

  • Multiply components.

    Parameters

    • x: number
    • Optionaly: number

    Returns this

    Self

  • Project this vector onto the vector defined by x and y.

    Parameters

    • x: number

      X

    • Optionaly: number

      Y

    Returns this

    Self

  • Get angle between this and (x, y) from origin.

    Parameters

    • x: number
    • Optionaly: number

    Returns number

    Angle in radians

  • Get angle of the vector between this and (x, y).

    Parameters

    • x: number
    • Optionaly: number

    Returns number

    Angle in radians

  • Rotate this vector around a point.

    Parameters

    • degrees: number

      Amount to rotate in degrees

    • Optionalcx: number

      Center x

    • Optionalcy: number

      Center y

    Returns this

    Self

  • Rotate this vector around a point.

    Parameters

    • degrees: number

      Amount to rotate in radians

    • center: Vec2Like

      Center

    Returns this

    Self

  • Rotate this vector around a point.

    Parameters

    • radians: number

      Amount to rotate in radians

    • Optionalcx: number

      Center x

    • Optionalcy: number

      Center y

    Returns this

    Self

  • Rotate this vector around a point.

    Parameters

    • radians: number

      Amount to rotate in radians

    • center: Vec2Like

      Center

    Returns this

    Self

  • Set components.

    Parameters

    • x: number

      X value

    • Optionaly: number

      Y value, uses x if omitted

    Returns this

    Self

  • Subtract components.

    Parameters

    • x: number
    • Optionaly: number

    Returns this

    Self

  • Make this vector the result of (x, y) - this vector.

    Parameters

    • x: number
    • Optionaly: number

    Returns this

    Self

  • Returns a string representation of an object.

    Returns string