RenderScript 四元數函式

總覽

以下函式會操控四元數。

摘要

函式
rsQuaternionAdd 將兩個四元數相加
rsQuaternionConjugate 共和四元數
rsQuaternionDot 兩個四元數的點積
rsQuaternionGetMatrixUnit 取得四元數的旋轉矩陣
rsQuaternionLoadRotate 建立旋轉四元數
rsQuaternionLoadRotateUnit 代表任意單位向量旋轉的四元數
rsQuaternionMultiply 將四元數乘以純量或其他四元數
rsQuaternionNormalize 將四元數正規化
rsQuaternionSet 建立四元數
rsQuaternionSlerp 兩個四角之間的球面線性內插

函式

rsQuaternionAdd :新增兩個四元數

void rsQuaternionAdd(rs_quaternion* q, const rs_quaternion* rhs);
參數
q 鍵要新增的目的地四元數。
Rhs要新增的四元數。

加上兩個四元數,即 *q += *rhs;

rsQuaternionConjugate :共識四元數

void rsQuaternionConjugate(rs_quaternion* q);
參數
q 鍵要修改的四元數。

征服四元數。

rsQuaternionDot :兩個四元數的點積

float rsQuaternionDot(const rs_quaternion* q0, const rs_quaternion* q1);
參數
第 0 季第一四元球。
第 1 季第二個四元數。

傳回兩個四元數的內積。

rsQuaternionGetMatrixUnit :從四元數取得旋轉矩陣

void rsQuaternionGetMatrixUnit(rs_ Matrix4x4* m, const rs_quaternion* q);
參數
分鐘產生的矩陣。
q 鍵正規化四元數。

計算正規化四元數的旋轉矩陣。

rsQuaternionLoadRotate :建立旋轉四元數

void rsQuaternionLoadRotate(rs_quaternion* q, float rot, float x, float y, float z);
參數
q 鍵目的地四元數。
旋轉切換要旋轉的角度。
x向量的 X 元件。
y向量的 Y 元件。
z向量的 Z 元件。

載入代表任意向量旋轉的四元數 (不一定要是單位)

rsQuaternionLoadRotateUnit :代表任意單位向量旋轉的四元數

void rsQuaternionLoadRotateUnit(rs_quaternion* q, float rot, float x, float y, float z);
參數
q 鍵目的地四元數。
旋轉角度要旋轉的角度,以弧度為單位。
x用於向量的 X 元件。
y向量的 Y 元件。
z向量的 Z 元件。

載入代表任意單位向量的四元數。

rsQuaternionMultiply :將四元數乘以純量或其他四元數

void rsQuaternionMultiply(rs_quaternion* q, const rs_quaternion* rhs);
void rsQuaternionMultiply(rs_quaternion* q, 浮點純量);
參數
q 鍵目的地四元數。
純量要乘以四元數的 Scalar。
Rhs要乘以終點四元數的四元數。

將四元數乘以純量或其他四元數,例如 *q = *q * scalar;*q = *q * *rhs;

rsQuaternionNormalize :將四元數正規化

void rsQuaternionNormalize(rs_quaternion* q);
參數
q 鍵要正規化的四元數。

將四元正規化。

rsQuaternionSet :建立四元數

void rsQuaternionSet(rs_quaternion* q, const rs_quaternion* rhs);
void rsQuaternionSet(rs_quaternion* q, float w, float x, float y, float z);
參數
q 鍵目的地四元數。
w 鍵W 元件。
xX 元件。
yY 元件。
zZ 元件。
Rhs來源四元數。

從其四個元件或另一個四元數建立四元數。

rsQuaternionSlerp :兩個四元數之間的球面線性內插

void rsQuaternionSlerp(rs_quaternion* q, const rs_quaternion* q0, const rs_quaternion* q1, float t);
參數
q 鍵內插法產生的四元數。
第 0 季首次輸入四元數。
第 1 季第二個輸入四元數。
t 鍵插入比例。

執行兩個四元數之間的球面線性內插。