Options
All
• Public
• Public/Protected
• All

# Class Vector4

Vector4 class created for EulerAngle class conversion to Quaternion

• Vector4

## Constructors

### constructor

• new Vector4(x: number, y: number, z: number, w: number): Vector4
• Creates a Vector4 object from the given floats.

#### Parameters

• ##### x: number

x value of the vector

• ##### y: number

y value of the vector

• ##### z: number

z value of the vector

• ##### w: number

w value of the vector

## Properties

### w

w: number

w value of the vector

### x

x: number

x value of the vector

### y

y: number

y value of the vector

### z

z: number

z value of the vector

## Methods

• Returns a new Vector4 as the result of the addition of the current Vector4 and the given one.

#### Returns Vector4

the resulting vector

• Adds the given vector to the current Vector4.

#### Returns Vector4

the updated Vector4.

• Updates the given vector "result" with the result of the addition of the current Vector4 and the given one.

#### Parameters

• ##### result: Vector4

the vector to store the result

#### Returns Vector4

the current Vector4.

### asArray

• asArray(): number[]
• Returns a new array populated with 4 elements : the Vector4 coordinates.

#### Returns number[]

the resulting array

### clone

• Returns a new Vector4 copied from the current one.

#### Returns Vector4

the new cloned vector

### copyFrom

• Updates the current Vector4 with the given one coordinates.

#### Parameters

• ##### source: Vector4

the source vector to copy from

#### Returns Vector4

the updated Vector4.

### copyFromFloats

• copyFromFloats(x: number, y: number, z: number, w: number): Vector4
• Updates the current Vector4 coordinates with the given floats.

#### Parameters

• ##### x: number

float to copy from

• ##### y: number

float to copy from

• ##### z: number

float to copy from

• ##### w: number

float to copy from

#### Returns Vector4

the updated Vector4.

### divide

• Returns a new Vector4 set with the division result of the current Vector4 by the given one.

#### Parameters

• ##### otherVector: Vector4

vector to devide with

#### Returns Vector4

resulting new vector

### divideInPlace

• Divides the current Vector3 coordinates by the given ones.

#### Parameters

• ##### otherVector: Vector4

vector to devide with

#### Returns Vector4

the updated Vector3.

### divideToRef

• Updates the given vector "result" with the division result of the current Vector4 by the given one.

#### Parameters

• ##### otherVector: Vector4

vector to devide with

• ##### result: Vector4

vector to store the result

#### Returns Vector4

the current Vector4.

### equals

• equals(otherVector: Vector4): boolean
• Boolean : True if the current Vector4 coordinates are stricly equal to the given ones.

#### Parameters

• ##### otherVector: Vector4

the vector to compare against

#### Returns boolean

true if they are equal

### equalsToFloats

• equalsToFloats(x: number, y: number, z: number, w: number): boolean
• Boolean : True if the given floats are strictly equal to the current Vector4 coordinates.

#### Parameters

• ##### x: number

x value to compare against

• ##### y: number

y value to compare against

• ##### z: number

z value to compare against

• ##### w: number

w value to compare against

#### Returns boolean

true if equal

### equalsWithEpsilon

• equalsWithEpsilon(otherVector: Vector4, epsilon?: number): boolean
• Boolean : True if the current Vector4 coordinates are each beneath the distance "epsilon" from the given vector ones.

#### Parameters

• ##### otherVector: Vector4

vector to compare against

• ##### Optional epsilon: number

(Default: very small number)

#### Returns boolean

true if they are equal

### floor

• Gets a new Vector4 from current Vector4 floored values

#### Returns Vector4

a new Vector4

### fract

• Gets a new Vector4 from current Vector3 floored values

#### Returns Vector4

a new Vector4

### getClassName

• getClassName(): string
• Returns the string "Vector4".

"Vector4"

### getHashCode

• getHashCode(): number
• Returns the Vector4 hash code.

#### Returns number

a unique hash code

### length

• length(): number
• Returns the Vector4 length (float).

the length

### lengthSquared

• lengthSquared(): number
• Returns the Vector4 squared length (float).

#### Returns number

the length squared

### maximizeInPlace

• Updates the Vector4 coordinates with the maximum values between its own and the given vector ones

#### Parameters

• ##### other: Vector4

defines the second operand

#### Returns Vector4

the current updated Vector4

### minimizeInPlace

• Updates the Vector4 coordinates with the minimum values between its own and the given vector ones

#### Parameters

• ##### other: Vector4

defines the second operand

#### Returns Vector4

the current updated Vector4

### multiply

• Returns a new Vector4 set with the multiplication result of the current Vector4 and the given one.

#### Parameters

• ##### otherVector: Vector4

vector to multiple with

#### Returns Vector4

