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 |