1. TOP
  2. OMRON
  3. NX/NJシリーズ
  4. 計算
  5. クォータニオン

クォータニオン

クォータニオン生成 (Quaternion)

Quaternion

func_Quaternion
入力
w
スカラー部(実部)
x
ベクトル部x(虚部)
y
ベクトル部y(虚部)
z
ベクトル部z(虚部)
出力
out
クォータニオン

egQuaternion
入力
w
1.0
x
2.0
y
3.0
z
4.0
出力
out
\[ \begin{bmatrix} q_w \\ q_x \\ q_y \\ q_z \\ \end{bmatrix} = \begin{bmatrix} 1 \\ 2 \\ 3 \\ 4 \\ \end{bmatrix} \]

計算式

\begin{align} q=q_w+q_xi+q_yj+q_zk=& \begin{bmatrix} q_w \\ q_x \\ q_y \\ q_z \\ \end{bmatrix} \\ i^2+j^2+k^2=&-1 \\ ij=&k \\ jk=&i \\ ki=&j \end{align}


比較 (qtEQ)

qtEQ

func_Quaternion
入力
Q1
クォータニオン1
Q2
クォータニオン2

egqtEQ

加算 (qtADD)

qtADD

func_Quaternion
入力
Q1
クォータニオン1
Q2
クォータニオン2
出力
out
クォータニオン

egqtADD
入力
Q1
[1.0, 1.0, 1.0, 1.0]
Q2
[0.5, 2.0, 1.0, 0.0]
出力
out
[1.5, 3.0, 2.0, 1.0]

計算式

\[ Q1+Q2 = \begin{bmatrix} a_{w} \\ a_{x} \\ a_{y} \\ a_{z} \\ \end{bmatrix} + \begin{bmatrix} b_{w} \\ b_{x} \\ b_{y} \\ b_{z} \\ \end{bmatrix} = out \]


減算 (qtSUB)

qtSUB

func_qtSUB
入力
Q1
クォータニオン1
Q2
クォータニオン2
出力
out
クォータニオン

egqtSUB
入力
Q1
[1.0, 1.0, 1.0, 1.0]
Q2
[0.5, 2.0, 1.0, 0.0]
出力
out
[0.5, -1.0, 0.0, 1.0]

計算式

\[ Q1-Q2 = \begin{bmatrix} a_{w} \\ a_{x} \\ a_{y} \\ a_{z} \\ \end{bmatrix} - \begin{bmatrix} b_{w} \\ b_{x} \\ b_{y} \\ b_{z} \\ \end{bmatrix} = out \]


外積 (qtCross)

qtCross

func_qtCross
入力
Q1
クォータニオン1
Q2
クォータニオン2
出力
out
クォータニオン

egqtCross
入力
Q1
[1.0, 1.0, 1.0, 1.0]
Q2
[0.5, 2.0, 1.0, 0.0]
出力
out
[-2.5, 1.5, 3.5, -0.5]

計算式

\[ Q1\times Q2 = \begin{bmatrix} a_{w} \\ a_{x} \\ a_{y} \\ a_{z} \\ \end{bmatrix} \times \begin{bmatrix} b_{w} \\ b_{x} \\ b_{y} \\ b_{z} \\ \end{bmatrix} = out \]


共役 (qtCQ)

qtCQ

func_qtCQ
入力
qt
クォータニオン
出力
out
クォータニオン

egqtCQ
入力
qt
[0.5, 2.0, 1.0, 0.0]
出力
out
[0.5, -2.0, -1.0, -0.0]

計算式

\[ \bar{qt} = \begin{bmatrix} a_{w} \\ a_{x} \\ a_{y} \\ a_{z} \\ \end{bmatrix} = out \]


実部の設定 (qtSetReal)

qtSetReal

func_qtSetReal
入力
w
スカラー部(実部)
入出力
qt
クォータニオン

egqtSetReal
入力
w
0.5
入出力
qt
[0.5, 0.0, 0.0, 0.0]

虚部の設定 (qtSetImag)

qtSetImag

func_qtSetImag
入力
vec
ベクトル部(虚部)
入出力
qt
クォータニオン

egqtSetImag
入力
vec
[1.0, 2.0, 3.0]
入出力
qt
[0.0, 1.0, 2.0, 3.0]

この記事へのコメント