resulting new vector

### multiplyByFloats

• multiplyByFloats(x: number, y: number, z: number, w: number): Vector4
• Returns a new Vector4 set with the multiplication result of the given floats and the current Vector4 coordinates.

#### Parameters

• ##### x: number

x value multiply with

• ##### y: number

y value multiply with

• ##### z: number

z value multiply with

• ##### w: number

w value multiply with

#### Returns Vector4

resulting new vector

### multiplyInPlace

• Multiplies in place the current Vector4 by the given one.

#### Parameters

• ##### otherVector: Vector4

vector to multiple with

#### Returns Vector4

the updated Vector4.

### multiplyToRef

• Updates the given vector "result" with the multiplication result of the current Vector4 and the given one.

#### Parameters

• ##### otherVector: Vector4

vector to multiple with

• ##### result: Vector4

vector to store the result

#### Returns Vector4

the current Vector4.

### negate

• Returns a new Vector4 set with the current Vector4 negated coordinates.

#### Returns Vector4

a new vector with the negated values

### normalize

• Normalizes in place the Vector4.

#### Returns Vector4

the updated Vector4.

### scale

• Returns a new Vector4 set with the current Vector4 coordinates multiplied by scale (float).

#### Parameters

• ##### scale: number

the number to scale with

#### Returns Vector4

a new vector with the result

• Scale the current Vector4 values by a factor and add the result to a given Vector4

#### Parameters

• ##### scale: number

defines the scale factor

• ##### result: Vector4

defines the Vector4 object where to store the result

#### Returns Vector4

the unmodified current Vector4

### scaleInPlace

• scaleInPlace(scale: number): Vector4
• Multiplies the current Vector4 coordinates by scale (float).

#### Parameters

• ##### scale: number

the number to scale with

#### Returns Vector4

the updated Vector4.

### scaleToRef

• Sets the given vector "result" with the current Vector4 coordinates multiplied by scale (float).

#### Parameters

• ##### scale: number

the number to scale with

• ##### result: Vector4

a vector to store the result in

#### Returns Vector4

the current Vector4.

### set

• set(x: number, y: number, z: number, w: number): Vector4
• Updates the current Vector4 coordinates with the given floats.

#### Parameters

• ##### x: number

float to set from

• ##### y: number

float to set from

• ##### z: number

float to set from

• ##### w: number

float to set from

#### Returns Vector4

the updated Vector4.

### setAll

• Copies the given float to the current Vector3 coordinates

#### Parameters

• ##### v: number

defines the x, y, z and w coordinates of the operand

#### Returns Vector4

the current updated Vector3

### subtract

• Returns a new Vector4 with the result of the subtraction of the given vector from the current Vector4.

#### Returns Vector4

the new vector with the result

### subtractFromFloats

• subtractFromFloats(x: number, y: number, z: number, w: number): Vector4
• Returns a new Vector4 set with the result of the subtraction of the given floats from the current Vector4 coordinates.

#### Parameters

• ##### x: number

value to subtract

• ##### y: number

value to subtract

• ##### z: number

value to subtract

• ##### w: number

value to subtract

#### Returns Vector4

new vector containing the result

### subtractFromFloatsToRef

• subtractFromFloatsToRef(x: number, y: number, z: number, w: number, result: Vector4): Vector4
• Sets the given vector "result" set with the result of the subtraction of the given floats from the current Vector4 coordinates.

#### Parameters

• ##### x: number

value to subtract

• ##### y: number

value to subtract

• ##### z: number

value to subtract

• ##### w: number

value to subtract

• ##### result: Vector4

the vector to store the result in

#### Returns Vector4

the current Vector4.

### subtractInPlace

• Subtract in place the given vector from the current Vector4.

#### Parameters

• ##### otherVector: Vector4

the vector to subtract

#### Returns Vector4

the updated Vector4.

### subtractToRef

• Sets the given vector "result" with the result of the subtraction of the given vector from the current Vector4.

#### Parameters

• ##### otherVector: Vector4

the vector to subtract

• ##### result: Vector4

the vector to store the result

#### Returns Vector4

the current Vector4.

### toArray

• toArray(array: FloatArray, index?: number): Vector4
• Populates the given array from the given index with the Vector4 coordinates.

#### Parameters

• ##### array: FloatArray

array to populate

• ##### Optional index: number

index of the array to start at (default: 0)

the Vector4.

### toJSON

• toJSON(): { w: number; x: number; y: number; z: number }
• Returns a JSON representation of this vector. This is necessary due to the way Actors detect changes on components like the actor's transform. They do this by adding properties for observation, and we don't want these properties serialized.

### toString

• toString(): string
• Returns the string with the Vector4 coordinates.

#### Returns string

a string containing all the vector values

