Vector2 Структура

Определение

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

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

Комментарии

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

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

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

Vector2(ReadOnlySpan<Single>)

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

Vector2(Single)

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

Vector2(Single, Single)

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

Поля

X

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

Y

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

Свойства

Item[Int32]
One

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

UnitX

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

UnitY

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

Zero

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

Методы

Abs(Vector2)

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

Add(Vector2, Vector2)

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

Clamp(Vector2, Vector2, Vector2)

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

CopyTo(Single[])

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

CopyTo(Single[], Int32)

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

CopyTo(Span<Single>)

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

Distance(Vector2, Vector2)

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

DistanceSquared(Vector2, Vector2)

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

Divide(Vector2, Single)

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

Divide(Vector2, Vector2)

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

Dot(Vector2, Vector2)

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

Equals(Object)

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

Equals(Vector2)

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

GetHashCode()

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

Length()

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

LengthSquared()

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

Lerp(Vector2, Vector2, Single)

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

Max(Vector2, Vector2)

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

Min(Vector2, Vector2)

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

Multiply(Single, Vector2)

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

Multiply(Vector2, Single)

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

Multiply(Vector2, Vector2)

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

Negate(Vector2)

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

Normalize(Vector2)

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

Reflect(Vector2, Vector2)

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

SquareRoot(Vector2)

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

Subtract(Vector2, Vector2)

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

ToString()

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

ToString(String)

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

ToString(String, IFormatProvider)

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

Transform(Vector2, Matrix3x2)

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

Transform(Vector2, Matrix4x4)

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

Transform(Vector2, Quaternion)

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

TransformNormal(Vector2, Matrix3x2)

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

TransformNormal(Vector2, Matrix4x4)

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

TryCopyTo(Span<Single>)

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

Операторы

Addition(Vector2, Vector2)

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

Division(Vector2, Single)

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

Division(Vector2, Vector2)

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

Equality(Vector2, Vector2)

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

Inequality(Vector2, Vector2)

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

Multiply(Single, Vector2)

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

Multiply(Vector2, Single)

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

Multiply(Vector2, Vector2)

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

Subtraction(Vector2, Vector2)

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

UnaryNegation(Vector2)

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

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

ToPoint(Vector2)
ToSize(Vector2)
AsVector128(Vector2)

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

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