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


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 вектора.

Свойства

E

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

Epsilon

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

Item[Int32]

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

NaN

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

NegativeInfinity

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

NegativeZero

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

One

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

Pi

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

PositiveInfinity

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

Tau

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

UnitX

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

UnitY

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

Zero

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

Методы

Abs(Vector2)

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

Add(Vector2, Vector2)

Добавляет два вектора вместе.

Clamp(Vector2, Vector2, Vector2)

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

ClampNative(Vector2, Vector2, Vector2)

Ограничивает вектор между минимальным и максимальным значением, используя конкретное поведение платформы для NaN и NegativeZero..

CopySign(Vector2, Vector2)

Копирует знак вектора для каждого элемента в знак другого вектора.

CopyTo(Single[])

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

CopyTo(Single[], Int32)

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

CopyTo(Span<Single>)

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

Cos(Vector2)

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

Create(ReadOnlySpan<Single>)

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

Create(Single)

Создает новый объект Vector2, два элемента которого имеют одно и то же значение.

Create(Single, Single)

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

DegreesToRadians(Vector2)

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

Distance(Vector2, Vector2)

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

DistanceSquared(Vector2, Vector2)

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

Divide(Vector2, Single)

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

Divide(Vector2, Vector2)

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

Dot(Vector2, Vector2)

Возвращает точечный продукт двух векторов.

Equals(Object)

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

Equals(Vector2)

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

Exp(Vector2)

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

FusedMultiplyAdd(Vector2, Vector2, Vector2)

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

GetHashCode()

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

Hypot(Vector2, Vector2)

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

Length()

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

LengthSquared()

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

Lerp(Vector2, Vector2, Single)

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

Lerp(Vector2, Vector2, Vector2)

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

Log(Vector2)

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

Log2(Vector2)

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

Max(Vector2, Vector2)

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

MaxMagnitude(Vector2, Vector2)

Сравнивает два вектора с вычислениями, которые имеют большую величину на основе каждого элемента.

MaxMagnitudeNumber(Vector2, Vector2)

Сравнивает два вектора на основе каждого элемента с вычислением, которое имеет больше величины и возвращает другое значение, если входные данные NaN.

MaxNative(Vector2, Vector2)

Сравните два вектора, чтобы определить, что больше на основе каждого элемента, используя конкретное поведение платформы для NaN и NegativeZero.

MaxNumber(Vector2, Vector2)

Сравнивает два вектора на основе каждого элемента для вычисления, которое больше и возвращает другое значение, если элемент NaN.

Min(Vector2, Vector2)

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

MinMagnitude(Vector2, Vector2)

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

MinMagnitudeNumber(Vector2, Vector2)

Сравнивает два вектора на основе каждого элемента с вычислением, которое имеет меньшее значение и возвращает другое значение, если входные данные NaN.

MinNative(Vector2, Vector2)

Сравните два вектора, чтобы определить, что меньше на основе каждого элемента, используя конкретное поведение платформы для NaN и NegativeZero.

MinNumber(Vector2, Vector2)

Сравнивает два вектора на основе каждого элемента с вычислением, которое меньше и возвращает другое значение, если элемент NaN.

Multiply(Single, Vector2)

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

Multiply(Vector2, Single)

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

Multiply(Vector2, Vector2)

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

MultiplyAddEstimate(Vector2, Vector2, Vector2)

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

Negate(Vector2)

Отрицает указанный вектор.

Normalize(Vector2)

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

RadiansToDegrees(Vector2)

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

Reflect(Vector2, Vector2)

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

Round(Vector2)

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

Round(Vector2, MidpointRounding)

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

Sin(Vector2)

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

SinCos(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.

Truncate(Vector2)

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

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)

Отрицает указанный вектор.

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

AsVector4(Vector2)

Повторно интерпретирует Vector2 на новый Vector4 с новыми элементами, ноль.

AsVector4Unsafe(Vector2)

Переинтерпретирует Vector2 на новый Vector4 с новыми элементами, неопределенными.

ToPoint(Vector2)

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

ToSize(Vector2)

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

AsVector128(Vector2)

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

AsVector128Unsafe(Vector2)

Повторно интерпретирует Vector2 как новую Vector128<T>, оставляя новые элементы неопределенными.

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