Vector4 Структура

Определение

Представляет вектор с четырьмя значениями одинарной точности с плавающей запятой.

public value class Vector4 : IEquatable<System::Numerics::Vector4>, IFormattable
public struct Vector4 : IEquatable<System.Numerics.Vector4>, IFormattable
type Vector4 = struct
    interface IFormattable
Public Structure Vector4
Implements IEquatable(Of Vector4), IFormattable
Наследование
Vector4
Реализации

Комментарии

Структура Vector4 обеспечивает поддержку аппаратного ускорения.

В матричных преобразованиях экземпляры Vector2, Vector3 и Vector4 отображаются в виде строк: вектор v преобразуется матрицей M с помощью умножения vM.

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

Vector4(ReadOnlySpan<Single>)

Конструирует вектор из заданного ReadOnlySpan<T>. Диапазон должен содержать не менее 4 элементов.

Vector4(Single)

Создает новый объект Vector4 с четырьмя элементами, имеющими одинаковое значение.

Vector4(Single, Single, Single, Single)

Создает вектор, элементы которого имеют заданные значения.

Vector4(Vector2, Single, Single)

Создает новый объект Vector4 на основе заданного объекта Vector2 и координат Z и W.

Vector4(Vector3, Single)

Строит новый объект Vector4 на основе заданного объекта Vector3 и координаты W.

Поля

W

Координата W вектора.

X

Координата X вектора.

Y

Координата Y вектора.

Z

Координата Z вектора.

Свойства

Item[Int32]
One

Получает вектор, четыре элемента которого равны единице.

UnitW

Получает вектор (0,0,0,1).

UnitX

Получает вектор (1,0,0,0).

UnitY

Получает вектор (0,1,0,0).

UnitZ

Получает вектор (0,0,1,0).

Zero

Получает вектор, четыре элемента которого равны нулю.

Методы

Abs(Vector4)

Возвращает вектор, элементы которого являются абсолютными значениями каждого из элементов заданного вектора.

Add(Vector4, Vector4)

Складывает два вектора.

Clamp(Vector4, Vector4, Vector4)

Ограничивает минимальное и максимальное значение вектора.

CopyTo(Single[])

Копирует элементы вектора в заданный массив.

CopyTo(Single[], Int32)

Копирует элементы вектора в заданный массив, начиная с указанной позиции индекса.

CopyTo(Span<Single>)

Копирует вектор в заданный Span<T>. Длина целевого диапазона должна быть не менее 4.

Distance(Vector4, Vector4)

Вычисляет евклидово расстояние между двумя заданными точками.

DistanceSquared(Vector4, Vector4)

Возвращает квадрат евклидова расстояния между двумя заданными точками.

Divide(Vector4, Single)

Делит заданный вектор на указанное скалярное значение.

Divide(Vector4, Vector4)

Делит первый вектор на второй.

Dot(Vector4, Vector4)

Возвращает скалярное произведение двух векторов.

Equals(Object)

Возвращает значение, указывающее, равен ли данный экземпляр указанному объекту.

Equals(Vector4)

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

GetHashCode()

Возвращает хэш-код данного экземпляра.

Length()

Возвращает длину данного объекта вектора.

LengthSquared()

Возвращает длину вектора в квадрате.

Lerp(Vector4, Vector4, Single)

Выполняет линейную интерполяцию между двумя векторами на основе заданного взвешивания.

Max(Vector4, Vector4)

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

Min(Vector4, Vector4)

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

Multiply(Single, Vector4)

Умножает скалярное значение на заданный вектор.

Multiply(Vector4, Single)

Умножает вектор на заданный скаляр.

Multiply(Vector4, Vector4)

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

Negate(Vector4)

Преобразует заданный вектор в отрицательный.

Normalize(Vector4)

Возвращает вектор с тем же направлением, что и заданный вектор, но с длиной равной единице.

SquareRoot(Vector4)

Возвращает вектор, элементы которого являются квадратным корнем каждого из элементов заданного вектора.

Subtract(Vector4, Vector4)

Вычитает второй вектор из первого.

ToString()

Возвращает строковое представление текущего экземпляра, используя форматирование по умолчанию.

ToString(String)

Возвращает строковое представление текущего экземпляра, используя заданную строку форматирования для форматирования отдельных элементов.

ToString(String, IFormatProvider)

Возвращает строковое представление текущего экземпляра, используя заданную строку форматирования для форматирования отдельных элементов и заданный поставщик формата для указания форматирования, определяемого языком и региональными параметрами.

Transform(Vector2, Matrix4x4)

Преобразует двухмерный вектор посредством заданной матрицы 4x4.

Transform(Vector2, Quaternion)

Преобразует двухмерный вектор посредством заданного значения поворота кватерниона.

Transform(Vector3, Matrix4x4)

Преобразует трехмерный вектор посредством заданной матрицы 4x4.

Transform(Vector3, Quaternion)

Преобразует трехмерный вектор посредством заданного значения поворота кватерниона.

Transform(Vector4, Matrix4x4)

Преобразует четырехмерный вектор посредством заданной матрицы 4x4.

Transform(Vector4, Quaternion)

Преобразует четырехмерный вектор посредством заданного значения поворота кватерниона.

TryCopyTo(Span<Single>)

Пытается скопировать вектор в заданный Span<T>. Длина целевого диапазона должна быть не менее 4.

Операторы

Addition(Vector4, Vector4)

Складывает два вектора.

Division(Vector4, Single)

Делит заданный вектор на указанное скалярное значение.

Division(Vector4, Vector4)

Делит первый вектор на второй.

Equality(Vector4, Vector4)

Возвращает значение, указывающее, равна ли каждая пара элементов в двух заданных векторах.

Inequality(Vector4, Vector4)

Возвращает значение, указывающее на неравенство двух заданных векторов.

Multiply(Single, Vector4)

Умножает скалярное значение на заданный вектор.

Multiply(Vector4, Single)

Умножает заданный вектор на указанное скалярное значение.

Multiply(Vector4, Vector4)

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

Subtraction(Vector4, Vector4)

Вычитает второй вектор из первого.

UnaryNegation(Vector4)

Преобразует заданный вектор в отрицательный.

Методы расширения

AsVector128(Vector4)

Переинтерпретирует Vector4 как новый Vector128<T>.

Применяется к