ht.Math.Vector4(x, y, z, w)

new Vector4(x, y, z, w)

创建一个四维向量

Parameters:
Name Type Attributes Description
x number <optional>
y number <optional>
z number <optional>
w number <optional>

Members

w :Array.<number>

x :Array.<number>

y :Array.<number>

z :Array.<number>

Methods

add(Vector4) → {ht.Math.Vector4}

将传入的向量 Vector4 和当前向量相加

Parameters:
Name Type Description
Vector4 ht.Math.Vector4
Returns:
ht.Math.Vector4

addScalar(scalar) → {ht.Math.Vector4}

将传入的标量 scalar 和当前向量的 x 、y 、z 和 w 相加

Parameters:
Name Type Description
scalar number
Returns:
ht.Math.Vector4

addScaledVector(Vector4, scalar) → {ht.Math.Vector4}

将所传入的 Vector4 与 scalar 相乘所得的乘积和当前向量相加

Parameters:
Name Type Description
Vector4 ht.Math.Vector4
scalar number
Returns:
ht.Math.Vector4

addVectors(a, b) → {ht.Math.Vector4}

将当前向量设置为 a + b

Parameters:
Name Type Description
a ht.Math.Vector4
b ht.Math.Vector4
Returns:
ht.Math.Vector4

applyMatrix4(Matrix4) → {ht.Math.Vector4}

将当前向量乘以四阶矩阵 Matrix4

Parameters:
Name Type Description
Matrix4 ht.Math.Matrix4
Returns:
ht.Math.Vector4

ceil() → {ht.Math.Vector4}

将该向量 x、y、z 和 w 分量向上取整为最接近的整数

Returns:
ht.Math.Vector4

clamp(min, max) → {ht.Math.Vector4}

如果该向量的 x、y、z 和 w 值大于限制范围内最大 x、y、z 和 w 值,则该值将会被所对应的值取代。如果该向量的 x、y、z 和 w 值小于限制范围内最小 x、y、z 和 w 值,则该值将会被所对应的值取代

Parameters:
Name Type Description
min ht.Math.Vector4

x、y、z 和 w 的最小值

max ht.Math.Vector4

x、y、z 和 w 的最大值

Returns:
ht.Math.Vector4

clampLength(min, max) → {ht.Math.Vector4}

如果向量长度大于最大值,则它将会被最大值所取代,如果向量长度小于最小值,则它将会被最小值所取代

Parameters:
Name Type Description
min number

长度最小值

max number

长度最大值

Returns:
ht.Math.Vector4

clampScalar(min, max) → {ht.Math.Vector4}

如果该向量的 x、y、z 和 w 值大于最大值,则它们将被最大值所取代,如果该向量的 x、y、z 和 w 值小于最小值,则它们将被最小值所取代

Parameters:
Name Type Description
min number

分量将被限制为的最小值

max number

分量将被限制为的最大值

Returns:
ht.Math.Vector4

clone() → {ht.Math.Vector4}

返回一个新的 Vector4 ,与当前向量相同的 x 、y 、z 和 w 相同

Returns:
ht.Math.Vector4

copy(Vector4) → {ht.Math.Vector4}

将所传入 Vector4 的 x 、y 、z 和 w 属性复制到当前向量

Parameters:
Name Type Description
Vector4 ht.Math.Vector4
Returns:
ht.Math.Vector4

divideScalar(scalar) → {ht.Math.Vector4}

将当前向量除以标量 scalar

Parameters:
Name Type Description
scalar number
Returns:
ht.Math.Vector4

dot(Vector4) → {number}

计算当前向量和所传入 Vector4 的点积

Parameters:
Name Type Description
Vector4 ht.Math.Vector4
Returns:
number

equals(Vector4) → {boolean}

当前向量和所传入 Vector4 是否相等

Parameters:
Name Type Description
Vector4 ht.Math.Vector4
Returns:
boolean

floor() → {ht.Math.Vector4}

将该向量 x、y、z 和 w 分量向下取整为最接近的整数

Returns:
ht.Math.Vector4

fromArray(Array, offset) → {ht.Math.Vector4}

设置向量中的 x 值为 Array[ offset + 0 ],y 值为 Array[ offset + 1 ], z 值为 Array[ offset + 2 ], w 值为 Array[ offset + 3 ]

Parameters:
Name Type Attributes Description
Array Array.<Object>
offset number <optional>

数组的偏移量,默认值为 0

Returns:
ht.Math.Vector4

getComponent(index) → {number}

若index为 0 则返回 x 值,若index为 1 则返回 y 值,若index为 2 则返回 z 值,若index为 3 则返回 w 值

Parameters:
Name Type Description
index number
Returns:
number

length() → {number}

计算从 (0, 0, 0, 0) 到 (x, y, z, w) 的直线长度

Returns:
number -

长度

lengthSq() → {number}

计算从 (0, 0, 0, 0) 到 (x, y, z, w) 的直线长度平方

Returns:
number -

长度平方

lerp(Vector4, alpha) → {ht.Math.Vector4}

当前向量与传入的向量 Vector4 之间的线性插值,alpha 是沿着线的长度的百分比

