public class Quaternion
适用于浮点数的 Sceneform 四元数类。
四元运算采用右手规则惯例。
字段
公开浮点数 | 周 | |
公开浮点数 | x | |
公开浮点数 | 年 | |
公开浮点数 | Z |
公共构造函数
四元数()
构建四元数并设置为 Identity
|
|
四元数(浮点数 x、浮点数 y、浮点数 z、浮点数 w)
构造四元数并设置每个值。
|
|
公共方法
static Quaternion | |
静态布尔值 | |
布尔值 | |
static Quaternion | |
static Quaternion |
identity()
将 Quaternion 设置为身份
|
static Vector3 | |
四元数 |
反转()
获取反转的四元数
|
static Quaternion | |
static Quaternion |
multiply(Quaternion lhs, Quaternion rhs)
通过将两个 Quaternion 乘数(lhs, rhs) 组合起来相当于执行 rhs 旋转,以创建 Quaternion,然后 lhs 旋转对此操作很重要。
|
布尔值 |
标准化()
将四元数重新缩放为单位长度。
|
四元数 |
标准化()
获取一个具有匹配旋转但根据单位长度缩放的四元数。
|
static Vector3 | |
static Quaternion | |
无效 |
set(float qx, float qy, float qz, float qw)
设置每个值并使四元数归一化
|
无效 | |
无效 | |
无效 |
setIdentity()
将四元数设为身份
|
static Quaternion | |
字符串 |
继承的方法
字段
公开 浮点数 w
公开浮点数 x
公开浮点数 y
公开浮点数 z
公共构造函数
public 四元数 ()
构建四元数并设置为 Identity
public 四元数 (float x, float y, float z, float w)
构造四元数并设置每个值。四元数会在构造过程中进行归一化
参数
x | |
---|---|
y | |
z | |
w |
public Quaternion (Vector3 eulerAngles)
公共方法
public static boolean equals (Quaternion lhs, Quaternion rhs)
比较两个四元数
通过计算 lhs 和 rhs 的点积来测试是否相等。根据此函数计算,lhs 和 -lhs 不相等。
参数
lhs | |
---|---|
RHS |
public static Quaternion eulerAngles (Vector3 eulerAngles)
使用 eulerAngles 定义旋转的新 Quaternion。
按 Z、Y、X 的顺序应用旋转。这与其他图形引擎一致。 有一点需要注意的是,Sceneform 与 Unity 之间的坐标系不同,因此此处使用的角度会导致与 Unity 不同的屏幕方向。请仔细检查参数值,以与其他引擎中的效果相同。
参数
欧洲角 | - 角度(以度为单位)。 |
---|
public static Quaternion lookRotation(Vector3forwardInWorld、Vector3requiredUpInWorld)
获取代表指定向前方向旋转的新四元数。如果 upInWorld 与 forwardingInWorld 正交,则 Y 轴与 requiredUpInWorld 对齐。
参数
向前世界 | |
---|---|
向上的世界 |
public static Quaternion multiply (Quaternion lhs, Quaternion rhs)
通过将两个 Quaternion 乘数(lhs, rhs) 组合起来相当于执行 rhs 旋转,以创建 Quaternion,然后 lhs 旋转对此操作很重要。
参数
lhs | |
---|---|
RHS |
返回
- 合并轮播
public boolean normalization ()
将四元数重新缩放为单位长度。
如果 Quaternion 无法缩放,系统会将其设为 identity 并返回 false。
返回
- 如果四元数非零,则为 true
public static Quaternion rotationbetweenVectors (Vector3 start, Vector3 end)
获取表示从一个矢量旋转到另一个矢量的新四元数。
参数
start | |
---|---|
end |
public void set (float qx, float qy, float qz, float qw)
设置每个值并使四元数归一化
参数
季度 | |
---|---|
季度 | |
季度 |
public void setIdentity ()
将四元数设为身份