Options
All
• Public
• Public/Protected
• All

# Class Vector3

Serializable THREE.js Vector3

• Vector3
• Vector3

## Constructors

### constructor

• new Vector3(x?: number, y?: number, z?: number): Vector3

isVector3: true

x: number

y: number

z: number

## Methods

• Adds v to this vector.

#### Returns Vector3

• addScaledVector(v: Vector3, s: number): Vector3

#### Returns Vector3

• addVectors(a: Vector3, b: Vector3): Vector3
• Sets this vector to a + b.

### angleTo

• angleTo(v: Vector3): number

### applyAxisAngle

• applyAxisAngle(axis: Vector3, angle: number): Vector3

### applyEuler

• applyEuler(euler: Euler): Vector3

### applyMatrix3

• applyMatrix3(m: Matrix3): Vector3

### applyMatrix4

• applyMatrix4(m: Matrix4): Vector3

### applyNormalMatrix

• applyNormalMatrix(m: Matrix3): Vector3

### applyQuaternion

• applyQuaternion(q: Quaternion): Vector3

### clamp

• clamp(min: Vector3, max: Vector3): Vector3

### clampLength

• clampLength(min: number, max: number): Vector3

### clampScalar

• clampScalar(min: number, max: number): Vector3

### copy

• Copies value of v to this vector.

### cross

• Sets this vector to cross product of itself and v.

### crossVectors

• crossVectors(a: Vector3, b: Vector3): Vector3
• Sets this vector to cross product of a and b.

### distanceTo

• distanceTo(v: Vector3): number
• Computes distance of this vector to v.

### distanceToManhattan

• distanceToManhattan(v: Vector3): number
• deprecated

### distanceToSquared

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

### divideScalar

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

### dot

• dot(v: Vector3): number
• Computes dot product of this vector and v.

### equals

• equals(v: Vector3): boolean
• Checks for strict equality of this vector and v.

### fromArray

• fromArray(array: number[] | ArrayLike<number>, offset?: number): Vector3
• Sets this vector's x, y and z value from the provided array or array-like.

#### Parameters

• ##### array: number[] | ArrayLike<number>

the source array or array-like.

• ##### Optional offset: number

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

### fromBufferAttribute

• fromBufferAttribute(attribute: BufferAttribute | InterleavedBufferAttribute, index: number): Vector3

### getComponent

• getComponent(index: number): number

### length

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

### lengthManhattan

• lengthManhattan(): number
• Computes Manhattan length of this vector. http://en.wikipedia.org/wiki/Taxicab_geometry

deprecated

### lengthSq

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

### lerp

• lerp(v: Vector3, alpha: number): Vector3

### lerpVectors

• lerpVectors(v1: Vector3, v2: Vector3, alpha: number): Vector3

### manhattanDistanceTo

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

### manhattanLength

• manhattanLength(): number
• Computes the Manhattan length of this vector.

### multiplyScalar

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

### multiplyVectors

• multiplyVectors(a: Vector3, b: Vector3): Vector3

### negate

• Inverts this vector.

### normalize

• Normalizes this vector.

### projectOnPlane

• projectOnPlane(planeNormal: Vector3): Vector3

### projectOnVector

• projectOnVector(v: Vector3): Vector3

### random

• Sets this vector's x, y and z from Math.random

### reflect

• reflect(vector: Vector3): Vector3

### set

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

### setComponent

• setComponent(index: number, value: number): Vector3

### setFromCylindrical

• setFromCylindrical(s: Cylindrical): Vector3

### setFromCylindricalCoords

• setFromCylindricalCoords(radius: number, theta: number, y: number): Vector3

### setFromMatrix3Column

• setFromMatrix3Column(matrix: Matrix3, index: number): Vector3

### setFromMatrixColumn

• setFromMatrixColumn(matrix: Matrix4, index: number): Vector3

### setFromMatrixPosition

• setFromMatrixPosition(m: Matrix4): Vector3

### setFromMatrixScale

• setFromMatrixScale(m: Matrix4): Vector3

### setFromSpherical

• setFromSpherical(s: Spherical): Vector3

### setFromSphericalCoords

• setFromSphericalCoords(r: number, phi: number, theta: number): Vector3

### setLength

• Normalizes this vector and multiplies it by l.

### setScalar

• setScalar(scalar: number): Vector3
• Sets all values of this vector.

### setX

• setX(x: number): Vector3
• Sets x value of this vector.

### setY

• setY(y: number): Vector3
• Sets y value of this vector.

### setZ

• setZ(z: number): Vector3
• Sets z value of this vector.

### sub

• Subtracts v from this vector.

### subVectors

• subVectors(a: Vector3, b: Vector3): Vector3
• Sets this vector to a - b.

### toArray

• toArray(array?: number[], offset?: number): number[]
• toArray(array?: Vector3Tuple, offset?: 0): Vector3Tuple
• toArray(array: ArrayLike<number>, offset?: number): ArrayLike<number>
• Returns an array [x, y, z], or copies x, y and z 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[]

The created or provided array.

#### Returns Vector3Tuple

• Copies x, y and z into the provided array-like.

#### Parameters

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

array-like to store the vector to.

• ##### Optional offset: number

(optional) optional offset into the array-like.

#### Returns ArrayLike<number>

The provided array-like.

### transformDirection

• transformDirection(m: Matrix4): Vector3

### unproject

• unproject(camera: Camera): Vector3

### Static fromArray

• fromArray(array: number[]): Vector3