Vector2

StockSharp.Xaml.Charting.Rendering.HighQualityRasterizer.Agg.VectorMath

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

Реализует: IEquatable<Vector2>

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

Vector2
public Vector2(double x, double y)
vector2 = Vector2(x, y)

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

x
Координация X.
y
Координация Y.

Свойства

Length
public double Length { get; }
value = vector2.Length

Получает длину (величину) вектора.

LengthSquared
public double LengthSquared { get; }
value = vector2.LengthSquared

Получает квадрат длины вектора (величины).

PerpendicularLeft
public Vector2 PerpendicularLeft { get; }
value = vector2.PerpendicularLeft

Получает перпендикулярный вектор на левой стороне этого вектора.

PerpendicularRight
public Vector2 PerpendicularRight { get; }
value = vector2.PerpendicularRight

Получает перпендикулярный вектор на правой стороне этого вектора.

Методы

Add
public static void Add(Vector2 a, Vector2 b, Vector2 result)
Vector2.Add(a, b, result)

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

a
Левый операнд.
b
Правый операнд.
result
Результат операции.
Add
public static Vector2 Add(Vector2 a, Vector2 b)
result = Vector2.Add(a, b)

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

a
Левый операнд.
b
Правый операнд.

Возвращает: Результат операции.

BaryCentric
public static void BaryCentric(Vector2 a, Vector2 b, Vector2 c, double u, double v, Vector2 result)
Vector2.BaryCentric(a, b, c, u, v, result)

Интерполируйте 3 вектора, используя барицентрические координаты

a
Первый входной вектор.
b
Второй входной вектор.
c
Третий входной вектор.
u
Первая Барицентрическая Координата.
v
Вторая Барицентрическая Координата.
result
Выход вектора. a когда u=v=0, b когда u=1,v=0, c когда u=0,v=1 и линейная комбинация a,b,c в противном случае
BaryCentric
public static Vector2 BaryCentric(Vector2 a, Vector2 b, Vector2 c, double u, double v)
result = Vector2.BaryCentric(a, b, c, u, v)

Интерполируйте 3 вектора, используя барицентрические координаты

a
Первый входной вектор
b
Второй входной вектор
c
Третий входной вектор
u
Первая барицентрическая координата
v
Вторая барицентрическая координата

Возвращает: a когда u=v=0, b когда u=1,v=0, c когда u=0,v=1 и линейная комбинация a,b,c иначе

Clamp
public static void Clamp(Vector2 vec, Vector2 min, Vector2 max, Vector2 result)
Vector2.Clamp(vec, min, max, result)

Закрепить вектор на заданные минимальные и максимальные векторы

vec
Входящий вектор
min
Минимальный вектор
max
Максимальный вектор
result
Зажатый вектор
Clamp
public static Vector2 Clamp(Vector2 vec, Vector2 min, Vector2 max)
result = Vector2.Clamp(vec, min, max)

Закрепить вектор на заданные минимальные и максимальные векторы

vec
Входящий вектор
min
Минимальный вектор
max
Максимальный вектор

Возвращает: Зажатый вектор

ComponentMax
public static void ComponentMax(Vector2 a, Vector2 b, Vector2 result)
Vector2.ComponentMax(a, b, result)

Вычислите компонентный максимум из двух векторов

a
Первый операнд
b
Второй операнд
result
Компонентно-мудрый максимум
ComponentMax
public static Vector2 ComponentMax(Vector2 a, Vector2 b)
result = Vector2.ComponentMax(a, b)

Вычислите компонентный максимум из двух векторов

a
Первый операнд
b
Второй операнд

Возвращает: Компонентно-мудрый максимум

ComponentMin
public static void ComponentMin(Vector2 a, Vector2 b, Vector2 result)
Vector2.ComponentMin(a, b, result)

Вычислить компонентный минимум из двух векторов

a
Первый операнд
b
Второй операнд
result
Компонентный минимум
ComponentMin
public static Vector2 ComponentMin(Vector2 a, Vector2 b)
result = Vector2.ComponentMin(a, b)

Вычислить компонентный минимум из двух векторов

a
Первый операнд
b
Второй операнд

Возвращает: Компонентный минимум

Cross
public static double Cross(Vector2 left, Vector2 right)
result = Vector2.Cross(left, right)

Вычислить перекрестное произведение двух векторов

left
Первый операнд
right
Второй операнд

Возвращает: Крестовое произведение двух входов

Divide
public static Vector2 Divide(Vector2 vector, Vector2 scale)
result = Vector2.Divide(vector, scale)

Разделяет вектор на компоненты вектора (шкалы).

vector
Левый операнд.
scale
Правый операнд.

Возвращает: Результат операции.

Divide
public static void Divide(Vector2 vector, Vector2 scale, Vector2 result)
Vector2.Divide(vector, scale, result)

Разделите вектор на компоненты вектора (шкалы).

