Class: Vector3Notifier

Vector3Notifier

new Vector3Notifier(x, y, z)

三维向量,具有 onUpdate 回调

Name Type Default Description
x Number 0 optional

X component

y Number 0 optional

Y component

z Number 0 optional

Z component

Extends

Members Show Inherited

Name Type Default Description
className String Vector3Notifier

类名 notify

isVector3Notifier Boolean true
elements Float32Array

数据

x Number

X component

y Number

Y component

z Number

Z component

isVector3 Boolean true inherited

Methods Show Inherited

更新的回调

Copy the values from one vec3 to this

Name Type Description
m Vector3

the source vector

Returns:
Type Description
Vector3 this

Creates a new vec3 initialized with values from this vec3

Returns:
Type Description
Vector3 a new Vector3

toArray(array, offset){Array}

转换到数组

Name Type Default Description
array Array.<number> | TypedArray [] optional

数组

offset Number 0 optional

数组偏移值

Returns:
Type Description
Array

fromArray(array, offset){Vector3}

从数组赋值

Name Type Default Description
array Array.<number> | TypedArray

数组

offset Number 0 optional

数组偏移值

Returns:
Type Description
Vector3 this

Set the components of a vec3 to the given values

Name Type Description
x Number

X component

y Number

Y component

z Number

Z component

Returns:
Type Description
Vector3Notifier this

Adds two vec3's

Name Type Description
a Vector3
b Vector3 optional

如果不传,计算 this 和 a 的和

Returns:
Type Description
Vector3Notifier this

Subtracts vector b from vector a

Name Type Description
a Vector3
b Vector3 optional

如果不传,计算 this 和 a 的差

Returns:
Type Description
Vector3Notifier this

Multiplies two vec3's

Name Type Description
a Vector3
b Vector3 optional

如果不传,计算 this 和 a 的积

Returns:
Type Description
Vector3Notifier this

Divides two vec3's

Name Type Description
a Vector3
b Vector3 optional

如果不传,计算 this 和 a 的商

Returns:
Type Description
Vector3Notifier this

Math.ceil the components of this

Returns:
Type Description
Vector3Notifier this

Math.floor the components of this

Returns:
Type Description
Vector3Notifier this

Returns the minimum of two vec3's

Name Type Description
a Vector3
b Vector3 optional

如果不传,计算 this 和 a 的结果

Returns:
Type Description
Vector3Notifier this

Returns the maximum of two vec3's

Name Type Description
a Vector3
b Vector3 optional

如果不传,计算 this 和 a 的结果

Returns:
Type Description
Vector3Notifier this

Math.round the components of this

Returns:
Type Description
Vector3Notifier this

Scales this by a scalar number

Name Type Description
scale Number

amount to scale the vector by

Returns:
Type Description
Vector3Notifier this

scaleAndAdd(scale, a, b){Vector3Notifier}

Adds two vec3's after scaling the second vector by a scalar value

Name Type Description
scale Number

the amount to scale the second vector by before adding

a Vector3
b Vector3 optional

如果不传,计算 this 和 a 的结果

Returns:
Type Description
Vector3Notifier this

distance(a, b){Number}

Calculates the euclidian distance between two vec3's

Name Type Description
a Vector3
b Vector3 optional

如果不传,计算 this 和 a 的结果

Returns:
Type Description
Number distance between a and b

squaredDistance(a, b){Number}

Calculates the squared euclidian distance between two vec3's

Name Type Description
a Vector3
b Vector3 optional

如果不传,计算 this 和 a 的结果

Returns:
Type Description
Number squared distance between a and b

length(){Number}

Calculates the length of this

Returns:
Type Description
Number length of this

squaredLength(){Number}

Calculates the squared length of this

Returns:
Type Description
Number squared length of this

Negates the components of this

Returns:
Type Description
Vector3Notifier this

Returns the inverse of the components of a vec3

Name Type Default Description
a Vector3 this optional
Returns:
Type Description
Vector3Notifier this

Normalize this

Returns:
Type Description
Vector3Notifier this

dot(a, b){Number}

Calculates the dot product of two vec3's

Name Type Description
a Vector3
b Vector3 optional

如果不传,计算 this 和 a 的结果

Returns:
Type Description
Number product of a and b

cross(a, b){Number}

Computes the cross product of two vec3's

Name Type Description
a Vector2
b Vector2 optional

如果不传,计算 this 和 a 的结果

Returns:
Type Description
Number cross product of a and b

Performs a linear interpolation between two vec3's

Name Type Description
v Vector3
t Number

interpolation amount between the two vectors

Returns:
Type Description
Vector3Notifier this

hermite(a, b, c, d, t){Vector3}

Performs a hermite interpolation with two control points

Name Type Description
a Vector3
b Vector3
c Vector3
d Vector3
t Number

interpolation amount between the two inputs

Returns:
Type Description
Vector3 this

bezier(a, b, c, d, t){Vector3}

Performs a bezier interpolation with two control points

Name Type Description
a Vector3
b Vector3
c Vector3
d Vector3
t Number

interpolation amount between the two inputs

Returns:
Type Description
Vector3 this

Generates a random vector with the given scale

Name Type Default Description
scale Number 1 optional

Length of the resulting vector. If ommitted, a unit vector will be returned

Returns:
Type Description
Vector3Notifier this

Transforms the vec3 with a mat3

Name Type Description
m Matrix3

matrix to transform with

Returns:
Type Description
Vector3Notifier this

Transforms the vec3 with a mat4

Name Type Description
m Matrix4

matrix to transform with

Returns:
Type Description
Vector3Notifier this

Transforms the vec3 direction with a mat4

Name Type Description
m Matrix4

matrix to transform with

Returns:
Type Description
Vector3Notifier this

Transforms the vec3 with a quat

Name Type Description
q Quaternion

quaternion to transform with

Returns:
Type Description
Vector3Notifier this

rotateX(origin, rotation){Vector3}

Rotate this 3D vector around the x-axis

Name Type Description
origin Vector3

The origin of the rotation

rotation Number

The angle of rotation

Returns:
Type Description
Vector3 this

rotateY(origin, rotation){Vector3}

Rotate this 3D vector around the y-axis

Name Type Description
origin Vector3

The origin of the rotation

rotation Number

The angle of rotation

Returns:
Type Description
Vector3 this

rotateZ(origin, rotation){Vector3}

Rotate this 3D vector around the z-axis

Name Type Description
origin Vector3

The origin of the rotation

rotation Number

The angle of rotation

Returns:
Type Description
Vector3 this

exactEquals(a, b){Boolean}

Returns whether or not the vectors have exactly the same elements in the same position (when compared with ===)

Name Type Description
a Vector3
b Vector3 optional

如果不传,计算 this 和 a 的结果

Returns:
Type Description
Boolean True if the vectors are equal, false otherwise.

equals(a, b){Boolean}

Returns whether or not the vectors have approximately the same elements in the same position.

Name Type Description
a Vector3
b Vector3 optional

如果不传,计算 this 和 a 的结果

Returns:
Type Description
Boolean True if the vectors are equal, false otherwise.

Alias for Vector3#subtract

Alias for Vector3#multiply

Alias for Vector3#divide

Alias for Vector3#distance

Alias for Vector3#length