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


структура XMSHORTN4 (directxpackedvector.h)

4D-вектор для хранения подписанных нормализованных значений в виде 16-разрядных целых чисел со знаком (тип int16_t).

Список дополнительных функций, таких как конструкторы и операторы, доступные при XMSHORTN4 программировании на C++, см. в разделе расширения XMSHORTN4.

Примечание Сведения об эквивалентных объектах D3DDECLTYPE, D3DFORMAT и DXGI_FORMAT см. в разделе Эквивалентность типов библиотеки DirectXMath.
 

Синтаксис

struct XMSHORTN4 {
  union {
    struct {
      int16_t x;
      int16_t y;
      int16_t z;
      int16_t w;
    };
    uint64_t v;
  };
  void        XMSHORTN4();
  void        XMSHORTN4(
    const XMSHORTN4 & unnamedParam1
  );
  XMSHORTN4 & operator=(
    const XMSHORTN4 & unnamedParam1
  );
  void        XMSHORTN4(
    XMSHORTN4 && unnamedParam1
  );
  XMSHORTN4 & operator=(
    XMSHORTN4 && unnamedParam1
  );
  void        XMSHORTN4(
    uint64_t Packed
  ) noexcept;
  void        XMSHORTN4(
    int16_t _x,
    int16_t _y,
    int16_t _z,
    int16_t _w
  ) noexcept;
  void        XMSHORTN4(
    const int16_t *pArray
  ) noexcept;
  void        XMSHORTN4(
    float _x,
    float _y,
    float _z,
    float _w
  ) noexcept;
  void        XMSHORTN4(
    const float *pArray
  ) noexcept;
  XMSHORTN4 & operator=(
    uint64_t Packed
  ) noexcept;
};

Члены

x

16-битовое целое число со знаком в диапазоне [-32767, 32767], описывающее координату x вектора.

y

16-битовое целое число со знаком в диапазоне [-32767, 32767], описывающее координату Y вектора.

z

16-битовое целое число со знаком в диапазоне [-32767, 32767], описывающее z-координату вектора.

w

16-битовое целое число со знаком в диапазоне [-32767, 32767], описывающее w-координату вектора.

v

void XMSHORTN4()

Конструктор по умолчанию для XMSHORTN4.

Конструктор по умолчанию для XMSHORTN4.

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

void XMSHORTN4( const XMSHORTN4 & unnamedParam1)

Конструктор для XMSHORTN4.

Конструктор для XMSHORTN4.

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

XMSHORTN4 & operator=( const XMSHORTN4 & unnamedParam1)

Назначает данные компонента вектора из одного экземпляра XMSHORTN4 в текущий XMSHORTN4экземпляр .

Этот оператор назначает данные компонента вектора из одного экземпляра XMSHORTN4 текущему экземпляру XMSHORTN4.

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

void XMSHORTN4( XMSHORTN4 && unnamedParam1)

Конструктор для XMSHORTN4.

Конструктор для XMSHORTN4.

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

XMSHORTN4 & operator=( XMSHORTN4 && unnamedParam1)

void XMSHORTN4( uint64_t Упакованы) noexcept

Конструктор для XMSHORTN4.

Конструктор для XMSHORTN4.

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

void XMSHORTN4( int16_t _x, int16_t _y, int16_t _z, int16_t _w) noexcept

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

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

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

void XMSHORTN4( const int16_t *pArray) noexcept

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

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

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

void XMSHORTN4( float _x, float _y, float _z, float _w) noexcept

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

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

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

void XMSHORTN4( const float *pArray) noexcept

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

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

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

XMSHORTN4 & operator=( uint64_t Packed) noexcept

Комментарии

Для конструкторов XMSHORTN4 , использующих аргументы с плавающей запятой, требуются нормализованные входные данные, которые должны находиться в диапазоне [-1.0.-1.0]. Во время создания экземпляра эти данные умножаются на 32767,0f, результаты округляются, а затем присваиваются соответствующим членам XMSHORTN4.

XMSHORTN4 можно использовать для загрузки экземпляров XMVECTOR из нормализованных значений с помощью XMLoadShortN4, который делит каждый компонент 32767.0f, округляет результат, а затем назначает компоненты экземпляру XMVECTOR .

XMVECTOR Экземпляры, содержащие нормализованные значения, можно хранить в XMSHORTN4 с помощью XMStoreShortN4, который умножает каждый компонент на 32767,0f, округляя результат, прежде чем присваивать значения соответствующим XMSHORTN4 членам.

Пространства имен: Использование DirectX::P ackedVector

Требования к платформе

Microsoft Visual Studio 2010 или Microsoft Visual Studio 2012 с windows SDK для Windows 8. Поддерживается для классических приложений Win32, приложений Магазина Windows и приложений Windows Phone 8.

Требования

   
Верхняя часть directxpackedvector.h

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

Структуры библиотек DirectXMath

Расширения XMSHORTN4