Skip to content
导览

Class: Vector3

Properties

x

x: number


y

y: number


z

z: number

Methods

set

set(x, y, z): Vector3

Details

为Vector3 对象属性赋值

Parameters

NameType
xnumber
ynumber
znumber

Returns

Vector3

Vector3 对象


setScalar

setScalar(scalar): Vector3

Details

为Vector3 对象属性x y z设置相同的值

Parameters

NameType
scalarnumber

Returns

Vector3

Vector3 对象


setX

setX(x): Vector3

Details

为Vector3 对象属性x 赋值

Parameters

NameType
xnumber

Returns

Vector3

Vector3 对象


setY

setY(y): Vector3

Details

为Vector3 对象属性y 赋值

Parameters

NameType
ynumber

Returns

Vector3

Vector3 对象


setZ

setZ(z): Vector3

Details

为Vector3 对象属性z 赋值

Parameters

NameType
znumber

Returns

Vector3

Vector3 对象


setComponent

setComponent(index, value): Vector3

Details

为Vector3 中某个属性赋值, 以编号的形式 x为0, y为1, z为2

Parameters

NameTypeDescription
indexnumber属性编号[0,2]
valuenumber对应的赋值

Returns

Vector3

Vector3 对象


getComponent

getComponent(index): number

Details

获取Vector3 对象中某个属性的值, 以编号的形式 x为0, y为1, z为2

Parameters

NameTypeDescription
indexnumber属性编号[0,2]

Returns

number

number 对应的数值


copy

copy(v): Vector3

Details

拷贝Vector3 对象

Parameters

NameTypeDescription
vVector3被拷贝的Vector3 对象

Returns

Vector3

Vector3 对象


add

add(v): Vector3

Details

与Vector3 对象相加

Parameters

NameTypeDescription
vVector3相加的Vector3 对象

Returns

Vector3

Vector3 对象


addScalar

addScalar(s): Vector3

Details

Vector3 对象属性x y z与标量相加

Parameters

NameTypeDescription
snumber相加的标量值

Returns

Vector3

Vector3 对象


addVectors

addVectors(a, b): Vector3

Details

传入两个Vector3对象进行相加运算

Parameters

NameTypeDescription
aVector3第一个相加的Vector3对象
bVector3第二个相加的Vector3对象

Returns

Vector3

Vector3 对象


addScaledVector

addScaledVector(v, s): Vector3

Details

Vector3对象属性x y z与标量相乘得到的值再与自身原属性相加

Parameters

NameTypeDescription
vVector3Vector3 对象
snumber标量

Returns

Vector3

Vector3 对象


sub

sub(v): Vector3

Details

Vector3对象属性x y z与传入的被减数Vector3相减

Parameters

NameTypeDescription
vVector3被减数Vector3 对象

Returns

Vector3

Vector3 对象


subScalar

subScalar(s): Vector3

Details

Vector3对象属性x y z与传入的标量被减数相减

Parameters

NameTypeDescription
snumber被减数 类型为number

Returns

Vector3

Vector3 对象


subVectors

subVectors(a, b): Vector3

Details

两个Vector3 对象相减, 其中先传入的对象为被减数

Parameters

NameTypeDescription
aVector3被减数Vector3 对象
bVector3减数Vector3 对象

Returns

Vector3

Vector3 对象


multiply

multiply(v): Vector3

Details

Vector3 对象与传入的Vector 3对象相乘

Parameters

NameTypeDescription
vVector3Vector3 对象

Returns

Vector3

Vector3 对象


multiplyScalar

multiplyScalar(scalar): Vector3

Details

Vector3 对象属性x y z与传入的标量相乘

Parameters

NameTypeDescription
scalarnumber相乘的数值

Returns

Vector3

Vector3 对象


multiplyVectors

multiplyVectors(a, b): Vector3

Details

两个Vector3 对象相乘

Parameters

NameTypeDescription
aVector3Vector3 对象
bVector3Vector3 对象

Returns

Vector3

Vector3 对象


applyEuler

applyEuler(euler): Vector3

Details

