Share via


D3DXQuaternionSquad 函式 (D3dx9math.h)

注意

D3DX 公用程式程式庫已被取代。 建議您改用 DirectXMath

使用球面四邊形插補插補點,在四元數之間插補。

語法

D3DXQUATERNION* D3DXQuaternionSquad(
  _Inout_       D3DXQUATERNION *pOut,
  _In_    const D3DXQUATERNION *pQ1,
  _In_    const D3DXQUATERNION *pA,
  _In_    const D3DXQUATERNION *pB,
  _In_    const D3DXQUATERNION *pC,
  _In_          FLOAT          t
);

參數

pOut [in, out]

類型: D3DXQUATERNION*

D3DXQUATERNION結構的指標,這是作業的結果。

pQ1 [in]

類型:const D3DXQUATERNION*

來源 D3DXQUATERNION 結構的指標。

pA [in]

類型:const D3DXQUATERNION*

來源 D3DXQUATERNION 結構的指標。

pB [in]

類型:const D3DXQUATERNION*

來源 D3DXQUATERNION 結構的指標。

pC [in]

類型:const D3DXQUATERNION*

來源 D3DXQUATERNION 結構的指標。

t [in]

類型: FLOAT

參數,指出四元數之間的插補距離。

傳回值

類型: D3DXQUATERNION*

D3DXQUATERNION結構的指標,這是球面四邊形插補的結果。

備註

此函式會使用下列一連串的球面線性插補作業:

Slerp(Slerp(pQ1, pC, t), Slerp(pA, pB, t), 2t(1 - t))

此函式的傳回值與 pOut 參數中傳回的值相同。 如此一來, D3DXQuaternionSquad 函式就可以當做另一個函式的參數使用。

如需四元數之間的插補範例,請參閱 SkinnedMesh 範例。 您可以從 DirectX SDK 取得此範例並加以瞭解。 如需 DirectX SDK 的相關資訊,請參閱 DirectX SDK 在哪裡?

針對尚未正規化的任何四元數輸入,請使用 D3DXQuaternionNormalize

規格需求

需求
標頭
D3dx9math.h
程式庫
D3dx9.lib

另請參閱

數學函式

D3DXQuaternionExp

D3DXQuaternionLn

D3DXQuaternionSquadSetup