Структура float3

Вектор с тремя компонентами.

Этот тип доступен только в C++. Эквивалент .NET — System.Numerics.Vector3.

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

Имя Описание
float3() Создает неинициализированный float3.
float3(float x, float y, float z) Создает объект float3 с указанными значениями.
float3(float2 value, float z) Создает объект float3 со значениями x и y, скопированными из float2, а также указанным значением z.
explicit float3(float value) Создает объект float3 со всеми компонентами, для которым задано указанное значение.
float3(Microsoft::Graphics::Canvas::Numerics::Vector3 const& value) Преобразует объект Microsoft.Graphics.Canvas.Numerics.Vector3 в тип float3.

Функции

Имя Описание
float length(float3 const& value) Вычисляет длину (евклидово расстояние) вектора.
float length_squared(float3 const& value) Вычисляет длину (евклидово расстояние) вектора в квадрате.
float distance(float3 const& value1, float3 const& value2) Вычисляет евклидово расстояние между двумя векторами.
float distance_squared(float3 const& value1, float3 const& value2) Вычисляет евклидово расстояние между двумя векторами в квадрате.
float dot(float3 const& vector1, float3 const& vector2) Вычисляет точечное произведение двух векторов.
float3 normalize(float3 const& value) Создает модульный вектор из указанного вектора.
float3 cross(float3 const& vector1, float3 const& vector2) Вычисляет векторное произведение двух векторов.
float3 reflect(float3 const& vector, float3 const& normal) Определяет вектор отражения заданного вектора и нормали.
float3 min(float3 const& value1, float3 const& value2) Возвращает вектор, содержащий наименьшее значение из каждой соответствующей пары компонентов.
float3 max(float3 const& value1, float3 const& value2) Возвращает вектор, содержащий наибольшее значение из каждой соответствующей пары компонентов.
float3 clamp(float3 const& value1, float3 const& min, float3 const& max) Ограничивает значение в пределах указанного диапазона.
float3 lerp(float3 const& value1, float3 const& value2, float amount) Выполняет линейную интерполяцию между двумя векторами.
float3 transform(float3 const& position, float4x4 const& matrix) Преобразует вектор (x, y, z, 1) по указанной матрице.
float3 transform_normal(float3 const& normal, float4x4 const& matrix) Преобразует нормальный вектор (x, y, z, 0) по указанной матрице.
float3 transform(float3 const& value, quaternion const& rotation) Преобразует float3 по заданному кватерниону.

Методы

Имя Описание
static float3 zero() Возвращает объект float3 со всеми его компонентами, равными нулю.
static float3 one() Возвращает объект float3 со всеми его компонентами, равными 1.
static float3 unit_x() Возвращает значение float3 (1, 0, 0).
static float3 unit_y() Возвращает значение float3 (0, 1, 0).
static float3 unit_z() Возвращает значение float3 (0, 0, 1).

Операторы

Имя Описание
float3 operator+ (float3 const& value1, float3 const& value2) Добавляет два вектора.
float3 operator- (float3 const& value1, float3 const& value2) Вычитает вектор из вектора.
float3 operator* (float3 const& value1, float3 const& value2) Умножает компоненты двух векторов друг на друга.
float3 operator* (float3 const& value1, float value2) Умножает вектор на скалярный.
float3 operator* (float value1, float3 const& value2) Умножает вектор на скалярный.
float3 operator/ (float3 const& value1, float3 const& value2) Делит компоненты вектора на компоненты другого вектора.
float3 operator/ (float3 const& value1, float value2) Делит вектор на скалярное значение.
float3 operator- (float3 const& value) Возвращает вектор, указывающий в противоположном направлении.
float3& operator+= (float3& value1, float3 const& value2) На месте добавляет два вектора.
float3& operator-= (float3& value1, float3 const& value2) На месте вычитает вектор из вектора.
float3& operator*= (float3& value1, float3 const& value2) На месте умножает компоненты двух векторов друг на друга.
float3& operator*= (float3& value1, float value2) На месте умножает вектор на скаляр.
float3& operator/= (float3& value1, float3 const& value2) На месте делит компоненты вектора на компоненты другого вектора.
float3& operator/= (float3& value1, float value2) На месте делит вектор на скалярное значение.
bool operator== (float3 const& value1, float3 const& value2) Определяет, равны ли два экземпляра float3.
bool operator!= (float3 const& value1, float3 const& value2) Определяет, равны ли два экземпляра float3.
operator Microsoft::?Graphics::?Canvas::?Numerics::?Vector3() const Преобразует float3 в Microsoft.Graphics.Canvas.Numerics.Vector3.

Поля

Имя Описание
float x Компонент X вектора.
float y Компонент Y вектора.
float z Компонент Z вектора.

Требования

Требование Значение
Пространство имен Windows::Foundation::Numerics
Заголовок
Windowsnumerics.h

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

API-интерфейсы windowsnumerics.h