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


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

Двухуровневый вектор для хранения неподписанных нормализованных значений в виде 8-разрядных (1-байтовых) целых чисел со знаком.

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

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

Синтаксис

struct XMUBYTEN2 {
  union {
    struct {
      uint8_t x;
      uint8_t y;
    };
    uint16_t v;
  };
  void        XMUBYTEN2();
  void        XMUBYTEN2(
    const XMUBYTEN2 & unnamedParam1
  );
  XMUBYTEN2 & operator=(
    const XMUBYTEN2 & unnamedParam1
  );
  void        XMUBYTEN2(
    XMUBYTEN2 && unnamedParam1
  );
  XMUBYTEN2 & operator=(
    XMUBYTEN2 && unnamedParam1
  );
  void        XMUBYTEN2(
    uint16_t Packed
  ) noexcept;
  void        XMUBYTEN2(
    uint8_t _x,
    uint8_t _y
  ) noexcept;
  void        XMUBYTEN2(
    const uint8_t *pArray
  ) noexcept;
  void        XMUBYTEN2(
    float _x,
    float _y
  ) noexcept;
  void        XMUBYTEN2(
    const float *pArray
  ) noexcept;
  XMUBYTEN2 & operator=(
    uint16_t Packed
  ) noexcept;
};

Члены

x

8-битовое целочисленное значение без знака в диапазоне [0, 255], описывающее координату X вектора.

y

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

v

void XMUBYTEN2()

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

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

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

void XMUBYTEN2( const XMUBYTEN2 & unnamedParam1)

Конструктор для XMUBYTEN2

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

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

XMUBYTEN2 & operator=( const XMUBYTEN2 & unnamedParam1)

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

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

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

void XMUBYTEN2( XMUBYTEN2 && unnamedParam1)

Конструктор для XMUBYTEN2

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

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

XMUBYTEN2 & operator=( XMUBYTEN2 && unnamedParam1)

void XMUBYTEN2( uint16_t Упаковано) noexcept

Конструктор для XMUBYTEN2

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

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

void XMUBYTEN2( uint8_t _x, uint8_t _y) noexcept

Инициализирует новый экземпляр из XMUBYTEN2 двух uint8_t аргументов.

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

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

void XMUBYTEN2( const uint8_t *pArray) noexcept

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

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

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

void XMUBYTEN2( float _x, float _y) noexcept

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

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

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

void XMUBYTEN2( const float *pArray) noexcept

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

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

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

XMUBYTEN2 & operator=( uint16_t Packed) noexcept

Комментарии

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

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

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

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

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

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

Требования

Требование Значение
Заголовок directxpackedvector.h

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

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

Расширения XMUBYTEN2