Bagikan melalui


Fungsi D3DXMatrixTransformation2D (D3DX10Math.h)

Catatan

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

Membangun matriks transformasi 2D yang mewakili transformasi dalam bidang xy. Argumen NULL diperlakukan sebagai transformasi identitas.

Sintaks

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

Parameter

pOut [masuk, keluar]

Jenis: D3DXMATRIX*

Arahkan ke struktur D3DXMATRIX yang berisi hasil transformasi.

pScalingCenter [in]

Jenis: const D3DXVECTOR2*

Arahkan ke D3DXVECTOR2, titik yang mengidentifikasi pusat penskalaan. Jika argumen ini NULL, identitas Msc matrix diterapkan ke rumus dalam Keterangan.

ScalingRotation [in]

Jenis: FLOAT

Arahkan ke faktor rotasi penskalaan.

pScaling [in]

Jenis: const D3DXVECTOR2*

Arahkan ke struktur D3DXVECTOR2, titik yang mengidentifikasi skala. Jika argumen ini NULL, matriks Ms identitas diterapkan ke rumus dalam Keterangan.

pRotationCenter [in]

Jenis: const D3DXVECTOR2*

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

Rotasi [in]

Jenis: FLOAT

Sudut rotasi dalam radian.

pTranslation [in]

Jenis: const D3DXVECTOR2*

Arahkan ke struktur D3DXVECTOR2, mengidentifikasi terjemahan. Jika argumen ini NULL, matriks Mt identitas diterapkan ke rumus dalam Keterangan.

Mengembalikan nilai

Jenis: D3DXMATRIX*

Penunjuk ke struktur D3DXMATRIX yang berisi matriks transformasi.

Keterangan

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

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

Dimana:

Mout = matriks output (pOut)

Msc = matriks pusat penskalan (pScalingCenter)

Msr = matriks rotasi penskalaan (pScalingRotation)

Ms = matriks penskalan (pScaling)

Mrc = pusat matriks rotasi (pRotationCenter)

Mr = matriks rotasi (Rotasi)

Mt = matriks terjemahan (pTranslation)

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

Untuk transformasi 3D, gunakan D3DXMatrixTransformation.

Persyaratan

Persyaratan Nilai
Header
D3DX10Math.h
Pustaka
D3DX10.lib

Lihat juga

Fungsi matematika