vector
Левый операнд.
scale
Правый операнд.
result
Результат операции.
Divide
public static Vector2 Divide(Vector2 vector, double scale)
result = Vector2.Divide(vector, scale)

Разделяет вектор на скаляр.

vector
Левый операнд.
scale
Правый операнд.

Возвращает: Результат операции.

Divide
public static void Divide(Vector2 vector, double scale, Vector2 result)
Vector2.Divide(vector, scale, result)

Разделяет вектор на скаляр.

vector
Левый операнд.
scale
Правый операнд.
result
Результат операции.
Dot
public static double Dot(Vector2 left, Vector2 right)
result = Vector2.Dot(left, right)

Вычислите точечный (скалярный) продукт двух векторов

left
Первый операнд
right
Второй операнд

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

Dot
public static void Dot(Vector2 left, Vector2 right, double result)
Vector2.Dot(left, right, result)

Вычислите точечный (скалярный) продукт двух векторов

left
Первый операнд
right
Второй операнд
result
Точечный продукт двух входов
Equals
public override bool Equals(object obj)
result = vector2.Equals(obj)

Указывает, равны ли данный экземпляр и заданный объект.

obj
Объект для сравнения.

Возвращает: Истинно, если примеры равны; ложно иное.

Equals
public bool Equals(Vector2 other)
result = vector2.Equals(other)

Указывает, равен ли текущий вектор другому вектору.

other
Вектор для сравнения с этим вектором.

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

Equals
public bool Equals(Vector2 other, double errorRange)
result = vector2.Equals(other, errorRange)

Указывает, равен ли текущий вектор другому вектору.

other
Вектор для сравнения с этим вектором.
errorRange

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

GetHashCode
public override int GetHashCode()
result = vector2.GetHashCode()

Возвращает хеш-код для этого случая.

Возвращает: A System.Int32, содержащий уникальный хеш-код для этого случая.

GetNormal
public Vector2 GetNormal()
result = vector2.GetNormal()

Возвращает нормализованный вектор этого.

Lerp
public static Vector2 Lerp(Vector2 a, Vector2 b, double blend)
result = Vector2.Lerp(a, b, blend)

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

a
Первый входной вектор
b
Второй входной вектор
blend
Смешанный фактор. a когда смесь = 0, b когда смесь = 1.

Возвращает: a когда смесь = 0, b когда смесь = 1 и линейная комбинация иначе

Lerp
public static void Lerp(Vector2 a, Vector2 b, double blend, Vector2 result)
Vector2.Lerp(a, b, blend, result)

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

a
Первый входной вектор
b
Второй входной вектор
blend
Смешанный фактор. a когда смесь = 0, b когда смесь = 1.
result
a когда смесь = 0, b когда смесь = 1 и линейная комбинация иначе
Max
public static Vector2 Max(Vector2 a, Vector2 b)
result = Vector2.Max(a, b)

Вычислите компонентный максимум из двух векторов

a
Первый операнд
b
Второй операнд

Возвращает: Компонентно-мудрый максимум

Max
public static void Max(Vector2 a, Vector2 b, Vector2 result)
Vector2.Max(a, b, result)

Вычислите компонентный максимум из двух векторов

a
Первый операнд
b
Второй операнд
result
Компонентно-мудрый максимум
Min
public static Vector2 Min(Vector2 a, Vector2 b)
result = Vector2.Min(a, b)

Вычислить компонентный минимум из двух векторов

a
Первый операнд
b
Второй операнд

Возвращает: Компонентный минимум

Min
public static void Min(Vector2 a, Vector2 b, Vector2 result)
Vector2.Min(a, b, result)

Вычислить компонентный минимум из двух векторов

a
Первый операнд
b
Второй операнд
result
Компонентный минимум
Multiply
public static void Multiply(Vector2 vector, double scale, Vector2 result)
Vector2.Multiply(vector, scale, result)

Умножает вектор на скаляр.

vector
Левый операнд.
scale
Правый операнд.
result
Результат операции.
Multiply
public static Vector2 Multiply(Vector2 vector, Vector2 scale)
result = Vector2.Multiply(vector, scale)

Умножает вектор на компоненты вектора (масштаб).

vector
Левый операнд.
scale
Правый операнд.

Возвращает: Результат операции.

Multiply
public static void Multiply(Vector2 vector, Vector2 scale, Vector2 result)
Vector2.Multiply(vector, scale, result)

Умножает вектор на компоненты вектора (шкалы).

vector
Левый операнд.
scale
Правый операнд.
result
Результат операции.
Multiply
public static Vector2 Multiply(Vector2 vector, double scale)
result = Vector2.Multiply(vector, scale)

Умножает вектор на скаляр.

vector
Левый операнд.
scale
Правый операнд.

Возвращает: Результат операции.

Normalize
public static Vector2 Normalize(Vector2 vec)
result = Vector2.Normalize(vec)

Шкала вектора до длины единицы

vec
Входящий вектор

Возвращает: Нормализованный вектор

