Fungsi D3DXMatrixAffineTransformation (D3dx9math.h)

Catatan

Pustaka utilitas D3DX tidak digunakan lagi. Kami menyarankan agar Anda menggunakan DirectXMath sebagai gantinya.

Membangun matriks transformasi afin 3D. Argumen NULL diperlakukan sebagai transformasi identitas.

Sintaks

D3DXMATRIX* D3DXMatrixAffineTransformation(
  _Inout_       D3DXMATRIX     *pOut,
  _In_          FLOAT          Scaling,
  _In_    const D3DXVECTOR3    *pRotationCenter,
  _In_    const D3DXQUATERNION *pRotation,
  _In_    const D3DXVECTOR3    *pTranslation
);

Parameter

pOut [masuk, keluar]

Jenis: D3DXMATRIX*

Arahkan ke struktur D3DXMATRIX yang merupakan hasil operasi.

Penskalan [in]

Jenis: FLOAT

Faktor penskalakan.

pRotationCenter [in]

Jenis: const D3DXVECTOR3*

Pointer ke struktur D3DXVECTOR3 , titik yang mengidentifikasi pusat rotasi. Jika argumen ini NULL, identitas matriks Mrc diterapkan ke rumus dalam Keterangan.

pRotation [in]

Jenis: const D3DXQUATERNION*

Penunjuk ke struktur D3DXQUATERNION yang menentukan rotasi. Jika argumen ini NULL, identitas Mr matrix diterapkan ke rumus dalam Keterangan.

pTranslation [in]

Jenis: const D3DXVECTOR3*

Penunjuk ke struktur D3DXVECTOR3 yang mewakili terjemahan. Jika argumen ini NULL, matriks Mt identitas diterapkan ke rumus dalam Keterangan.

Nilai kembali

Jenis: D3DXMATRIX*

Penunjuk ke struktur D3DXMATRIX yang merupakan matriks transformasi afin.

Keterangan

Fungsi ini menghitung matriks transformasi afin dengan rumus berikut, dengan perangkaian matriks dievaluasi dalam urutan kiri-ke-kanan:

Mout = Ms * (Mrc)⁻¹ * Mr * Mrc * Mt

Dimana:

Mout = matriks output (pOut)

Ms = matriks penskalan (Penskalan)

Mrc = pusat matriks rotasi (pRotationCenter)

Mr = matriks rotasi (pRotasi)

Mt = matriks terjemahan (pTranslation)

Nilai yang dikembalikan untuk fungsi ini adalah nilai yang sama yang dikembalikan dalam parameter pOut. Dengan cara ini, fungsi D3DXMatrixAffineTransformation dapat digunakan sebagai parameter untuk fungsi lain.

Untuk transformasi affine 2D, gunakan D3DXMatrixAffineTransformation2D.

Persyaratan

Persyaratan Nilai
Header
D3dx9math.h
Pustaka
D3dx9.lib

Lihat juga

Fungsi matematika

D3DXMatrixTransformation

Transformasi (Direct3D 9)