Поделиться через


Функция XMUDEC4::XMUDEC4(constfloat*) (directxpackedvector.h)

Инициализирует новый экземпляр XMUDEC4 из аргумента массива четырех элементов float .

Этот конструктор инициализирует новый экземпляр XMUDEC4 из аргумента массива из четырех элементов float .

Примечание Этот конструктор доступен только в C++.

Синтаксис

void XMUDEC4(
  const float *pArray
) noexcept;

Параметры

pArray

Массив с плавающей запятой из четырех элементов, содержащий значения, используемые для инициализации четырех компонентов нового экземпляра XMUDEC4.

Возвращаемое значение

None

Remarks

Так как XMUDEC4 представляет вектор из четырех компонентов целого числа, дробная часть элемента pArray будет усечена.

Элементы массива сопоставляются с компонентами вектора нового экземпляра XMUDEC4 следующим образом:

Член XMUDEC4 Элемент Array Диапазон
x pArray[0] -0.0, 1023.0
y pArray[1] -0.0, 1023.0
z pArray[2] -0.0, 1023.0
w pArray[3] 0, 3

Элементы pArray будут зажаты в допустимом диапазоне до назначения соответствующему члену XMUDEC4.

Следующий псевдокод демонстрирует работу этого конструктора, который использует объединение четырех компонентов вектора XMUDEC4 с экземпляром uint32_t в определении структуры:

XMUDEC4 instance;
_x1=min( max( pArray[0], 0.0 ), 1023.0 );
_y1=min( max( pArray[1], 0.0 ), 1023.0 );
_z1=min( max( pArray[2], 0.0 ), 1023.0 );
_w1=min( max( pArray[3], 0.0 ), 3.0 );

instance.v =  ( (uint32_t)_w1 << 30) |
              (((uint32_t)_z1 & 0x3FF) << 20) |
              (((uint32_t)_y1 & 0x3FF) << 10) |
              (((uint32_t)_x1 & 0x3FF));

Требования

Требование Значение
Целевая платформа Windows
Header directxpackedvector.h

См. также раздел

XMUDEC4

Конструкторы XMUDEC4