Microsoft DirectX 8.0 (C++)

D3DXQuaternionBaryCentric

重心座標のクオータニオンを返す。

D3DXQUATERNION* D3DXQuaternionBaryCentric(
  D3DXQUATERNION* pOut,
  CONST D3DXQUATERNION* pQ1,
  CONST D3DXQUATERNION* pQ2,
  CONST D3DXQUATERNION* pQ3,
  CONST D3DXQUATERNION* pQ4,
  FLOAT f,
  FLOAT g
); 

パラメータ

pOut
[in, out] 演算結果である D3DXQUATERNION 構造体へのポインタ。
pQ1
[in] 処理の基になる D3DXQUATERNION 構造体へのポインタ。
pQ2
[in] 処理の基になる D3DXQUATERNION 構造体へのポインタ。
pQ3
[in] 処理の基になる D3DXQUATERNION 構造体へのポインタ。
pQ4
[in] 処理の基になる D3DXQUATERNION 構造体へのポインタ。
f
[in] 加重係数。「注意」を参照すること。
g
[in] 加重係数。「注意」を参照すること。

戻り値

重心座標の D3DXQUATERNION 構造体へのポインタ。

注意

重心座標を計算するため、D3DXQuaternionBaryCentric 関数は次に示す球状線形補間演算子を実装する。Slerp(Slerp(Q1, Q2, f+g), Slerp(Q1, Q3, f+g), g/(f+g))

この関数の戻り値は、pOut パラメータの戻り値と同じである。このように、D3DXQuaternionBaryCentric 関数を別の関数のパラメータとして使用できる。

動作環境

  ヘッダー : D3dx8math.h で宣言。
  インポート ライブラリ : D3dx8.lib を使用。