将欧拉角转换为四元数, 并将四元数转换为Vector3 对象

Parameters

NameTypeDescription
eulerEuler欧拉角 对象

Returns

Vector3

Vector3 对象


applyAxisAngle

applyAxisAngle(axis, angle): Vector3

Details

将由轴和角度形成的旋转转换为Vector3 对象

Parameters

NameTypeDescription
axisVector3轴 类型为Vector3
anglenumber角度 类型为number

Returns

Vector3

Vector3 对象


applyMatrix3

applyMatrix3(m): Vector3

Details

Vector3 对象与Matrix3 对象相乘

Parameters

NameTypeDescription
mMatrix3Matrix3 对象

Returns

Vector3

Vector3 对象


applyNormalMatrix

applyNormalMatrix(m): Vector3

Details

将此Vector3 对象乘以法线矩阵Matrix3 对象并对结果进行归一化

Parameters

NameTypeDescription
mMatrix3Matrix3 对象

Returns

Vector3

Vector3 对象


applyMatrix4

applyMatrix4(m): Vector3

Details

Multiplies this vector (with an implicit 1 in the 4th dimension) and m, and divides by perspective.

Parameters

NameTypeDescription
mMatrix4Matrix4 对象

Returns

Vector3

Vector3 对象


applyQuaternion

applyQuaternion(q): Vector3

Details

将四元数转换为Vector3 类型对象

Parameters

NameTypeDescription
qQuaternion四元数

Returns

Vector3

Vector3 对象


project

project(camera): Vector3

Parameters

NameType
cameraany

Returns

Vector3


unproject

unproject(camera): Vector3

Parameters

NameType
cameraany

Returns

Vector3


transformDirection

transformDirection(m): Vector3

Details

通过矩阵(m 的左上角 3 x 3 子集)转换该Vector3 的方向,然后对结果进行归一化

Parameters

NameTypeDescription
mMatrix44x4矩阵

Returns

Vector3

Vector3 对象


divide

divide(v): Vector3

Details

Vector3 对象与传入的被除数Vector3 对象相除

Parameters

NameTypeDescription
vVector3被除数Vector3 对象

Returns

Vector3

Vector3 对象


divideScalar

divideScalar(scalar): Vector3

Details

将此Vector3 对象除以标量 s

Parameters

NameTypeDescription
scalarnumber标量

Returns

Vector3

Vector3 对象


min

min(v): Vector3

Details

如果此Vector3对象的 x、y 或 z 值大于传入Vector3对象的 x、y 或 z 值,则将该值替换为相应的最小值

Parameters

NameTypeDescription
vVector3Vector3 对象

Returns

Vector3

Vector3 对象


max

max(v): Vector3

Details

如果此Vector3对象的 x、y 或 z 值小于传入Vector3对象的 x、y 或 z 值,则将该值替换为相应的最大值

Parameters

NameTypeDescription
vVector3Vector3 对象

Returns

Vector3

Vector3 对象


clamp

clamp(min, max): Vector3

Details

如果此Vector3 对象的 x、y 或 z 值大于最大Vector3 对象的 x、y 或 z 值,则将其替换为相应的值

如果此Vector3 对象的 x、y 或 z 值小于最小Vector3 对象的 x、y 或 z 值,则将其替换为相应的值

Parameters

NameTypeDescription
minVector3最小 x、y 和 z 值
maxVector3最大 x、y 和 z 值

Returns

Vector3

Vector3 对象


clampScalar

clampScalar(minVal, maxVal): Vector3

Details

如果此Vector3 对象的 x、y 或 z 值大于最大值,则将它们替换为最大值。

如果此Vector3 对象的 x、y 或 z 值小于最小值,则将它们替换为最小值

Parameters

NameTypeDescription
minValnumber限制的最小值
maxValnumber限制的最大值

Returns

Vector3

Vector3 对象


clampLength

clampLength(min, max): Vector3

Details

如果此Vector3 对象的长度大于最大值,则Vector3 对象将按比例缩小,使其长度为最大值

如果此Vector3 对象的长度小于最小值,则Vector3 对象将按比例放大,使其长度为最小值

