次の方法で共有


XMSHORTN4::XMSHORTN4(constfloat*) 関数 (directxpackedvector.h)

4 つの要素float配列引数から XMSHORTN4 の新しいインスタンスを初期化します。

このコンストラクターは、4 つの要素float配列引数から から XMSHORTN4 の新しいインスタンスを初期化します。

メモ このコンストラクターは、C++ でのみ使用できます。

構文

void XMSHORTN4(
  const float *pArray
) noexcept;

パラメーター

pArray

XMSHORTN4 の新しいインスタンスの 4 つのコンポーネントを初期化するために使用される値を含む 4 つの要素浮動小数点配列。

戻り値

なし

解説

配列要素は、次のように XMSHORTN4 の新しいインスタンスのベクター コンポーネントにマップされます。

ベクター コンポーネント Array 要素 Range 説明
x pArray[0] -1.0, 1.0 インスタンス化中、pArray[0] は -1 から 1 の間でクランプされ、32767.0f を掛けて x に割り当てられます。
y pArray[1] -1.0, 1.0 インスタンス化中、pArray[1] は -1 から 1 の間でクランプされ、32767.0f で乗算され、y に割り当てられます。
z pArray[2] -1.0, 1.0 インスタンス化中、pArray[2] は -1 から 1 の間でクランプされ、32767.0f で乗算され、z に割り当てられます。
pArray[3] -1.0, 1.0 インスタンス化中、pArray[3] は -1 から 1 の間でクランプされ、32767.0f で乗算され、w に割り当てられます。

次の擬似コードは、このコンストラクターの操作を示しています。

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;

要件

   
対象プラットフォーム Windows
ヘッダー directxpackedvector.h

関連項目

XMSHORTN4

XMSHORTN4 コンストラクター