Funzione XMVectorPermute (directxmath.h)

Permuta i componenti di due vettori per creare un nuovo vettore.

Sintassi

XMVECTOR XM_CALLCONV XMVectorPermute(
  [in] FXMVECTOR V1,
  [in] FXMVECTOR V2,
       uint32_t  PermuteX,
       uint32_t  PermuteY,
       uint32_t  PermuteZ,
       uint32_t  PermuteW
) noexcept;

Parametri

[in] V1

Primo vettore.

[in] V2

Secondo vettore.

PermuteX

Modulo di indice 0-7 che indica dove deve essere copiato il componente X del nuovo vettore.

PermuteY

Modulo di indice 0-7 che indica dove deve essere copiato il componente Y del nuovo vettore.

PermuteZ

Modulo di indice 0-7 che indica dove deve essere copiato il componente Z del nuovo vettore.

PermuteW

Modulo di indice 0-7 che indica dove deve essere copiato il componente W del nuovo vettore.

Valore restituito

Restituisce il vettore permutato risultante dalla combinazione dei vettori di origine.

Commenti

Se tutti i 4 indici fanno riferimento solo a un singolo vettore (ovvero tutti nell'intervallo 0-3 o tutti nell'intervallo 4-7), usare XMVectorSwizzle per ottenere prestazioni migliori.

Le costanti XM_PERMUTE_ vengono fornite per l'uso come valori di input per PermuteX, PermuteY,PermuteZ e PermuteW.

Per i parametri PermuteX/Y/Z/W costanti, è molto più efficiente usare la forma di modello XMVectorPermute:


template<uint32_t PermuteX, uint32_t PermuteY, uint32_t PermuteZ, uint32_t PermuteW>
    XMVECTOR XMVectorPermute(FXMVECTOR V1, FXMVECTOR V2)

Example: XMVectorPermute<XM_PERMUTE_0Z, XM_PERMUTE_1X, XM_PERMUTE_0W, XM_PERMUTE_1Y>( V1, V2 );
   
Nota Questa versione di XMVectorPermute è nuova per DirectXMath. La libreria XNAMath v2.x ha usato XMVectorPermuteControl, un controllo XMVECTOR anziché 4 indici per XMVectorPermutee ha usato valori diversi per le costanti XM_PERMUTE_x.
 

Requisiti della piattaforma

Microsoft Visual Studio 2010 o Microsoft Visual Studio 2012 con Windows SDK per Windows 8. Supportato per app desktop Win32, app di Windows Store e Windows Phone 8 app.

Requisiti

Requisito Valore
Piattaforma di destinazione Windows
Intestazione directxmath.h (include DirectXMath.h)

Vedi anche

Funzioni vettoriali a livello di componente

XMVectorSwizzle