Share via


D3DXMatrixTransformation2D 函式 (D3dx9math.h)

注意

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

建置 2D 轉換矩陣,代表 xy 平面中的轉換。 Null 引數會被視為身分識別轉換。

語法

D3DXMATRIX* D3DXMatrixTransformation2D(
  _Inout_       D3DXMATRIX  *pOut,
  _In_    const D3DXVECTOR2 *pScalingCenter,
  _In_          FLOAT       pScalingRotation,
  _In_    const D3DXVECTOR2 *pScaling,
  _In_    const D3DXVECTOR2 *pRotationCenter,
  _In_          FLOAT       Rotation,
  _In_    const D3DXVECTOR2 *pTranslation
);

參數

pOut [in, out]

類型: D3DXMATRIX*

包含轉換結果的 D3DXMATRIX 結構的指標。

pScalingCenter [in]

類型:const D3DXVECTOR2*

D3DXVECTOR2結構的指標,這是識別縮放中心的點。 如果這個引數為 Null,則會將身分識別 Msc 矩陣套用至「備註」中的公式。

pScalingRotation [in]

類型: FLOAT

縮放旋轉因數。

pScaling [in]

類型:const D3DXVECTOR2*

D3DXVECTOR2結構的指標,這是識別尺規的點。 如果這個引數為 Null,則會將識別 Ms 矩陣套用至「備註」中的公式。

pRotationCenter [in]

類型:const D3DXVECTOR2*

D3DXVECTOR2結構的指標,這是識別旋轉中心的點。 如果這個引數為 Null,則會將識別 Mrc 矩陣套用至「備註」中的公式。

旋轉 [in]

類型: FLOAT

旋轉角度以弧度為單位。

pTranslation [in]

類型:const D3DXVECTOR2*

識別轉譯的 D3DXVECTOR2 結構的指標。 如果此引數為 Null,則會將身分識別 Mt 矩陣套用至「備註」中的公式。

傳回值

類型: D3DXMATRIX*

包含轉換矩陣 的 D3DXMATRIX 結構的指標。

備註

此函式會使用下列公式計算轉換矩陣,並以從左至右的順序評估矩陣串連:

Mout = (Msc) ⁻ー* (Msr) ⁻ー* Ms * Msr * Msc * (Mrc) ⁻ー* mr * Mrc * Mt

其中:

Mout = 輸出矩陣 (pOut)

Msc = 調整中心矩陣 (pScalingCenter)

Msr = 縮放旋轉矩陣 (pScalingRotation)

Ms = 調整矩陣 (pScaling)

Mrc = 旋轉矩陣的中心 (pRotationCenter)

Mr = 旋轉矩陣 (旋轉)

Mt = 轉譯矩陣 (pTranslation)

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

針對 3D 轉換,請使用 D3DXMatrixTransformation

規格需求

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

另請參閱

數學函式

D3DXMatrixAffineTransformation2D

轉換 (Direct3D 9)