Normalize
public static void Normalize(Vector2 vec, Vector2 result)
Vector2.Normalize(vec, result)

Шкала вектора до длины единицы

vec
Входящий вектор
result
Нормализованный вектор
Normalize
public void Normalize()
vector2.Normalize()

Весит Vector2 до единицы длины.

NormalizeFast
public static Vector2 NormalizeFast(Vector2 vec)
result = Vector2.NormalizeFast(vec)

Масштабировать вектор приблизительно до единицы длины

vec
Входящий вектор

Возвращает: Нормализованный вектор

NormalizeFast
public static void NormalizeFast(Vector2 vec, Vector2 result)
Vector2.NormalizeFast(vec, result)

Масштабировать вектор приблизительно до единицы длины

vec
Входящий вектор
result
Нормализованный вектор
op_Addition
public static Vector2 op_Addition(Vector2 left, Vector2 right)
result = Vector2.op_Addition(left, right)

Добавляет два экземпляра.

left
Левый экземпляр.
right
Правильный пример.

Возвращает: Результат операции.

op_Division
public static Vector2 op_Division(double f, Vector2 vec)
result = Vector2.op_Division(f, vec)

Разделяет масштабер на компоненты экземпляра мудрые.

vec
Скаляр.
f
Экземпляр.

Возвращает: Результат операции.

op_Division
public static Vector2 op_Division(Vector2 vec, double f)
result = Vector2.op_Division(vec, f)

Разделяет экземпляр на скаляр.

vec
Экземпляр.
f
Скаляр.

Возвращает: Результат операции.

op_Equality
public static bool op_Equality(Vector2 left, Vector2 right)
result = Vector2.op_Equality(left, right)

Сравните два примера равенства.

left
Левый экземпляр.
right
Правильный пример.

Возвращает: Верно, если оба случая равны; ложно иначе.

op_Inequality
public static bool op_Inequality(Vector2 left, Vector2 right)
result = Vector2.op_Inequality(left, right)

Сравните два примера неравенства.

left
Левый экземпляр.
right
Правильный пример.

Возвращает: Верно, если примеры не равны; ложно иначе.

op_Multiply
public static Vector2 op_Multiply(double f, Vector2 vec)
result = Vector2.op_Multiply(f, vec)

Умножьте экземпляр на скаляр.

f
Скаляр.
vec
Экземпляр.

Возвращает: Результат операции.

op_Multiply
public static Vector2 op_Multiply(Vector2 vec, double f)
result = Vector2.op_Multiply(vec, f)

Умножает экземпляр на скаляр.

vec
Экземпляр.
f
Скаляр.

Возвращает: Результат операции.

op_Subtraction
public static Vector2 op_Subtraction(Vector2 left, Vector2 right)
result = Vector2.op_Subtraction(left, right)

Вычтите два примера.

left
Левый экземпляр.
right
Правильный пример.

Возвращает: Результат операции.

op_UnaryNegation
public static Vector2 op_UnaryNegation(Vector2 vec)
result = Vector2.op_UnaryNegation(vec)

Отрицает случай.

vec
Экземпляр.

Возвращает: Результат операции.

Subtract
public static void Subtract(Vector2 a, Vector2 b, Vector2 result)
Vector2.Subtract(a, b, result)

Вычтите один вектор из другого

a
Первый операнд
b
Второй операнд
result
Результат вычитания
Subtract
public static Vector2 Subtract(Vector2 a, Vector2 b)
result = Vector2.Subtract(a, b)

Вычтите один вектор из другого

a
Первый операнд
b
Второй операнд

Возвращает: Результат вычитания

ToString
public override string ToString()
result = vector2.ToString()

Возвращает System.String, который представляет текущий экземпляр.

Transform
public static void Transform(Vector2 vec, Quaternion quat, Vector2 result)
Vector2.Transform(vec, quat, result)

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

vec
Вектор для трансформации.
quat
Кватернион для вращения вектора.
result
Результат операции.
Transform
public static Vector2 Transform(Vector2 vec, Quaternion quat)
result = Vector2.Transform(vec, quat)

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

vec
Вектор для трансформации.
quat
Кватернион для вращения вектора.

Возвращает: Результат операции.

Поля

One
public static readonly Vector2 One
value = Vector2.One

Определяет экземпляр, для всех компонентов которого установлено значение 1.

SizeInBytes
public static readonly int SizeInBytes
value = Vector2.SizeInBytes

Определяет размер структуры Vector2d в байтах.

UnitX
public static Vector2 UnitX
value = Vector2.UnitX

Определяет Vector2d единичной длины, указывающий на ось X.

UnitY
public static Vector2 UnitY
value = Vector2.UnitY

Определяет Vector2d единичной длины, указывающий на ось Y.

x
public double x
value = vector2.x

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

y
public double y
value = vector2.y

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

Zero
public static Vector2 Zero
value = Vector2.Zero

Определяет Vector2d нулевой длины.