Skip to main content

Class: Vector4

四维向量,四维向量表示的是一个有顺序的、四个为一组的数字组合,可以用来描述:

  • 一个位于四维空间中的点。
  • 一个在四维空间中的方向与长度的定义。
const a = new Vector4(0, 1, 0);

const b = new Vector4(0, 0, 0);

const d = a.distanceTo(b);

Hierarchy

  • default

    Vector4

Table of contents

Constructors

Properties

Accessors

Methods

Constructors

constructor

new Vector4(x?, y?, z?, w?): Vector4

Parameters

NameTypeDefault valueDescription
xnumber0向量的x值,默认为0
ynumber0向量的y值,默认为0
znumber0向量的z值,默认为0
wnumber0向量的w值,默认为0

Returns

Vector4

Overrides

Vector.constructor

Defined in

src/math/Vector4.ts:49

Properties

elements

elements: Float32Array | Float64Array

Overrides

Vector.elements

Defined in

src/math/Vector4.ts:41

Accessors

x

get x(): number

获取向量 x 值

Returns

number

number;

Defined in

src/math/Vector4.ts:62

set x(x): void

设置向量 x 值

Parameters

NameType
xnumber

Returns

void

Defined in

src/math/Vector4.ts:70


y

get y(): number

获取向量 y 值

Returns

number

number;

Defined in

src/math/Vector4.ts:78

set y(y): void

设置向量 y 值

Parameters

NameType
ynumber

Returns

void

Defined in

src/math/Vector4.ts:86


z

get z(): number

获取向量 z 值

Returns

number

number;

Defined in

src/math/Vector4.ts:94

set z(z): void

设置向量 z 值

Parameters

NameType
znumber

Returns

void

Defined in

src/math/Vector4.ts:102


w

get w(): number

获取向量 w 值

Returns

number

number;

Defined in

src/math/Vector4.ts:110

set w(w): void

设置向量 w 值

Parameters

NameType
wnumber

Returns

void

Defined in

src/math/Vector4.ts:118

Methods

fromArray

fromArray(array, offset?): Vector4

从数组构建向量数据

Parameters

NameTypeDefault valueDescription
arrayanyundefined原始数组
offsetnumber0数组偏移量

Returns

Vector4

Inherited from

Vector.fromArray

Defined in

src/math/Vector.ts:15


toArray

toArray(out?, offset?): Float32Array | Float64Array | number[]

从向量转换到数组

Parameters

NameTypeDefault valueDescription
outFloat32Array | Float64Array | number[][]输出数据
offsetnumber0偏移量

Returns

Float32Array | Float64Array | number[]

Inherited from

Vector.toArray

Defined in

src/math/Vector.ts:28


fromObject

fromObject(object): Vector4

从对象赋值 Vector3 的 x、y、z、w 值

Parameters

NameType
objectany

Returns

Vector4

Defined in

src/math/Vector4.ts:126


toObject

toObject(): Object

转换到对象

Returns

Object

NameType
xnumber
ynumber
znumber
wnumber

Defined in

src/math/Vector4.ts:138


set

set(x, y, z, w): Vector4

设置向量的 x、y、z、w

Parameters

NameType
xany
yany
zany
wany

Returns

Vector4

Defined in

src/math/Vector4.ts:154


setScalar

setScalar(s): Vector4

将向量的每个值设置为标量 s

Parameters

NameType
sany

Returns

Vector4

Defined in

src/math/Vector4.ts:163


add

add(vec): Vector4

将传入的向量vec和这个向量相加,会改变当前向量

Parameters

NameTypeDescription
vecVector4传入的 Vector4

Returns

Vector4

Defined in

src/math/Vector4.ts:171


addScalar

addScalar(v): Vector4

将传入的标量量 v 和这个向量相加,会改变当前向量

Parameters

NameTypeDescription
vany传入的 标量值

Returns

Vector4

Defined in

src/math/Vector4.ts:180


subtract

subtract(vec): Vector4

从此向量减去 vec 四维向量

Parameters

NameTypeDescription
vecVector4传入的 Vector4

Returns

Vector4

Defined in

src/math/Vector4.ts:189


subtractScalar

subtractScalar(v): Vector4

从此向量各分量减去标量 v,默认构建一个四维向量 [v, v, v, v]

Parameters

NameTypeDescription
vany标量值

