|
OpenCV 4.5.3(日本語機械翻訳)
|
#include <dualquaternion.hpp>
公開メンバ関数 |
|
| DualQuat (const _Tp w, const _Tp x, const _Tp y, const _Tp z, const _Tp w_, const _Tp x_, const _Tp y_, const _Tp z_) | |
| 8つの同じ型の数値から作成する。 |
|
| DualQuat (const Vec< _Tp, 8 > &q) | |
| doubleまたはfloatのベクトルから作成します。 |
|
| Quat< _Tp > | getRealPart () const |
| 双対四元数の実数部を表す四元数を返します。実部の定義は以下のとおりです。createFromQuat().[【詳解】(英語]
|
|
| Quat< _Tp > | getDualPart () const |
| は、二重四元数の二重部分を表す四元数を返します。二重部分の定義は以下の通りです。createFromQuat().[【詳解】(英語]
|
|
| DualQuat< _Tp > | conjugate () const |
| dual quaternionの共役を返します。[【詳解】(英語]
|
|
| Quat< _Tp > | getRotation (QuatAssumeType assumeUnit=QUAT_ASSUME_NOT_UNIT) const |
| 回転をクオータニオン形式で返します。 |
|
| Vec< _Tp, 3 > | getTranslation (QuatAssumeType assumeUnit=QUAT_ASSUME_NOT_UNIT) const |
並進ベクトルを返す。回転 この二重四元演算子の の回転は平行移動の前に適用されます。 . 双対の四元演算子 は次のように定義されます。[【詳解】(英語]
|
|
| DualQuat< _Tp > | norm () const |
のノルムを返します。 のノルムを返します。 .[【詳解】(英語]
|
|
| DualQuat< _Tp > | normalize () const |
| は正規化された二重四元数を返します。デュアルクォータニオンは次のように表されます。[【詳解】(英語]
|
|
| DualQuat< _Tp > | inv (QuatAssumeType assumeUnit=QUAT_ASSUME_NOT_UNIT) const |
もし は双対四元数であり,pはゼロではないので,逆双対四元数は[【詳解】(英語]
|
|
| _Tp | dot (DualQuat< _Tp > p) const |
| 2つの双対四元数のドットプロダクトを返します。[【詳解】(英語]
|
|
| DualQuat< _Tp > | power (const _Tp t, QuatAssumeType assumeUnit=QUAT_ASSUME_NOT_UNIT) const |
の値を返します。 ここで、pは二重四元演算子です。これは次のように計算できます。[【詳解】(英語]
|
|
| DualQuat< _Tp > | power (const DualQuat< _Tp > &q, QuatAssumeType assumeUnit=QUAT_ASSUME_NOT_UNIT) const |
の値を返します。 pとqは二重四元数です。これは次のように計算できます。[【詳解】(英語]
|
|
| DualQuat< _Tp > | exp () const |
| 指数関数の値を返します。 |
|
| DualQuat< _Tp > | log (QuatAssumeType assumeUnit=QUAT_ASSUME_NOT_UNIT) const |
| 対数関数の値を返す。[【詳解】(英語]
|
|
| Vec< _Tp, 8 > | toVec () const |
| このデュアルクォータニオンをベクトルに変換します。 |
|
| Matx< _Tp, 4, 4 > | toMat (QuatAssumeType assumeUnit=QUAT_ASSUME_NOT_UNIT) const |
| この双対の四元演算子を,行列形式のアフィン変換行列に変換します。createFromMat(). |
|
| Affine3< _Tp > | toAffine3 (QuatAssumeType assumeUnit=QUAT_ASSUME_NOT_UNIT) const |
| この双対の四元数を Affine3 のインスタンスに変換します。 |
|
| DualQuat< _Tp > | operator- () const |
反対側の二元クォータニオンを返します。 を満足する反対側の二元四元演算子
[【詳解】(英語]
|
|
| bool | operator== (const DualQuat< _Tp > &) const |
2つのクォータニオン p と q がほぼ等しい場合,つまりそれぞれの絶対値が CV_DUAL_QUATRONI よりも小さい場合,true を返します. および すなわち,それぞれの絶対値が CV_DUAL_QUAT_EPS よりも小さい場合です. |
|
| DualQuat< _Tp > | operator- (const DualQuat< _Tp > &) const |
2つの二元四元数p,qの減算演算子です。 および .[【詳解】(英語]
|
|
| DualQuat< _Tp > & | operator-= (const DualQuat< _Tp > &) |
| 2つの二元四元数pとqの減算代入演算子。左のオペランドから右のオペランドを引き、その結果を左のオペランドに代入します。[【詳解】(英語]
|
|
| DualQuat< _Tp > | operator+ (const DualQuat< _Tp > &) const |
2つのデュアルクォータニオンpとqの加算演算子です。 および .[【詳解】(英語]
|
|
| DualQuat< _Tp > & | operator+= (const DualQuat< _Tp > &) |
| 2つの二元四元数p,qの加算代入演算子です。左のオペランドに右のオペランドを加算し、その結果を左のオペランドに代入します。[【詳解】(英語]
|
|
| DualQuat< _Tp > & | operator*= (const DualQuat< _Tp > &) |
| 2つのクォータニオンの乗算代入演算子です。右のオペランドと左のオペランドを乗算し、その結果を左のオペランドに代入します。[【詳解】(英語]
|
|
| DualQuat< _Tp > | operator*= (const _Tp s) |
| 四元数とスカラーの乗算代入演算子。右のオペランドと左のオペランドを掛け合わせ、その結果を左のオペランドに代入します。[【詳解】(英語]
|
|
| DualQuat< _Tp > | operator* (const DualQuat< _Tp > &) const |
| 2つの双対四元数qとpの乗算演算子。演算子の両側の値を乗算します。[【詳解】(英語]
|
|
| DualQuat< _Tp > | operator/ (const _Tp s) const |
| 2つの四元数とスカラーの除算演算子です。左のオペランドを右のオペランドで除算し、その結果を左のオペランドに代入します。[【詳解】(英語]
|
|
| DualQuat< _Tp > | operator/ (const DualQuat< _Tp > &) const |
| 左手のオペランドを右手のオペランドで除算する2つの2元クォータニオンpとqの除算演算子です。[【詳解】(英語]
|
|
| DualQuat< _Tp > & | operator/= (const DualQuat< _Tp > &) |
| 2つの二元四元数p,qの除算代入演算子;左オペランドを右オペランドで除算し、結果を左オペランドに代入します。[【詳解】(英語]
|
|
| Quat< _Tp > & | operator/= (const _Tp s) |
| 二重四元数とスカラーの除算代入演算子です。左手のオペランドを右手のオペランドで除算し、その結果を左手のオペランドに代入します。[【詳解】(英語]
|
|
| template<typename T > | |
| DualQuat< T > | power (const T t, QuatAssumeType assumeUnit) const |
| template<typename T > | |
| DualQuat< T > | power (const DualQuat< T > &q, QuatAssumeType assumeUnit) const |
| template<int cn> | |
| DualQuat< T > | gdqblend (const Vec< DualQuat< T >, cn > &_dualquat, InputArray _weight, QuatAssumeType assumeUnit) |
静的公開メンバ関数 |
|
| static DualQuat< _Tp > | createFromQuat (const Quat< _Tp > &realPart, const Quat< _Tp > &dualPart) |
同じ型の2つのクォータニオンpとqからデュアルクォータニオンを作成します。デュアルクォータニオン は次のような形をしています。[【詳解】(英語]
|
|
| static DualQuat< _Tp > | createFromAngleAxisTrans (const _Tp angle, const Vec< _Tp, 3 > &axis, const Vec< _Tp, 3 > &translation) |
回転角と回転軸からデュアルクォータニオンを作成します。 回転角、回転軸 並進 . デュアルクォータニオンを生成します。 の形で[【詳解】(英語]
|
|
| static DualQuat< _Tp > | createFromMat (InputArray _R) |
この二重四元演算子をアフィン変換行列に変換します。 . デュアルクオータニオンは、回転 並進 . アフィン変換行列 は次のような形をしています。[【詳解】(英語]
|
|
| static DualQuat< _Tp > | createFromAffine3 (const Affine3< _Tp > &R) |
| アフィン行列から二重四元演算を行います.アフィン行列の定義は,以下を参照してくださいcreateFromMat()
|
|
| static DualQuat< _Tp > | createFromPitch (const _Tp angle, const _Tp d, const Vec< _Tp, 3 > &axis, const Vec< _Tp, 3 > &moment) |
| デュアルクォータニオンは、次の形式のベクトルです。[【詳解】(英語]
|
|
| static DualQuat< _Tp > | sclerp (const DualQuat< _Tp > &q1, const DualQuat< _Tp > &q2, const _Tp t, bool directChange=true, QuatAssumeType assumeUnit=QUAT_ASSUME_NOT_UNIT) |
ねじ線形補間(ScLERP)は、二元四元系の球面線形補間を拡張したものです。もし および は初期ポーズと最終ポーズを表す2つの二重四元数です。ScLERP関数の補間は次のように定義できる。[【詳解】(英語]
|
|
| static DualQuat< _Tp > | dqblend (const DualQuat< _Tp > &q1, const DualQuat< _Tp > &q2, const _Tp t, QuatAssumeType assumeUnit=QUAT_ASSUME_NOT_UNIT) |
Dual Quaternion Linear Blending(DQB)は、2つのdual quaternion間の変換を計算するものです。 および と定義することができます。[【詳解】(英語]
|
|
| template<int cn> | |
| static DualQuat< _Tp > | gdqblend (const Vec< DualQuat< _Tp >, cn > &dualquat, InputArray weights, QuatAssumeType assumeUnit=QUAT_ASSUME_NOT_UNIT) |
一般化されたDual Quaternion linear Blendingは,2つ以上の剛体変換に対して動作します.これらの変換が,凸型の重みを持つ単位双対四元数として表される場合は 凸の重みを持つ とすると、一般化DQBは単に[【詳解】(英語]
|
|
| static DualQuat< _Tp > | gdqblend (InputArray dualquat, InputArray weights, QuatAssumeType assumeUnit=QUAT_ASSUME_NOT_UNIT) |
一般化されたDual Quaternion linear Blendingは,2つ以上の剛体変換に対して動作します.これらの変換が,凸型の重みを持つ単位双対四元数として表される場合は 凸の重みを持つ とすると、一般化DQBは単に[【詳解】(英語]
|
|
公開変数類 |
|
| _Tp | w |
| _Tp | x |
| _Tp | y |
| _Tp | z |
| _Tp | w_ |
| _Tp | x_ |
| _Tp | y_ |
| _Tp | z_ |
静的公開変数類 |
|
| static constexpr _Tp | CV_DUAL_QUAT_EPS = (_Tp)1.e-6 |
フレンド |
|
| template<typename T > | |
| DualQuat< T > | conjugate (const DualQuat< T > &dq) |
| dual quaternionの共役を返します。[【詳解】(英語]
|
|
| template<typename T > | |
| DualQuat< T > | inv (const DualQuat< T > &dq, QuatAssumeType assumeUnit) |
もし は双対四元数であり,pはゼロではないので,逆双対四元数は[【詳解】(英語]
|
|
| template<typename T > | |
| DualQuat< T > | power (const DualQuat< T > &dq, const T t, QuatAssumeType assumeUnit) |
の値を返します。 ここで、pは二重四元演算子です。これは次のように計算できます。[【詳解】(英語]
|
|
| template<typename T > | |
| DualQuat< T > | power (const DualQuat< T > &p, const DualQuat< T > &q, QuatAssumeType assumeUnit) |
の値を返します。 pとqは二重四元数です。これは次のように計算できます。[【詳解】(英語]
|
|
| template<typename T > | |
| DualQuat< T > | exp (const DualQuat< T > &dq) |
| 指数関数の値を返します。[【詳解】(英語]
|
|
| template<typename T > | |
| DualQuat< T > | log (const DualQuat< T > &dq, QuatAssumeType assumeUnit) |
| 対数関数の値を返す。[【詳解】(英語]
|
|
| template<typename T > | |
| DualQuat< T > | cv::operator+ (const T s, const DualQuat< T > &) |
| スカラーとデュアルクォータニオンの加算演算子。左手のオペランドから右手のオペランドを加算します。[【詳解】(英語]
|
|
| template<typename T > | |
| DualQuat< T > | cv::operator+ (const DualQuat< T > &, const T s) |
| 二重四元数とスカラの加算演算子。左手のオペランドから右手のオペランドを加算します。[【詳解】(英語]
|
|
| template<typename T > | |
| DualQuat< T > | cv::operator* (const T s, const DualQuat< T > &) |
| スカラーと二元四元数の乗算演算子です。右のオペランドと左のオペランドを乗算し、その結果を左のオペランドに代入します。[【詳解】(英語]
|
|
| template<typename T > | |
| DualQuat< T > | cv::operator- (const DualQuat< T > &, const T s) |
| 二重四元演算子とスカラの減算演算子です。左手のオペランドから右手のオペランドを減算します。[【詳解】(英語]
|
|
| template<typename T > | |
| DualQuat< T > | cv::operator- (const T s, const DualQuat< T > &) |
| スカラーと二元クォータニオンの減算演算子です。左手のオペランドから右手のオペランドを減算します。[【詳解】(英語]
|
|
| template<typename T > | |
| DualQuat< T > | cv::operator* (const DualQuat< T > &, const T s) |
| デュアルクォータニオンとスカラーの乗算演算子です。右のオペランドと左のオペランドを掛け合わせ、その結果を左のオペランドに代入します。[【詳解】(英語]
|
|
| template<typename S > | |
| std::ostream & | cv::operator<< (std::ostream &, const DualQuat< S > &) |
デュアルクォータニオンは,通常のクォータニオンが回転のみを記述できるのに対して,回転と並進を同時に記述するために導入されました.これは,最短経路でのポーズ補間,局所的なポーズの最適化,空間的な変形などに利用できます.詳細は以下をご覧ください。
単位デュアルクオータニオンは、古典的に次のように表すことができます。
ここで
はそれぞれ回転(通常の単位四元数)と並進(純粋な通常四元数)を表します。
2つの四元数からなる一般的な二元四元数は、通常、次のような形で表されます。
ここで、導入された双対単位
は以下の条件を満たします。
を満たす。
は四元数である。
また、双対四元数は4つの要素で構成されていると解釈することもできます。双対数:
を設定すると
および
を0に設定すると、双対四元数は双対数に変換されます。normalize().
デュアルクオータニオンを作成する場合は
ある点
を双対四元数の形にすると
. ある点から別の点への変換は
から別の点
二元的な四元数の下で
が
ここで
の線は
座標
双対の四元数で定義される座標の線
. 線を変形するには
ここで
および
.
Vec<double, 8>またはVec<float, 8>を抽出するにはtoVec();
アフィン変換行列を抽出するには,参照toMat();
Affine3のインスタンスを抽出するには,参照。toAffine3();
2つのクォータニオンの場合
が補間される必要がある場合はsclerp()
またはdqblend().
2つ以上のデュアルクォータニオンをブレンドする必要がある場合は、対応するウェイトを用いた一般化線形デュアルクォータニオンブレンドを使用できます、つまりgdqblend().
|
inline |
dual quaternionの共役を返します。
|
static |
回転角と回転軸からデュアルクォータニオンを作成します。
回転角、回転軸
並進
. デュアルクォータニオンを生成します。
の形で
| angle | 回転角度。 |
| axis | 回転軸. |
| translation | 長さ3のベクトル. |
|
static |
この二重四元演算子をアフィン変換行列に変換します。
. デュアルクオータニオンは、回転
並進
. アフィン変換行列
は次のような形をしています。
Aを変換すべきn個の点からなる行列とすると、これは次のように実現できる。
ここで、Aは次のような形をしています。
ここで,同じ添え字は同じ点を表す。また、Aのサイズは
とし、行列new_Aも同じ大きさにします。
| _R | 回転と並進を表す4x4の行列。 |
|
static |
デュアルクォータニオンは、次の形式のベクトルです。
ここで
は二重角度、そして
は二重軸です。
この表現では
は回転角であり
はネジ軸、dは軸に沿った移動距離です。
| angle | 回転角度。 |
| d | は回転軸に沿った平行移動です。 |
| axis | 回転軸はw=0の四元数で表されます。 |
| moment | は線のモーメントで、軸と直交している必要があります。 |
|
static |
同じ型の2つのクォータニオンpとqからデュアルクォータニオンを作成します。デュアルクォータニオン
は次のような形をしています。
ここで、pとqは次のように定義される。
pとqは、それぞれ実数部と双数部です。
| realPart | デュアルクォータニオンの実数部であるクォータニオン。 |
| dualPart | a quaternion, dual quaternionの双対部分。 |
|
inline |
2つの双対四元数のドットプロダクトを返します。
| p | 他のデュアルクオータニオン。 |
|
static |
Dual Quaternion Linear Blending(DQB)は、2つのdual quaternion間の変換を計算するものです。
および
と定義することができます。
ここで
および
は入力された変換を表す単位双対四元数です。2つ以上の剛体変換に対応するDQBを使いたい場合は、以下を参照してください。gdqblend
| q1 | は,入力変換を表す単位双対四元数です。 |
| q2 | は,入力変換を表す単位双対四元数です。 |
| t | パラメータ . |
| assumeUnit | もしQUAT_ASSUME_UNITを指定すると,この双対四元数は単位双対四元数であると仮定され,この関数はいくつかの計算を節約します。 |
|
static |
一般化されたDual Quaternion linear Blendingは,2つ以上の剛体変換に対して動作します.これらの変換が,凸型の重みを持つ単位双対四元数として表される場合は
凸の重みを持つ
とすると、一般化DQBは単に
| dualquat | 双対四元数のベクトル |
| weights | 重みのベクトルであり,重みの大きさは dualquat と同じであり,重みは次の条件を満たす必要があります。 および . |
| assumeUnit | もしQUAT_ASSUME_UNITこれらの双対四元数は単位四元数であると仮定し、この関数はいくつかの計算を節約します。 |
|
static |
一般化されたDual Quaternion linear Blendingは,2つ以上の剛体変換に対して動作します.これらの変換が,凸型の重みを持つ単位双対四元数として表される場合は
凸の重みを持つ
とすると、一般化DQBは単に
| dualquat | 8つのチャンネルと1つの行または1つの列を持つ二元四元数。 |
| weights | 重みのベクトルであり,重みの大きさは dualquat と同じであり,重みは次の条件を満たす必要があります。 および . |
| assumeUnit | もしQUAT_ASSUME_UNITこれらの双対四元数は単位四元数であると仮定し、この関数はいくつかの計算を節約します。 |
|
inline |
は、二重四元数の二重部分を表す四元数を返します。二重部分の定義は以下の通りです。createFromQuat().
|
inline |
双対四元数の実数部を表す四元数を返します。実部の定義は以下のとおりです。createFromQuat().
|
inline |
並進ベクトルを返す。回転
この二重四元演算子の
の回転は平行移動の前に適用されます。
. 双対の四元演算子
は次のように定義されます。
したがって,並進は次のように求められる。
| assumeUnit | もしQUAT_ASSUME_UNITを指定すると,この双対四元数は単位双対四元数であると仮定され,この関数はいくつかの計算を節約します。 |
|
inline |
もし
は双対四元数であり,pはゼロではないので,逆双対四元数は
またはそれに相当するものです。
| assumeUnit | もしQUAT_ASSUME_UNITを指定すると,この双対四元数は単位双対四元数であると仮定され,この関数はいくつかの計算を節約します。 |
| DualQuat< T > cv::DualQuat< T >::log | ( | QuatAssumeType |
assumeUnit
=
QUAT_ASSUME_NOT_UNIT
|
) | const |
対数関数の値を返す。
| assumeUnit | もしQUAT_ASSUME_UNITを指定すると,この双対四元数は単位双対四元数であると仮定され,この関数はいくつかの計算を節約します。 |
| DualQuat< T > cv::DualQuat< T >::norm |
のノルムを返します。
のノルムを返します。
.
一般的に、単位のない双対四元数のノルムは双対数です。便宜上、双対四元数の形で返します。
| DualQuat< T > cv::DualQuat< T >::normalize |
は正規化された二重四元数を返します。デュアルクォータニオンは次のように表されます。
ここで
はそれぞれ回転(通常のクォータニオン)と移動(純粋な通常のクォータニオン)を表します。
は双対四元数のノルム(双対数)です。双対四元数が単位であるのは、次の条件を満たす場合のみです。
ここで
はドット積を意味します。正規化の過程は
次に、単純に証明します。
が単位双対四元数であることを証明します。
予想通り、実数部は回転で、双対部は純粋な四元数です。
|
inline |
2つの双対四元数qとpの乗算演算子。演算子の両側の値を乗算します。
双対四元数乗算のルール。双対の四元数は、四元数の順序付きペア[A, B]として書くことができます。したがって
例えば
| DualQuat< _Tp > cv::DualQuat< _Tp >::operator*= | ( | const _Tp | s | ) |
四元数とスカラーの乗算代入演算子。右のオペランドと左のオペランドを掛け合わせ、その結果を左のオペランドに代入します。
四元数とスカラの乗算のルール。
例えば
| DualQuat< _Tp > & cv::DualQuat< _Tp >::operator*= | ( | const DualQuat< _Tp > & | ) |
2つのクォータニオンの乗算代入演算子です。右のオペランドと左のオペランドを乗算し、その結果を左のオペランドに代入します。
双対四元数乗算のルール。双対の四元数は、四元数の順序付きペア[A, B]として書くことができます。したがって
例えば
|
inline |
2つのデュアルクォータニオンpとqの加算演算子です。
および
.
例えば
|
inline |
2つの二元四元数p,qの加算代入演算子です。左のオペランドに右のオペランドを加算し、その結果を左のオペランドに代入します。
例えば
|
inline |
反対側の二元クォータニオンを返します。
を満足する反対側の二元四元演算子
例えば
| DualQuat< _Tp > cv::DualQuat< _Tp >::operator- | ( | const DualQuat< _Tp > & | ) | const |
2つの二元四元数p,qの減算演算子です。
および
.
例えば
|
inline |
2つの二元四元数pとqの減算代入演算子。左のオペランドから右のオペランドを引き、その結果を左のオペランドに代入します。
例えば
| DualQuat< _Tp > cv::DualQuat< _Tp >::operator/ | ( | const _Tp | s | ) | const |
2つの四元数とスカラーの除算演算子です。左のオペランドを右のオペランドで除算し、その結果を左のオペランドに代入します。
スカラーを用いた二重四元演算のルール。
例えば
| DualQuat< _Tp > cv::DualQuat< _Tp >::operator/ | ( | const DualQuat< _Tp > & | ) | const |
左手のオペランドを右手のオペランドで除算する2つの2元クォータニオンpとqの除算演算子です。
二重四元演算子による除算の規則。
例えば
| Quat< _Tp > & cv::DualQuat< _Tp >::operator/= | ( | const _Tp | s | ) |
二重四元数とスカラーの除算代入演算子です。左手のオペランドを右手のオペランドで除算し、その結果を左手のオペランドに代入します。
スカラーを用いた二重四元演算のルール。
例えば
| DualQuat< _Tp > & cv::DualQuat< _Tp >::operator/= | ( | const DualQuat< _Tp > & | ) |
2つの二元四元数p,qの除算代入演算子;左オペランドを右オペランドで除算し、結果を左オペランドに代入します。
二重四元式の四元式での除算の規則。
例えば
| DualQuat< _Tp > cv::DualQuat< _Tp >::power | ( | const _Tp | t, |
| QuatAssumeType |
assumeUnit
=
QUAT_ASSUME_NOT_UNIT
|
||
| ) | const |
の値を返します。
ここで、pは二重四元演算子です。これは次のように計算できます。
| t | べき乗関数の指数。 |
| assumeUnit | もしQUAT_ASSUME_UNITを指定すると,この双対四元数は単位双対四元数であると仮定され,この関数はいくつかの計算を節約します。 |
| DualQuat< _Tp > cv::DualQuat< _Tp >::power | ( | const DualQuat< _Tp > & | q, |
| QuatAssumeType |
assumeUnit
=
QUAT_ASSUME_NOT_UNIT
|
||
| ) | const |
の値を返します。
pとqは二重四元数です。これは次のように計算できます。
| q | 二重四元数 |
| assumeUnit | もしQUAT_ASSUME_UNITこの二重四元数は、二重単位四元数であると仮定し、この関数はいくつかの計算を節約します。 |
|
static |
ねじ線形補間(ScLERP)は、二元四元系の球面線形補間を拡張したものです。もし
および
は初期ポーズと最終ポーズを表す2つの二重四元数です。ScLERP関数の補間は次のように定義できる。
| q1 | a dual quaternion は初期ポーズを表す。 |
| q2 | デュアルクォータニオンは最終的なポーズを表します。 |
| t | 補間パラメータ |
| directChange | trueの場合、常に最短経路を返します。 |
| assumeUnit | もしQUAT_ASSUME_UNITを指定すると,この双対四元数は単位双対四元数であると仮定され,この関数はいくつかの計算を節約します。 |
例えば
|
friend |
dual quaternionの共役を返します。
| dq | デュアルクオータニオンの乗算演算子。 |
|
friend |
デュアルクォータニオンとスカラーの乗算演算子です。右のオペランドと左のオペランドを掛け合わせ、その結果を左のオペランドに代入します。
四元数とスカラの乗算のルール。
例えば
|
friend |
スカラーと二元四元数の乗算演算子です。右のオペランドと左のオペランドを乗算し、その結果を左のオペランドに代入します。
四元数とスカラの乗算のルール。
例えば
|
friend |
二重四元数とスカラの加算演算子。左手のオペランドから右手のオペランドを加算します。
例えば
|
friend |
スカラーとデュアルクォータニオンの加算演算子。左手のオペランドから右手のオペランドを加算します。
例えば
|
friend |
二重四元演算子とスカラの減算演算子です。左手のオペランドから右手のオペランドを減算します。
例えば
|
friend |
スカラーと二元クォータニオンの減算演算子です。左手のオペランドから右手のオペランドを減算します。
例えば
指数関数の値を返します。
| dq | デュアルクオータニオンの乗算演算子。 |
|
friend |
もし
は双対四元数であり,pはゼロではないので,逆双対四元数は
またはそれに相当するものです。
| dq | デュアルクオータニオンの乗算演算子。 |
| assumeUnit | もしQUAT_ASSUME_UNITdual quaternion dq は、単位二重四元数であると仮定し、この関数はいくつかの計算を節約します。 |
|
friend |
対数関数の値を返す。
| dq | デュアルクオータニオンの乗算演算子。 |
| assumeUnit | もしQUAT_ASSUME_UNITdual quaternion dq は、単位二重四元数であると仮定し、この関数はいくつかの計算を節約します。 |
|
friend |
の値を返します。
ここで、pは二重四元演算子です。これは次のように計算できます。
| dq | デュアルクオータニオンの乗算演算子。 |
| t | べき乗関数の指数。 |
| assumeUnit | もしQUAT_ASSUME_UNITdual quaternion dq は、単位二重四元数であると仮定し、この関数はいくつかの計算を節約します。 |
|
friend |
の値を返します。
pとqは二重四元数です。これは次のように計算できます。
| p | デュアルクオータニオンの乗算演算子。 |
| q | デュアルクオータニオンの乗算演算子。 |
| assumeUnit | もしQUAT_ASSUME_UNITdual quaternion p は, dual unit quaternion であると仮定し,この関数はいくつかの計算を節約します. |