Структура XMCOLOR (directxpackedvector.h)
32-разрядный вектор альфа-красного зеленого синего цвета (ARGB), где каждый цветовой канал указан как 8-разрядное целое число без знака.
Список дополнительных функций, таких как конструкторы и операторы, доступные при XMCOLOR
программировании на C++, см. в разделе Расширения XMCOLOR.
Синтаксис
struct XMCOLOR {
union {
struct {
uint8_t b;
uint8_t g;
uint8_t r;
uint8_t a;
};
uint32_t c;
};
void XMCOLOR();
void XMCOLOR(
const XMCOLOR & unnamedParam1
);
XMCOLOR & operator=(
const XMCOLOR & unnamedParam1
);
void XMCOLOR(
XMCOLOR && unnamedParam1
);
XMCOLOR & operator=(
XMCOLOR && unnamedParam1
);
void XMCOLOR(
uint32_t Color
) noexcept;
void XMCOLOR(
float _r,
float _g,
float _b,
float _a
) noexcept;
void XMCOLOR(
const float *pArray
) noexcept;
void operator uint32_t() noexcept;
XMCOLOR & operator=(
const uint32_t Color
) noexcept;
};
Члены
b
Целое число без знака от 0 до 255, представляющее синий компонент.
g
Целое число без знака от 0 до 255, представляющее зеленый компонент.
r
Целое число без знака от 0 до 255, представляющее красный компонент.
a
Целое число без знака от 0 до 255, представляющее альфа-компонент.
c
32-разрядное целое число без знака, представляющее цвет. Цвета хранятся в A8R8G8B8 формате.
Альфа-компонент — наиболее значимые биты, а синий компонент хранится в наименее значимых битах.
Конструктор по умолчанию для XMCOLOR
Конструктор по умолчанию для XMCOLOR
void XMCOLOR( const XMCOLOR & unnamedParam1)
Конструктор для XMCOLOR
Конструктор для XMCOLOR
XMCOLOR & operator=( const XMCOLOR & unnamedParam1)
void XMCOLOR( XMCOLOR && unnamedParam1)
Конструктор для XMCOLOR
Конструктор для XMCOLOR
XMCOLOR & operator=( XMCOLOR && unnamedParam1)
Этот оператор назначает данные компонента вектора из одного экземпляра XMCOLOR текущему экземпляру XMCOLOR.
void XMCOLOR( uint32_t Color) noexcept
Инициализирует новый экземпляр XMCOLOR
из переменной uint32_t
, содержащей данные компонента в упакованном формате.
Этот конструктор инициализирует новый экземпляр XMCOLOR из переменной, uint32_t
содержащей данные компонента в упакованном формате.
void XMCOLOR( float _r, float _g, float _b, float _a) noexcept
Инициализирует новый экземпляр из XMCOLOR
четырех float
аргументов.
Этот конструктор инициализирует новый экземпляр XMCOLOR из четырех float
аргументов.
void XMCOLOR( const float *pArray) noexcept
Инициализирует новый экземпляр XMCOLOR из аргумента массива с четырьмя элементами float
.
Этот конструктор инициализирует новый экземпляр XMCOLOR из из аргумента массива четырех элементов float
.
Оператор void uint32_t() noexcept
Возвращает экземпляр класса , uint32_t
содержащий компоненты экземпляра XMCOLOR
в упакованном формате.
XMCOLOR & operator=( const uint32_t Color) noexcept
Назначает данные компонента вектора, упакованные в экземпляр uint32_t
, текущему экземпляру XMCOLOR
.
Этот оператор назначает данные компонента вектора, упакованные в экземпляр uint32_t
, текущему экземпляру XMCOLOR.
Комментарии
Для конструкторов XMCOLOR
, использующих аргументы с плавающей запятой, требуются нормализованные входные данные, которые закреплены в диапазоне от [0 до 1,0]. Во время создания экземпляра данные с плавающей запятой, указывающие цветовые каналы, умножаются на 255,0f, округляются и затем назначаются соответствующим членам XMCOLOR
.
XMCOLOR
можно использовать для загрузки экземпляров XMVECTOR из нормализованных значений с помощью XMLoadColor, который делит данные цветовых каналов на 255,0f, округляет результат, а затем назначает компоненты экземпляру XMVECTOR
.
XMVECTOR
Экземпляры, содержащие нормализованные значения, можно хранить в XMCOLOR
с помощью XMStoreColor, который умножает данные цветовых каналов на 255,0f, округляя результат перед назначением значений соответствующим XMCOLOR
членам.
Пространства имен: Использование DirectX::P ackedVector
Требования к платформе
Microsoft Visual Studio 2010 или Microsoft Visual Studio 2012 с windows SDK для Windows 8. Поддерживается для классических приложений Win32, приложений Магазина Windows и приложений Windows Phone 8.Требования
Верхняя часть | directxpackedvector.h |