Returns

Vector4

Defined in

src/math/Vector4.ts:198


subVectors

subVectors(a, b): Vector4

将向量 a 与向量 b 相减后的向量赋值给此向量

Parameters

NameType
aVector4
bVector4

Returns

Vector4

Defined in

src/math/Vector4.ts:208


multiply

multiply(vec): Vector4

将此向量与 vec 向量相乘

Parameters

NameType
vecVector4

Returns

Vector4

Defined in

src/math/Vector4.ts:217


multiplyScalar

multiplyScalar(v): Vector4

从此向量各分量与标量 v 相乘,默认构建一个四维向量 [v, v, v, v]

Parameters

NameTypeDescription
vnumber标量值

Returns

Vector4

Defined in

src/math/Vector4.ts:226


divide

divide(vec): Vector4

将此向量与 vec 向量相除

Parameters

NameType
vecVector4

Returns

Vector4

Defined in

src/math/Vector4.ts:235


divideScalar

divideScalar(v): Vector4

从此向量各分量与标量 v 相除,默认构建一个四维向量 [v, v, v, v]

Parameters

NameTypeDescription
vany标量值

Returns

Vector4

Defined in

src/math/Vector4.ts:244


scale

scale(s): Vector4

缩放此向量

Parameters

NameType
snumber

Returns

Vector4

Defined in

src/math/Vector4.ts:253


scaleAndAdd

scaleAndAdd(v, s): Vector4

按标量缩放 v 向量后与此向量相加

Parameters

NameType
vVector4
snumber

Returns

Vector4

Defined in

src/math/Vector4.ts:263


distanceTo

distanceTo(vec): any

计算该向量到所传入的 v 间的距离

Parameters

NameType
vecVector4

Returns

any

Defined in

src/math/Vector4.ts:272


distanceToSquared

distanceToSquared(vec): any

计算两个 Vector4 之间的平方距离

Parameters

NameType
vecVector4

Returns

any

Defined in

src/math/Vector4.ts:280


length

length(): any

计算从 [0, 0, 0, 0] 到此向量的直线距离

Returns

any

Defined in

src/math/Vector4.ts:287


dot

dot(vec): any

计算此向量与 vec 向量的点积

Parameters

NameType
vecVector4

Returns

any

Defined in

src/math/Vector4.ts:295


equals

equals(vec): any

判断传入的向量 vec 与此向量是否相等

Parameters

NameType
vecVector4

Returns

any

Defined in

src/math/Vector4.ts:303


cross

cross(vec): Vector4

将该向量设置为它本身与传入的vec的叉积

Parameters

NameType
vecVector4

Returns

Vector4

Defined in

src/math/Vector4.ts:311


negate

negate(): Vector4

针对此向量取反

Returns

Vector4

Defined in

src/math/Vector4.ts:319


inverse

inverse(): Vector4

针对此向量取倒数

Returns

Vector4

Defined in

src/math/Vector4.ts:327


lerp

lerp(vec, t): Vector4

从此向量到 vec 向量进行插值

Parameters

NameTypeDescription
vecVector4目标向量
tnumber插值因数,范围一般在[0-1],通常在这两个值之间

Returns

Vector4

Defined in

src/math/Vector4.ts:337


normalize

normalize(): Vector4

将此向量转换为单位向量 (将其设置为与此向量具有相同方向但长度为 1 的向量)

Returns

Vector4

Defined in

src/math/Vector4.ts:345


applyMatrix4

applyMatrix4(matrix): Vector4

将此向量乘以 Matrix4

Parameters

NameType
matrixMatrix4

Returns

Vector4

Defined in

src/math/Vector4.ts:354


applyQuaternion

applyQuaternion(quaternion): Vector4

将 Quaternion 变换应用到该向量

Parameters

NameType
quaternionQuaternion

Returns

Vector4

Defined in

src/math/Vector4.ts:363


copy

copy(vec4): Vector4

将传递的 Vector4 的 x 、y、 z、w 属性的值复制到此 Vector4

Parameters

NameType
vec4Vector4

Returns

Vector4

Defined in

src/math/Vector4.ts:372


clone

clone(): Vector4

克隆此向量

Returns

Vector4

Defined in

src/math/Vector4.ts:383


toString

toString(): string

转换为字符串

Returns

string

Defined in

src/math/Vector4.ts:390