### toVector3

• Returns a new Vector3 from the Vector4 (x, y, z) coordinates.

#### Returns Vector3

this converted to a new vector3

### Static Center

• Returns a new Vector4 located at the center between the vectors "value1" and "value2".

#### Parameters

• ##### value1: Vector4

value to calulate the center between

• ##### value2: Vector4

value to calulate the center between

#### Returns Vector4

the center between the two vectors

### Static Distance

• Returns the distance (float) between the vectors "value1" and "value2".

#### Parameters

• ##### value1: Vector4

value to calulate the distance between

• ##### value2: Vector4

value to calulate the distance between

#### Returns number

the distance between the two vectors

### Static DistanceSquared

• Returns the squared distance (float) between the vectors "value1" and "value2".

#### Parameters

• ##### value1: Vector4

value to calulate the distance between

• ##### value2: Vector4

value to calulate the distance between

#### Returns number

the distance between the two vectors squared

### Static FromArray

• FromArray(array: ArrayLike<number>, offset?: number): Vector4
• Returns a new Vector4 set from the starting index of the given array.

#### Parameters

• ##### array: ArrayLike<number>

the array to pull values from

• ##### Optional offset: number

the offset into the array to start at

#### Returns Vector4

the new vector

### Static FromArrayToRef

• FromArrayToRef(array: ArrayLike<number>, offset: number, result: Vector4): void
• Updates the given vector "result" from the starting index of the given array.

#### Parameters

• ##### array: ArrayLike<number>

the array to pull values from

• ##### offset: number

the offset into the array to start at

• ##### result: Vector4

the vector to store the result in

### Static FromFloatArrayToRef

• FromFloatArrayToRef(array: Float32Array, offset: number, result: Vector4): void
• Updates the given vector "result" from the starting index of the given Float32Array.

#### Parameters

• ##### array: Float32Array

the array to pull values from

• ##### offset: number

the offset into the array to start at

• ##### result: Vector4

the vector to store the result in

### Static FromFloatsToRef

• FromFloatsToRef(x: number, y: number, z: number, w: number, result: Vector4): void
• Updates the given vector "result" coordinates from the given floats.

#### Parameters

• ##### x: number

float to set from

• ##### y: number

float to set from

• ##### z: number

float to set from

• ##### w: number

float to set from

• ##### result: Vector4

the vector to the floats in

### Static Maximize

• Returns a vector with the maximum values from the left and right vectors

#### Parameters

• ##### left: Vector4

left vector to maximize

• ##### right: Vector4

right vector to maximize

#### Returns Vector4

a new vector with the maximum of the left and right vector values

### Static Minimize

• Returns a vector with the minimum values from the left and right vectors

#### Parameters

• ##### left: Vector4

left vector to minimize

• ##### right: Vector4

right vector to minimize

#### Returns Vector4

a new vector with the minimum of the left and right vector values

### Static Normalize

• Returns a new normalized Vector4 from the given one.

#### Parameters

• ##### vector: Vector4

the vector to normalize

the vector

### Static NormalizeToRef

• Updates the given vector "result" from the normalization of the given one.

#### Parameters

• ##### vector: Vector4

the vector to normalize

• ##### result: Vector4

the vector to store the result in

### Static One

• Returns a new Vector4 set to (1.0, 1.0, 1.0, 1.0)

#### Returns Vector4

the new vector

### Static TransformNormal

• Returns a new Vector4 set with the result of the normal transformation by the given matrix of the given vector. This methods computes transformed normalized direction vectors only.

#### Parameters

• ##### vector: Vector4

the vector to transform

• ##### transformation: Matrix

the transformation matrix to apply

#### Returns Vector4

the new vector

### Static TransformNormalFromFloatsToRef

• TransformNormalFromFloatsToRef(x: number, y: number, z: number, w: number, transformation: Matrix, result: Vector4): void
• Sets the given vector "result" with the result of the normal transformation by the given matrix of the given floats (x, y, z, w). This methods computes transformed normalized direction vectors only.

#### Parameters

• ##### x: number

value to transform

• ##### y: number

value to transform

• ##### z: number

value to transform

• ##### w: number

value to transform

• ##### transformation: Matrix

the transformation matrix to apply

• ##### result: Vector4

the vector to store the results in

### Static TransformNormalToRef

• Sets the given vector "result" with the result of the normal transformation by the given matrix of the given vector. This methods computes transformed normalized direction vectors only.

#### Parameters

• ##### vector: Vector4

the vector to transform

• ##### transformation: Matrix

the transformation matrix to apply

• ##### result: Vector4

the vector to store the result in

### Static Zero

• Returns a new Vector4 set to (0.0, 0.0, 0.0, 0.0)

#### Returns Vector4

the new vector