次の方法で共有


D3DXQuaternionBaryCentric

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

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

パラメータ

  • pOut
    処理の結果を表す D3DXQUATERNION 構造体へのポインターです。
  • pQ1
    演算対象の D3DXQUATERNION 構造体へのポインターです。
  • pQ2
    演算対象の D3DXQUATERNION 構造体へのポインターです。
  • pQ3
    演算対象の D3DXQUATERNION 構造体へのポインターです。
  • f
    加重係数。「解説」を参照してください。
  • g
    加重係数。「解説」を参照してください。

戻り値

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

解説 

D3DXQuaternionBaryCentric 関数は、次の球状線形補間演算を使用して重心座標を算出します。

Slerp(Slerp(Q1, Q2, f+g), Slerp(Q1, Q3, f+g), g/(f+g))

この関数の戻り値は、pOut パラメーターに返される値と同じです。このため、D3DXQuaternionBaryCentric 関数は他の関数のパラメーターとして使用できます。

まだ正規化されていない入力クオータニオンに対しては、すべて D3DXQuaternionNormalize 関数を使用します。

重心座標は、三角形の頂点に関して、三角形の内側のポイントを定義します。重心座標の詳細については、Mathworld の「Barycentric Coordinates (重心座標)」の説明を参照してください。

要件

ヘッダー: D3dx9math.h 宣言

ライブラリ: D3dx9.lib 内容