跳至正文
版本:bleeding-edge 🩸

🔢 四元数

浮点四元数,可表示三维空间中围绕轴的旋转


🎒 示例

local new_quaternion = Quat(0.5, 0.5, 1, -1)
local rotation = new_quaterion:Rotator()

🛠 构造函数

Default Constructor

No description provided

local my_quat = Quat(X?, Y?, Z?, W?)

Parameters

TypeNameDefaultDescription
numberX0四元数的 X 分量
numberYX四元数的 Y 分量
numberZX四元数的 Z 分量
numberWX四元数的 W 分量

🧽 属性

TypeNameDescription
numberX四元数的 X 分量
numberY四元数的 Y 分量
numberZ四元数的 Z 分量
numberW四元数的 W 分量

🦠 函数

信息

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

ReturnsNameDescription
Normalize就地归一化该四元数
RotatorRotator获取该四元数的旋转体表示形式
QuatInverse返回该四元数的逆
VectorRotateVector使用该四元数旋转一个向量
VectorUnrotateVector使用该四元数反向旋转一个向量
VectorGetForwardVector从该四元数中获取前向方向向量
VectorGetRightVector从该四元数中获取右向方向向量
VectorGetUpVector从该四元数中获取朝上方向向量

Normalize

就地归一化该四元数
my_quat:Normalize()

Rotator

获取该四元数的旋转体表示形式
local ret = my_quat:Rotator()

Returns

TypeDescription
Rotator该四元数的旋转体表示形式

Inverse

返回该四元数的逆
local ret = my_quat:Inverse()

Returns

TypeDescription
Quat该四元数的逆

RotateVector

使用该四元数旋转一个向量
local ret = my_quat:RotateVector(vector)

Parameters

TypeParameterDefaultDescription
Vectorvector Required parameter 要旋转的向量

Returns

TypeDescription
Vector旋转后的向量

UnrotateVector

使用该四元数反向旋转一个向量
local ret = my_quat:UnrotateVector(vector)

Parameters

TypeParameterDefaultDescription
Vectorvector Required parameter 要反向旋转的向量

Returns

TypeDescription
Vector反向旋转后的向量

GetForwardVector

从该四元数中获取前向方向向量
local ret = my_quat:GetForwardVector()

Returns

TypeDescription
Vector前向向量

GetRightVector

从该四元数中获取右向方向向量
local ret = my_quat:GetRightVector()

Returns

TypeDescription
Vector右向向量

GetUpVector

从该四元数中获取朝上方向向量
local ret = my_quat:GetUpVector()

Returns

TypeDescription
Vector朝上向量