Parameters

NameTypeDescription
minnumber限制的最小长度
maxnumber限制的最大长度

Returns

Vector3

Vector3 对象


floor

floor(): Vector3

Details

该Vector3 对象的分量向下舍入到最接近的整数值

Returns

Vector3

Vector3 对象


ceil

ceil(): Vector3

Details

该Vector3 对象的分量向上舍入到最接近的整数值

Returns

Vector3

Vector3 对象


round

round(): Vector3

Details

这个Vector3 对象的分量被四舍五入到最接近的整数值

Returns

Vector3

Vector3 对象


roundToZero

roundToZero(): Vector3

Details

该Vector3 对象的分量向零舍入(如果为负,则向上,如果为正,则向下)到整数值

Returns

Vector3

Vector3 对象


negate

negate(): Vector3

Details

反转此Vector3对象 即设置 x = -x、y = -y 和 z = -z

Returns

Vector3

Vector3 对象


dot

dot(v): number

Details

计算这个Vector3 对象和传入Vector3 对象的点积

Parameters

NameType
vVector3

Returns

number

number 类型标量


lengthSq

lengthSq(): number

Details

计算从 (0, 0, 0) 到 (x, y, z) 的欧几里得长度(直线长度)的平方

Returns

number

number 类型标量


length

length(): number

Details

计算从 (0, 0, 0) 到 (x, y, z) 的欧几里得长度(直线长度)

Returns

number

number 类型标量


manhattanLength

manhattanLength(): number

Details

计算此Vector3 对象的曼哈顿长度

Returns

number

number 类型标量


normalize

normalize(): Vector3

Details

将此Vector3 对象转换为单位向量 - 也就是说,将其设置为与此Vector3 对象具有相同方向但长度为 1 的向量

Returns

Vector3

Vector3 对象


setLength

setLength(length): Vector3

Details

将此Vector3 对象设置为与此Vector3 对象具有相同方向但长度为 length 的向量

Parameters

NameTypeDescription
lengthnumber长度

Returns

Vector3

Vector3 对象


lerp

lerp(v, alpha): Vector3

Details

在此Vector3 对象和传入对象 v 之间进行线性插值,其中 alpha 是沿线的百分比距离 - alpha = 0 将是此Vector3 对象,而 alpha = 1 将是 v

Parameters

NameTypeDescription
vVector3要插入的Vector3 对象
alphanumber插值因子

Returns

Vector3

Vector3 对象


lerpVectors

lerpVectors(v1, v2, alpha): Vector3

Details

将此Vector3 对象设置为在 v1 和 v2 之间线性插值的向量,其中 alpha 是沿连接两个向量的直线的百分比距离 - alpha = 0 将是 v1,而 alpha = 1 将是 v2

Parameters

NameTypeDescription
v1Vector3起始Vector3 对象
v2Vector3进行插值的Vector3 对象
alphanumber插值因子

Returns

Vector3

Vector3 对象


cross

cross(v): Vector3

Details

将此Vector3 对象与传入的 v 的叉积

Parameters

NameType
vVector3

Returns

Vector3

Vector3 对象


crossVectors

crossVectors(a, b): Vector3

Details

将此Vector3 对象设置为 a 和 b 的叉积

Parameters

NameTypeDescription
aVector3Vector3 对象
bVector3Vector3 对象

Returns

Vector3

Vector3 对象


projectOnVector

projectOnVector(v): Vector3

Details

将此Vector3投影到 v 上

Parameters

NameTypeDescription
vVector3Vector3 对象

Returns

Vector3

Vector3 对象


projectOnPlane

projectOnPlane(planeNormal): Vector3

Details

通过从此Vector3 对象中减去投影到平面法线上的向量,将此向量投影到平面上

Parameters

NameTypeDescription
planeNormalVector3表示平面法线的向量

Returns

Vector3

Vector3 对象


reflect

reflect(normal): Vector3

Details

将该Vector3 对象反射出与法线正交的平面。 假定法线具有单位长度

Parameters

