Compartir a través de


Función XMStoreFloat3x3 (directxmath.h)

Almacena un XMMATRIX en una XMFLOAT3X3.

Sintaxis

void XM_CALLCONV XMStoreFloat3x3(
  [out] XMFLOAT3X3 *pDestination,
  [in]  FXMMATRIX  M
) noexcept;

Parámetros

[out] pDestination

Dirección en la que se van a almacenar los datos.

[in] M

Matriz que contiene los datos que se van a almacenar.

Valor devuelto

Ninguno.

Comentarios

XMFLOAT3X3 es un formulario de matriz principal de fila. Para escribir datos principales de columna, es necesario transponer XMMATRIX a través de XMMatrixTranpose antes de llamar a la función store.

Esta función toma una matriz y escribe los componentes en nueve valores de punto flotante de precisión sencilla en la dirección especificada. El componente más significativo del primer vector de fila se escribe en los cuatro primeros bytes de la dirección, seguido del segundo componente más significativo de la primera fila, seguido del tercer componente más significativo de la primera fila. A continuación, los tres componentes más significativos de la segunda fila se escriben de forma similar a la memoria a partir del byte 12, seguido de la tercera fila a la memoria a partir del byte 24.

El pseudocódigo siguiente muestra la operación de la función.

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

Requisitos de la plataforma

Microsoft Visual Studio 2010 o Microsoft Visual Studio 2012 con Windows SDK para Windows 8. Compatible con aplicaciones de escritorio Win32, aplicaciones de la Tienda Windows y Windows Phone 8 aplicaciones.

Requisitos

Requisito Value
Plataforma de destino Windows
Encabezado directxmath.h

Consulte también

Funciones de almacén de vectores de biblioteca de DirectXMath