跳至正文
版本:bleeding-edge 🩸

📐 向量

由浮点精度组件 (X, Y, Z) 组成的向量。主要用于实体位置。

👐Open Source
This library implementation is Open Sourced on GitHub!
🧑‍💻API Source
This page is auto-generated! The Functions, Properties and Events described here are defined in our GitHub's API Repository! Feel free to commit suggestions and changes to the source .json API files!

信息

向量在内部进行自动压缩,这可以将其在网络中的大小减少高达 90%。 一些很棒的细节:

  • 类方法中的向量参数通常以小数点后 1 位的精度进行压缩(某些情况下需要更高的精度)。
  • 远程事件中传递的向量以小数点后 2 位的精度进行压缩。 如果需要更高的精度,我们建议你将它们作为原始数字传递。

🎒 示例

local new_vector = Vector(1452.5, 512, 943.1)

🛠 构造函数

Default Constructor

No description provided

local my_vector = Vector(X?, Y?, Z?)

Parameters

TypeNameDefaultDescription
numberX0X 坐标
numberYXY 坐标
numberZXZ 坐标

🧽 属性

TypeNameDescription
numberXX 坐标
numberYY 坐标
numberZZ 坐标

🦠 函数

信息

此结构支持 +-*/^==tostring 运算。

ReturnsNameDescription
booleanEquals在指定的误差范围内检查与另一个向量是否相等
numberDistance两点之间的距离
numberDistanceSquared两点之间的平方距离
VectorGetUnsafeNormal计算向量的归一化版本,不检查长度是否为零
VectorGetSafeNormal获取向量的归一化副本,并根据长度检查此操作是否安全
booleanIsNear高效检查向量是否在指定半径内接近另一个向量
booleanIsNearlyZero检查向量在指定的容差范围内是否接近于零
booleanIsZero检查向量的所有组件是否严格为零
booleanNormalize如果该向量大于给定的容差,则对其进行就地归一化。否则保持不变
numberSize获取该向量的长度(模长)
numberSizeSquared获取该向量的平方长度
RotatorToOrientationRotator返回对应于向量指向方向的旋转体朝向
QuatToOrientationQuat返回对应于向量指向方向的四元数朝向
numberDot两个向量的点积
VectorCross两个向量的叉积

Equals

在指定的误差范围内检查该向量是否与另一个向量相等
local ret = my_vector:Equals(other, tolerance?)

Parameters

TypeParameterDefaultDescription
Vectorother Required parameter 要对比的向量
numbertolerance?0.000001误差范围

Returns

TypeDescription
boolean向量是否相等

Distance

返回 2 个向量之间的距离
local ret = my_vector:Distance(other)

Parameters

TypeParameterDefaultDescription
Vectorother Required parameter 要获取距离的另一个向量

Returns

TypeDescription
number向量之间的距离

DistanceSquared

返回 2 个向量之间的平方距离
local ret = my_vector:DistanceSquared(other)

Parameters

TypeParameterDefaultDescription
Vectorother Required parameter 要获取平方距离的另一个向量

Returns

TypeDescription
number向量之间的平方距离

GetUnsafeNormal

返回向量的归一化版本,不检查长度是否为零
local ret = my_vector:GetUnsafeNormal()

Returns

TypeDescription
Vector不安全的法线

GetSafeNormal

返回向量的归一化副本,并根据长度检查此操作是否安全
local ret = my_vector:GetSafeNormal()

Returns

TypeDescription
Vector安全的法线

IsNear

高效检查向量是否在指定半径内接近另一个向量
local ret = my_vector:IsNear(other, radius)

Parameters

TypeParameterDefaultDescription
Vectorother Required parameter 要对比的向量
numberradius Required parameter 要检查的半径范围

Returns

TypeDescription
boolean该向量是否接近另一个向量

IsNearlyZero

检查向量在指定的容差范围内是否接近于零
local ret = my_vector:IsNearlyZero(tolerance?)

Parameters

TypeParameterDefaultDescription
numbertolerance?0.000001误差范围

Returns

TypeDescription
boolean该向量是否接近于零

IsZero

检查向量的所有组件是否严格为零
local ret = my_vector:IsZero()

Returns

TypeDescription
boolean向量的所有组件是否严格为零

Normalize

如果该向量大于给定的容差,则对其进行就地归一化。否则保持不变
local ret = my_vector:Normalize()

Returns

TypeDescription
boolean向量是否已被修改

Size

获取该向量的长度(模长)
local ret = my_vector:Size()

Returns

TypeDescription
number向量的长度

SizeSquared

获取该向量的平方长度
local ret = my_vector:SizeSquared()

Returns

TypeDescription
number向量的平方长度

ToOrientationRotator

返回对应于向量指向方向的旋转体朝向
local ret = my_vector:ToOrientationRotator()

Returns

TypeDescription
Rotator向量的朝向

ToOrientationQuat

返回对应于向量指向方向的四元数朝向
local ret = my_vector:ToOrientationQuat()

Returns

TypeDescription
Quat向量的朝向

Dot

返回该向量与另一个向量之间的点积
local ret = my_vector:Dot(other)

Parameters

TypeParameterDefaultDescription
Vectorother Required parameter 要进行点积的点

Returns

TypeDescription
number点积结果

Cross

返回该向量与另一个向量之间的叉积
local ret = my_vector:Cross(other)

Parameters

TypeParameterDefaultDescription
Vectorother Required parameter 要进行叉积的向量

Returns

TypeDescription
Vector叉积得到的向量