Parameters:
Name Type Description
Vector4 ht.Math.Vector4
alpha number
Returns:
ht.Math.Vector4

lerpVectors(a, b, alpha) → {ht.Math.Vector4}

将当前向量设置为在 向量 a 和 b 之间进行线性插值的向量

Parameters:
Name Type Description
a ht.Math.Vector4
b ht.Math.Vector4
alpha number
Returns:
ht.Math.Vector4

manhattanLength() → {number}

计算当前向量的曼哈顿长度

Returns:
number -

曼哈顿长度

max(Vector4) → {ht.Math.Vector4}

如果当前向量的 x 值、y 值、z 值或 w 值小于所传入 Vector4 的 x 值、y 值、z 值或 w 值, 则将其替换为对应的最大值

Parameters:
Name Type Description
Vector4 ht.Math.Vector4
Returns:
ht.Math.Vector4

min(Vector4) → {ht.Math.Vector4}

如果当前向量的 x 值、y 值、z 值或 w 值大于所传入 Vector4 的 x 值、y 值、z 值或 w 值, 则将其替换为对应的最小值

Parameters:
Name Type Description
Vector4 ht.Math.Vector4
Returns:
ht.Math.Vector4

multiplyScalar(scalar) → {ht.Math.Vector4}

将当前向量与所传入的标量 scalar 相乘

Parameters:
Name Type Description
scalar number
Returns:
ht.Math.Vector4

negate() → {ht.Math.Vector4}

将当前向量取反

Returns:
ht.Math.Vector4

normalize() → {ht.Math.Vector4}

将当前向量转换为单位向量

Returns:
ht.Math.Vector4

round() → {ht.Math.Vector4}

向量中的分量四舍五入取整为最接近的整数值

Returns:
ht.Math.Vector4

roundToZero() → {ht.Math.Vector4}

向量中的分量朝向 0 取整数

Returns:
ht.Math.Vector4

set(x, y, z, w) → {ht.Math.Vector4}

设置当前向量的x、y、z 和 w 分量

Parameters:
Name Type Description
x number
y number
z number
w number
Returns:
ht.Math.Vector4

setAxisAngleFromQuaternion(Quaternion) → {ht.Math.Vector4}

将当前向量的x、y和z分量设置为四元数的轴, w分量设置为四元数的角度

Parameters:
Name Type Description
Quaternion ht.Math.Quaternion
Returns:
ht.Math.Vector4

setAxisAngleFromRotationMatrix(Matrix4) → {ht.Math.Vector4}

将当前向量的x、y和z设置为旋转轴,w为角度

Parameters:
Name Type Description
Matrix4 ht.Math.Matrix4
Returns:
ht.Math.Vector4

setComponent(index, value) → {null}

若index为 0 则设置 x 值为 value,若index为 1 则设置 y 值为 value,若index为 2 则设置 z 值为 value,若index为 3 则设置 w 值为 value

Parameters:
Name Type Description
index number
value number
Returns:
null

setLength(length) → {ht.Math.Vector4}

将当前向量设置为方向相同,但是长度为 length 的向量

Parameters:
Name Type Description
length number
Returns:
ht.Math.Vector4

setScalar(scalar) → {ht.Math.Vector4}

将当前向量的 x、y、z 和 w 值同时设置为等于传入的 scalar

Parameters:
Name Type Description
scalar number
Returns:
ht.Math.Vector4

setW(w) → {ht.Math.Vector4}

将当前向量中的 w 值替换为 w

Parameters:
Name Type Description
w number
Returns:
ht.Math.Vector4

setX(x) → {ht.Math.Vector4}

将当前向量中的 x 值替换为 x

Parameters:
Name Type Description
x number
Returns:
ht.Math.Vector4

setY(y) → {ht.Math.Vector4}

将当前向量中的 y 值替换为 y

Parameters:
Name Type Description
y number
Returns:
ht.Math.Vector4

setZ(z) → {ht.Math.Vector4}

将当前向量中的 z 值替换为 z

Parameters:
Name Type Description
z number
Returns:
ht.Math.Vector4

sub(Vector4) → {ht.Math.Vector4}

当前向量减去向量 Vector4

Parameters:
Name Type Description
Vector4 ht.Math.Vector4
Returns:
ht.Math.Vector4

subScalar(scalar) → {ht.Math.Vector4}

当前向量的 x、y、z 和 w 减去标量 scalar

Parameters:
Name Type Description
scalar number
Returns:
ht.Math.Vector4

subVectors(a, b) → {ht.Math.Vector4}

将当前向量设置为 a - b

Parameters:
Name Type Description
a ht.Math.Vector4
b ht.Math.Vector4
Returns:
ht.Math.Vector4

toArray(array, offset) → {Array.<number>}

返回一个数组,或者将 x 、y 、z 和 w 复制到所传入的 array 中

Parameters:
Name Type Attributes Description
array Array.<Object> <optional>

用于存储向量的数组,如果未指定会创建一个新的数组

offset number <optional>

数组中元素的偏移量

Returns:
Array.<number>