共用方式為


XMStoreFloat4x3 函式 (directxmath.h)

XMMATRIX 儲存在 XMFLOAT4X3 中

語法

void XM_CALLCONV XMStoreFloat4x3(
  [out] XMFLOAT4X3 *pDestination,
  [in]  FXMMATRIX  M
) noexcept;

參數

[out] pDestination

要儲存資料的位址。

[in] M

包含要儲存之資料的矩陣。

傳回值

無。

備註

XMFLOAT4X3 是一種資料列主要矩陣形式。 此函式無法用來寫出資料行主要資料,因為它假設最後一個資料行是 0 0 0 1。

此函式會採用矩陣,並將元件寫出至指定位址的十二個單精確度浮點值。 第一個資料列向量最重要的元件會寫入位址的前四個位元組,後面接著第一個資料列的第二個最顯著元件,後面接著第一個資料列的第三個最顯著元件。 接著,第二個數據列最重要的三個元件會以類似方式寫出到從位元組 12 開始的記憶體,後面接著第三個數據列到從位元組 24 開始的記憶體,最後第四個數據列寫到記憶體,從位元組 36 開始。

下列虛擬程式碼示範函式的作業。

pDestination->_11 = M[0].x; // 4 bytes to address (uint8_t*)pDestination
pDestination->_12 = M[0].y; // 4 bytes to address (uint8_t*)pDestination + 4
pDestination->_13 = M[0].z; // 4 bytes to address (uint8_t*)pDestination + 8

pDestination->_21 = M[1].x; // 4 bytes to address (uint8_t*)pDestination + 12
pDestination->_22 = M[1].y; // 4 bytes to address (uint8_t*)pDestination + 16
pDestination->_23 = M[1].z; // 4 bytes to address (uint8_t*)pDestination + 20

pDestination->_31 = M[2].x; // 4 bytes to address (uint8_t*)pDestination + 24
pDestination->_32 = M[2].y; // 4 bytes to address (uint8_t*)pDestination + 28
pDestination->_33 = M[2].z; // 4 bytes to address (uint8_t*)pDestination + 32

pDestination->_41 = M[3].x; // 4 bytes to address (uint8_t*)pDestination + 36
pDestination->_42 = M[3].y; // 4 bytes to address (uint8_t*)pDestination + 40
pDestination->_43 = M[3].z; // 4 bytes to address (uint8_t*)pDestination + 44

平臺需求

Microsoft Visual Studio 2010 或 Microsoft Visual Studio 2012 搭配 Windows SDK for Windows 8。 支援 Win32 傳統型應用程式、Windows 市集應用程式和 Windows Phone 8 個應用程式。

需求

   
目標平台 Windows
標頭 directxmath.h

另請參閱

DirectXMath 程式庫向量存放區函式