XMStoreFloat4x4 函式 (directxmath.h)
將 XMMATRIX 儲存在 XMFLOAT4X4中。
語法
void XM_CALLCONV XMStoreFloat4x4(
[out] XMFLOAT4X4 *pDestination,
[in] FXMMATRIX M
) noexcept;
參數
[out] pDestination
要儲存數據的位址。
[in] M
包含要儲存之數據的矩陣。
傳回值
無。
備註
XMFLOAT4X4 是數據列主要矩陣形式。 若要寫出數據行主要數據,必須先透過 XMMatrixTranpose 轉置 XMMATRIX ,再呼叫 store 函式。
此函式會採用矩陣,並將元件寫出至指定位址的十六個單精度浮點值。 第一個數據列向量最重要的元件會寫入位址的前四個字節,後面接著第一個數據列的第二個最重要元件,依此類傳。 第二個數據列接著會以類似方式寫出到從位元組 16 開始的記憶體,後面接著第三個數據列到從位元組 32 開始的記憶體,最後第四個數據列寫入記憶體,從位元組 48 開始。
下列虛擬程式代碼示範函式的作業。
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->_14 = M[0].w; // 4 bytes to address (uint8_t*)pDestination + 12
pDestination->_21 = M[1].x; // 4 bytes to address (uint8_t*)pDestination + 16
pDestination->_22 = M[1].y; // 4 bytes to address (uint8_t*)pDestination + 20
pDestination->_23 = M[1].z; // 4 bytes to address (uint8_t*)pDestination + 24
pDestination->_24 = M[1].w; // 4 bytes to address (uint8_t*)pDestination + 28
pDestination->_31 = M[2].x; // 4 bytes to address (uint8_t*)pDestination + 32
pDestination->_32 = M[2].y; // 4 bytes to address (uint8_t*)pDestination + 36
pDestination->_33 = M[2].z; // 4 bytes to address (uint8_t*)pDestination + 40
pDestination->_34 = M[2].w; // 4 bytes to address (uint8_t*)pDestination + 44
pDestination->_41 = M[3].x; // 4 bytes to address (uint8_t*)pDestination + 48
pDestination->_42 = M[3].y; // 4 bytes to address (uint8_t*)pDestination + 52
pDestination->_43 = M[3].z; // 4 bytes to address (uint8_t*)pDestination + 56
pDestination->_44 = M[3].w; // 4 bytes to address (uint8_t*)pDestination + 60
平臺需求
Microsoft Visual Studio 2010 或 Microsoft Visual Studio 2012 與 Windows SDK for Windows 8。 支援 Win32 傳統型應用程式、Windows 市集應用程式和 Windows Phone 8 個應用程式。規格需求
需求 | 值 |
---|---|
目標平台 | Windows |
標頭 | directxmath.h |