Freigeben über


XMSHORTN4::XMSHORTN4(constfloat*)-Funktion (directxpackedvector.h)

Initialisiert eine neue instance von XMSHORTN4 aus einem Argument mit vier Elementarraysfloat.

Dieser Konstruktor initialisiert eine neue instance von XMSHORTN4 aus einem aus einem Argument mit vier Elementarraysfloat.

Hinweis Dieser Konstruktor ist nur unter C++ verfügbar.

Syntax

void XMSHORTN4(
  const float *pArray
) noexcept;

Parameter

pArray

Vier Element-Gleitkommaarray mit den Werten, die zum Initialisieren der vier Komponenten einer neuen instance von XMSHORTN4 verwendet werden.

Rückgabewert

Keine

Bemerkungen

Arrayelemente werden den Vektorkomponenten einer neuen instance von XMSHORTN4 wie folgt zugeordnet:

Vektorkomponente Array-Element Bereich BESCHREIBUNG
x pArray[0] -1.0, 1.0 Während der Instanziierung wird pArray[0] zwischen -1 und 1 geklemmt, mit 32767.0f multipliziert und x zugewiesen.
j pArray[1] -1.0, 1.0 Während der Instanziierung wird pArray[1] zwischen -1 und 1 eingeklemmt, mit 32767.0f multipliziert und dann y zugewiesen.
z pArray[2] -1.0, 1.0 Während der Instanziierung wird pArray[2] zwischen -1 und 1 eingeklemmt, mit 32767.0f multipliziert und dann z zugewiesen.
w pArray[3] -1.0, 1.0 Während der Instanziierung wird pArray[3] zwischen -1 und 1 geklemmt, mit 32767.0f multipliziert und dann w zugewiesen.

Der folgende Pseudocode veranschaulicht den Betrieb dieses Konstruktors:

XMSHORTN4 instance;
_x1=min( max( pArray[0], -1.0 ), 1.0 );
_y1=min( max( pArray[1], -1.0 ), 1.0 );
_z1=min( max( pArray[2], -1.0 ), 1.0 );
_w1=min( max( pArray[3], -1.0 ), 1.0 );
_x1 = round( _x1 * 32767.0f);
_y1 = round( _y1 * 32767.0f);
_z1 = round( _z1 * 32767.0f);
_w1 = round( _w1 * 32767.0f);
instance._x = _x1;
instance._y = _y1;
instance._z = _z1;
instance._w = _w1;

Anforderungen

   
Zielplattform Windows
Kopfzeile directxpackedvector.h

Weitere Informationen

XMSHORTN4

XMSHORTN4-Konstruktoren