NameTypeDescription
normalVector3反射平面的法线

Returns

Vector3

Vector3 对象


angleTo

angleTo(v): number

Details

返回此Vector3 对象与向量 v 之间的角度(以弧度为单位)

Parameters

NameTypeDescription
vVector3Vector3 对象

Returns

number

number类型角度值


distanceTo

distanceTo(v): number

Details

计算从该Vector3 对象到 v 的距离

Parameters

NameTypeDescription
vVector3Vector3 对象

Returns

number

number类型数据


distanceToSquared

distanceToSquared(v): number

Details

计算从该Vector3 对象到 v 的平方距离

Parameters

NameTypeDescription
vVector3Vector3 对象

Returns

number

number类型数据


manhattanDistanceTo

manhattanDistanceTo(v): number

Details

计算从该Vector3 对象到 v 的曼哈顿距离

Parameters

NameTypeDescription
vVector3Vector3 对象

Returns

number

number类型数据


setFromSpherical

setFromSpherical(s): Vector3

Parameters

NameType
sSpherical

Returns

Vector3


setFromSphericalCoords

setFromSphericalCoords(radius, phi, theta): Vector3

Parameters

NameType
radiusnumber
phinumber
thetanumber

Returns

Vector3


setFromCylindrical

setFromCylindrical(c): Vector3

Parameters

NameType
cCylindrical

Returns

Vector3


setFromCylindricalCoords

setFromCylindricalCoords(radius, theta, y): Vector3

Parameters

NameType
radiusnumber
thetanumber
ynumber

Returns

Vector3


setFromMatrixPosition

setFromMatrixPosition(m): Vector3

Details

将此Vector3 对象设置为变换矩阵 m 的位置元素

Parameters

NameTypeDescription
mMatrix44*4矩阵

Returns

Vector3

Vector3 对象


setFromMatrixScale

setFromMatrixScale(m): Vector3

Details

将此Vector3 对象设置为变换矩阵 m 的比例元素。

Parameters

NameTypeDescription
mMatrix44*4矩阵

Returns

Vector3

Vector3 对象


setFromMatrixColumn

setFromMatrixColumn(m, index): Vector3

Details

从矩阵的索引列设置此Vector3 对象的 x、y 和 z 分量

Parameters

NameTypeDescription
mMatrix44*4矩阵
indexnumber索引

Returns

Vector3

Vector3 对象


setFromMatrix3Column

setFromMatrix3Column(m, index): Vector3

Details

从矩阵的索引列设置此Vector3 对象的 x、y 和 z 分量

Parameters

NameTypeDescription
mMatrix33*3矩阵
indexnumber索引

Returns

Vector3

Vector3 对象


setFromEuler

setFromEuler(e): Vector3

Details

根据指定欧拉角的 pitch、roll 和 heading 分量设置此向量的 x、y 和 z 分量

Parameters

NameTypeDescription
eEuler欧拉角

Returns

Vector3

Vector3 对象


equals

equals(v): boolean

Details

如果此向量的分量和 v 严格相等,则返回 true; 否则为false

Parameters

NameTypeDescription
vVector3Vector3 类型对象

Returns

boolean

boolen


fromArray

fromArray(array, offset?): Vector3

Details

将此Vector3 对象的 x 值设置为 array[offset + 0],y 值设置为 array[offset + 1],z 值设置为 array[offset + 2]

Parameters

NameTypeDefault valueDescription
arraynumber[]undefined源数组
offsetnumber0(可选)数组中的偏移量。 默认值为 0。

Returns

Vector3

Vector3 对象


toArray

toArray(array, offset?): number[]

Parameters

NameTypeDefault value
arraynumber[]undefined
offsetnumber0

Returns

number[]


fromBufferAttribute

fromBufferAttribute(attribute, index): Vector3

Parameters

NameType
attributeany
indexnumber

Returns

Vector3


random

random(): Vector3

Returns

Vector3


randomDirection

randomDirection(): Vector3

Returns

Vector3


[iterator]

[iterator](): Generator<number, void, unknown>

Returns

Generator<number, void, unknown>