Vector2
Двухкомпонентное значение для 2D-координат и вычислений.
Смысл Vector2 задаёт задача: точка, смещение, скорость или направление. Для наведения вычитайте позиции в одном пространстве; нормализуйте только если нужна длина 1. Normalized нулевого вектора возвращает Zero, но не определяет направление.
В обычном 2D X идёт вправо, Y вниз, поэтому Right.AngleTo(Down) = π/2 выглядит как поворот по часовой стрелке. Для отскока от поверхности используйте Bounce с единичной нормалью; Reflect в этом SDK даёт противоположный результат. Структура не перемещает физическое тело и не ищет столкновения.
Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.
Конструкторы1
Свойства8
DownСвойство
public static Vector2 Down { get; }Down - единичный вектор вниз. Y направлен вниз в 2D, поэтому этот вектор указывает на +Y.
InfСвойство
public static Vector2 Inf { get; }Вектор бесконечности, вектор со всеми компонентами @C#.INF.
ItemСвойство
public float this[int index] { get; set; }Доступ к компонентам вектора с использованием их индекса.
LeftСвойство
public static Vector2 Left { get; }Левый единичный вектор. Представляет направление влево.
OneСвойство
public static Vector2 One { get; }Вектор-единица — вектор у которого все координаты равны 1.
RightСвойство
public static Vector2 Right { get; }Правый единичный вектор. Представляет направление вправо.
UpСвойство
public static Vector2 Up { get; }Up единичный вектор вверх. Y направлен вниз в 2D, поэтому этот вектор указывает на -Y.
ZeroСвойство
public static Vector2 Zero { get; }Нулевой вектор — вектор у которого все координаты равны 0.
Методы72
AbsVector2
Anglefloat
public float Angle();Возвращает Mathf.Atan2(Y, X): угол в радианах относительно положительной оси X. Направлению Right соответствует 0, направлению Down с положительной Y в обычных экранных координатах 2D — PI / 2.
floatУгол этого вектора, в радианах.
AngleTofloat
public float AngleTo(Vector2 to);Возвращает ориентированный угол в радианах через atan2(Cross, Dot). Right → Down даёт π/2, на экране с Y вниз это по часовой стрелке.
| Имя | Тип | По умолчанию |
|---|---|---|
to | Vector2 | — |
toВторое ненулевое направление в том же пространстве; нормализация не обязательна.
floatОриентированный угол atan2(Cross(to), Dot(to)) в радианах. Для нулевого вектора геометрическое направление не определено.
AngleToPointfloat
public float AngleToPoint(Vector2 to);Возвращает Mathf.Atan2(to.Y - Y, to.X - X): угол в радианах направления от этой точки к to. Обе точки должны находиться в одной системе координат. Метод не поворачивает Entity и не измеряет угол между двумя независимыми векторами направлений.
| Имя | Тип | По умолчанию |
|---|---|---|
to | Vector2 | — |
toДругой вектор для сравнения этого вектора.
floatУгол между двумя векторами, в радианах.
Aspectfloat
BezierDerivativeVector2
public Vector2 BezierDerivative(Vector2 control1, Vector2 control2, Vector2 end, float t);Возвращает производную по заданному t на кривой Безье, определенной этим вектором и заданными точками control_1, control_2 и end.
| Имя | Тип | По умолчанию |
|---|---|---|
control1 | Vector2 | — |
control2 | Vector2 | — |
end | Vector2 | — |
t | float | — |
control1Control точка, определяющая кривую безиера.
control2Control точка, определяющая кривую безиера.
endЗначение пункта назначения для интерполяции.
tЗначение на диапазоне от 0,0 до 1,0, представляющее собой величину интерполяции.
Vector2Получаемое значение интерполяции.
BezierInterpolateVector2
public Vector2 BezierInterpolate(Vector2 control1, Vector2 control2, Vector2 end, float t);Возвращает точку с заданным t на кривой Безье, определенной этим вектором и заданными точками control_1, control_2 и end.
| Имя | Тип | По умолчанию |
|---|---|---|
control1 | Vector2 | — |
control2 | Vector2 | — |
end | Vector2 | — |
t | float | — |
control1Control точка, определяющая кривую безиера.
control2Control точка, определяющая кривую безиера.
endВектор назначения.
tЗначение на диапазоне от 0,0 до 1,0, представляющее собой величину интерполяции.
Vector2Вектор интерполяции.
BounceVector2
public Vector2 Bounce(Vector2 normal);Отражает вектор скорости от поверхности с единичной нормалью. Для (1,1) и Up результат (1,−1). Это противоположный результат Reflect в данном SDK.
| Имя | Тип | По умолчанию |
|---|---|---|
normal | Vector2 | — |
normalОбычный вектор, определяющий, что плоскость должна отскочить.
Vector2Отскочивший вектор.
CeilVector2
public Vector2 Ceil();Возвращает новый вектор, все компоненты которого округлены в большую сторону (в сторону положительной бесконечности).
Clamp2 перегрузки
public Vector2 Clamp(Vector2 min, Vector2 max);Возвращает новый вектор со всеми компонентами, зажатыми между компонентами Vector2.Min и Vector2.Max, путем запуска @GlobalScope.clamp для каждого компонента.
| Имя | Тип | По умолчанию |
|---|---|---|
min | Vector2 | — |
max | Vector2 | — |
minВектор с минимальными допустимыми значениями.
maxВектор с максимальными допустимыми значениями.
Vector2Вектор с зажимом всех компонентов.
public Vector2 Clamp(float min, float max);Возвращает новый вектор со всеми компонентами, зажатыми между компонентами Vector2.Min и Vector2.Max, путем запуска @GlobalScope.clamp для каждого компонента.
| Имя | Тип | По умолчанию |
|---|---|---|
min | float | — |
max | float | — |
minМинимальное допустимое значение.
maxМаксимально допустимое значение.
Vector2Вектор с зажимом всех компонентов.
Crossfloat
public float Cross(Vector2 with);Возвращает скаляр x₁y₂ − y₁x₂, не Vector3. Right.Cross(Down) = 1. Знак интерпретируйте с учётом направления экранной Y.
| Имя | Тип | По умолчанию |
|---|---|---|
with | Vector2 | — |
withДругой вектор.
floatСтоимость кросс-продукции.
CubicInterpolateVector2
public Vector2 CubicInterpolate(Vector2 b, Vector2 preA, Vector2 postB, float weight);Осуществляет кубическую интерполяцию между этим вектором и b использование pre_a и post_b как ручки, и возвращает результат в положение weight. weight находится в диапазоне: 0.0 в адрес 1.0, представляющее собой сумму интерполяции.
| Имя | Тип | По умолчанию |
|---|---|---|
b | Vector2 | — |
preA | Vector2 | — |
postB | Vector2 | — |
weight | float | — |
bВектор назначения.
preAВектор перед этим вектором.
postBВектор после b.
weightЗначение на диапазоне от 0,0 до 1,0, представляющее собой величину интерполяции.
Vector2Вектор интерполяции.
CubicInterpolateInTimeVector2
public Vector2 CubicInterpolateInTime(Vector2 b, Vector2 preA, Vector2 postB, float weight, float t, float preAT, float postBT);Осуществляет кубическую интерполяцию между этим вектором и b использование pre_a и post_b как ручки, и возвращает результат в положение weight. weight находится в диапазоне: 0.0 в адрес 1.0, представляющее собой сумму интерполяции.
Он может осуществлять более гладкую интерполяцию, чем Vector2.CubicInterpolate по временным значениям.
| Имя | Тип | По умолчанию |
|---|---|---|
b | Vector2 | — |
preA | Vector2 | — |
postB | Vector2 | — |
weight | float | — |
t | float | — |
preAT | float | — |
postBT | float | — |
bВектор назначения.
preAВектор перед этим вектором.
postBВектор после b.
weightЗначение на диапазоне от 0,0 до 1,0, представляющее собой величину интерполяции.
Vector2Вектор интерполяции.
Deconstructvoid
public void Deconstruct(out float x, out float y);Метод помощи для вывода из строя тюпля.
| Имя | Тип | По умолчанию |
|---|---|---|
x | float | — |
y | float | — |
DirectionToVector2
public Vector2 DirectionTo(Vector2 to);Возвращает нормализованный вектор, указывающий из этого вектора на to.
a.direction_to(b) эквивалентно (b - a).normalized(). См. также Vector2.Normalized.
| Имя | Тип | По умолчанию |
|---|---|---|
to | Vector2 | — |
toДругой вектор указывает в сторону.
Vector2Направление от этого вектора до to.
DistanceSquaredTofloat
public float DistanceSquaredTo(Vector2 to);Возвращает квадрат евклидова расстояния между этим вектором и to.
Этот метод работает быстрее, чем Vector2.DistanceTo, поэтому предпочитайте его, если вам нужно сравнить векторы или вам нужен квадрат расстояния для какой-либо формулы.
| Имя | Тип | По умолчанию |
|---|---|---|
to | Vector2 | — |
toДругой вектор для использования.
floatРасстояние в квадрате между двумя векторами.
DistanceTofloat
public float DistanceTo(Vector2 to);Возвращает евклидово расстояние между этим вектором и to.
| Имя | Тип | По умолчанию |
|---|---|---|
to | Vector2 | — |
toДругой вектор для использования.
floatРасстояние между двумя векторами.
Dotfloat
public float Dot(Vector2 with);Скалярное произведение. Для единичных направлений равно косинусу угла; без нормализации также содержит обе длины.
| Имя | Тип | По умолчанию |
|---|---|---|
with | Vector2 | — |
withДругой вектор для использования.
floatТочный продукт двух векторов.
Equals2 перегрузки
public bool Equals(Vector2 other);Returns (Возврат) true если векторы точно равны.
Примечание: Из-за ошибок в точности в плавающей точке рассмотреть вопрос об использовании
Vector2.IsEqualApprox вместо этого, что более надежно.
| Имя | Тип | По умолчанию |
|---|---|---|
other | Vector2 | — |
otherДругой вектор.
boolВекторы равны или нет.
public override bool Equals(object? obj);Returns (Возврат) true если вектор точно равен
к данному объектуobj).
Примечание: Из-за ошибок в точности в плавающей точке рассмотреть вопрос об использовании
Vector2.IsEqualApprox вместо этого, что более надежно.
| Имя | Тип | По умолчанию |
|---|---|---|
obj | object | — |
objОбъект, с которым можно сравниться.
boolРавно ли вектор и объект равны.
FloorVector2
public Vector2 Floor();Возвращает новый вектор, все компоненты которого округлены в меньшую сторону (в сторону отрицательной бесконечности).
FromAngleVector2
public static Vector2 FromAngle(float angle);Создает Vector2, повернутый на заданный Vector2.Angle в радианах. Это эквивалентно выполнению Vector2(cos(angle), sin(angle)) или Vector2.RIGHT.rotated(angle).
print(Vector2.from_angle(0)) # Prints (1.0, 0.0)
print(Vector2(1, 0).angle()) # Prints 0.0, which is the angle used above.
print(Vector2.from_angle(PI / 2)) # Prints (0.0, 1.0)Примечание: Длина возвращаемого Vector2 составляет приблизительно 1.0, но не гарантируется, что она будет равна точно 1.0 из-за проблем с точностью чисел с плавающей точкой. Вызовите Vector2.Normalized для возвращенного Vector2, если вам требуется единичный вектор.
| Имя | Тип | По умолчанию |
|---|---|---|
angle | float | — |
angleУгол вектора, в радианах.
Vector2Получаемый вектор.
GetHashCodeint
public override int GetHashCode();Выполняет функцию хеширования Vector2.
intКод хэша для этого вектора.
InverseVector2
public Vector2 Inverse();Возвращает обратный вектор. Это то же самое, что и Vector2(1.0 / v.x, 1.0 / v.y).
###=равный_ примерно
Vector2Обратная сторона этого вектора.
IsEqualApproxbool
public bool IsEqualApprox(Vector2 other);Возвращает true, если этот вектор и to приблизительно равны, путем запуска @GlobalScope.is_equal_approx для каждого компонента.
| Имя | Тип | По умолчанию |
|---|---|---|
other | Vector2 | — |
otherДругой вектор для сравнения.
boolВекторы примерно равны.
IsFinitebool
public bool IsFinite();Возвращает true, если этот вектор конечен, вызывая @GlobalScope.is_finite для каждого компонента.
boolЯвляется ли этот вектор конечным или нет.
IsNormalizedbool
public bool IsNormalized();Возвращает true, если вектор нормализован, т.е. его длина приблизительно равна 1.
###=0_ примерно
boolA bool , указывающее, нормализован ли вектор.
IsZeroApproxbool
public bool IsZeroApprox();Возвращает true, если значения этого вектора приблизительно равны нулю, выполняя @GlobalScope.is_zero_approx для каждого компонента.
Этот метод быстрее, чем использование Vector2.IsEqualApprox с одним значением в качестве нулевого вектора.
boolЯвляется ли вектор примерно нулевым.
Lengthfloat
public float Length();Возвращает длину (величину) данного вектора.
floatДлина этого вектора.
LengthSquaredfloat
public float LengthSquared();Возвращает длину данного вектора в квадрате.
Этот метод выполняется быстрее, чем Vector2.Length, поэтому он предпочтительнее если вам нужно сравнить векторы или нужно расстояние в квадрате для какой-либо формулы.
floatДлина в квадрате этого вектора.
LerpVector2
public Vector2 Lerp(Vector2 to, float weight);Линейно интерполирует по весу. Вес 0/1 даёт концы; за диапазоном возможна экстраполяция. Вес не является расстоянием или временем.
| Имя | Тип | По умолчанию |
|---|---|---|
to | Vector2 | — |
weight | float | — |
toВектор назначения для интерполяции.
weightЗначение на диапазоне от 0,0 до 1,0, представляющее собой величину интерполяции.
Vector2Вектор интерполяции.
LimitLengthVector2
public Vector2 LimitLength(float length = 1f);Возвращает вектор с максимальной длиной, ограничивая его длину до Vector2.Length. Если вектор не конечен, результат не определен.
| Имя | Тип | По умолчанию |
|---|---|---|
length | float | 1f |
lengthДлина, которую можно ограничить.
Vector2Вектор с его длиной ограничен.
Max2 перегрузки
public Vector2 Max(Vector2 with);Возвращает покомпонентный максимум этого и with, что эквивалентно Vector2(maxf(x, with.x), maxf(y, with.y)).
| Имя | Тип | По умолчанию |
|---|---|---|
with | Vector2 | — |
withДругой вектор для использования.
Vector2Полученный максимальный вектор.
public Vector2 Max(float with);Возвращает покомпонентный максимум этого и with, что эквивалентно Vector2(maxf(x, with.x), maxf(y, with.y)).
| Имя | Тип | По умолчанию |
|---|---|---|
with | float | — |
withДругое значение для использования.
Vector2Полученный максимальный вектор.
MaxAxisIndexVector2.Axis
public Vector2.Axis MaxAxisIndex();Возвращает ось наибольшего значения вектора. См. константы AXIS_*. Если все компоненты равны, этот метод возвращает Vector2.Axis.X.
Vector2.AxisИндекс верхней оси.
Min2 перегрузки
public Vector2 Min(Vector2 with);Возвращает покомпонентный минимум этого и with, эквивалентно Vector2(minf(x, with.x), minf(y, with.y)).
| Имя | Тип | По умолчанию |
|---|---|---|
with | Vector2 | — |
withДругой вектор для использования.
Vector2Получаемый минимальный вектор.
public Vector2 Min(float with);Возвращает покомпонентный минимум этого и with, эквивалентно Vector2(minf(x, with.x), minf(y, with.y)).
| Имя | Тип | По умолчанию |
|---|---|---|
with | float | — |
withДругое значение для использования.
Vector2Получаемый минимальный вектор.
MinAxisIndexVector2.Axis
public Vector2.Axis MinAxisIndex();Возвращает ось наименьшего значения вектора. См. константы AXIS_*. Если все компоненты равны, этот метод возвращает Vector2.Axis.Y.
Vector2.AxisУказатель нижней оси.
MoveTowardVector2
public Vector2 MoveToward(Vector2 to, float delta);При конечном delta ≥ 0 приближает к цели без перескока; при расстоянии меньше Mathf.Epsilon сразу возвращает цель. Отрицательный delta обычно отдаляет от неё. Для скорости за секунду передайте speed × время шага.
| Имя | Тип | По умолчанию |
|---|---|---|
to | Vector2 | — |
delta | float | — |
toЦелевое значение в том же пространстве координат.
deltaКонечная неотрицательная длина шага в единицах вектора, например speed × deltaTime. Это не число секунд.
Vector2Новое значение; при достижении цели или расстоянии меньше Mathf.Epsilon — точно to. Исходный вектор не изменяется.
NormalizedVector2
public Vector2 Normalized();Возвращает направление длины 1 либо Zero для нулевого вектора. Убирает длину исходного смещения; Zero не задаёт угол прицеливания.
Vector2Копия длины 1 для ненулевого вектора либо Zero. Исходное значение не изменяется.
OrthogonalVector2
public Vector2 Orthogonal();Возвращает перпендикулярный вектор, повернутый на 90 градусов против часовой стрелки по сравнению с исходным, с той же длиной.
Vector2Вектор перпендикуляра.
PosMod2 перегрузки
public Vector2 PosMod(Vector2 modv);Возвращает вектор, состоящий из @GlobalScope.fposmod компонентов этого вектора и mod.
| Имя | Тип | По умолчанию |
|---|---|---|
modv | Vector2 | — |
modvВектор, представляющий дивизоров операции.
public Vector2 PosMod(float mod);Возвращает вектор, состоящий из @GlobalScope.fposmod компонентов этого вектора и mod.
| Имя | Тип | По умолчанию |
|---|---|---|
mod | float | — |
modЗначение, представляющее счетчика операции.
ProjectVector2
public Vector2 Project(Vector2 onNormal);Возвращает новый вектор, полученный в результате проецирования этого вектора на данный вектор b. Вытекающий из этого новый вектор является параллельным bСм. также Vector2.Slide.
Примечание: Если вектор b - нулевой вектор, компоненты нового вектора будут: @C#.NAN.
| Имя | Тип | По умолчанию |
|---|---|---|
onNormal | Vector2 | — |
onNormalВектор для проецирования.
Vector2Прогнозируемый вектор.
ReflectVector2
public Vector2 Reflect(Vector2 normal);Вычисляет 2 × dot(v,n) × n − v для единичного n. Это отрицание Bounce; для обычного отскока от поверхности используйте Bounce.
| Имя | Тип | По умолчанию |
|---|---|---|
normal | Vector2 | — |
normalОбычный вектор, определяющий плоскость для отражения.
Vector2Отраженный вектор.
RotatedVector2
public Vector2 Rotated(float angle);Возвращает результат поворота этого вектора на Vector2.Angle (в радианах). См. также @GlobalScope.deg_to_rad.
| Имя | Тип | По умолчанию |
|---|---|---|
angle | float | — |
angleУгол поворота в радианах.
Vector2Поворачиваемый вектор.
RoundVector2
public Vector2 Round();Возвращает новый вектор, все компоненты которого округлены до ближайшего целого числа, а половинные значения округлены от нуля.
Vector2Закругленный вектор.
SignVector2
public Vector2 Sign();Возвращает новый вектор, в котором каждый компонент установлен на 1.0, если он положительный, -1.0, если он отрицательный, и 0.0, если он равен нулю. Результат идентичен вызову @GlobalScope.sign для каждого компонента.
Vector2Вектор со всеми компонентами в качестве либо 1, -1или 0.
SlerpVector2
public Vector2 Slerp(Vector2 to, float weight);Возвращает результат сферической линейной интерполяции между этим вектором и to на величину weight. weight находится в диапазоне от 0,0 до 1,0, представляя величину интерполяции.
Этот метод также обрабатывает интерполяцию длин, если входные векторы имеют разную длину. Для особого случая, когда один или оба входных вектора имеют нулевую длину, этот метод ведет себя как Vector2.Lerp.
| Имя | Тип | По умолчанию |
|---|---|---|
to | Vector2 | — |
weight | float | — |
toВектор назначения для интерполяции.
weightЗначение на диапазоне от 0,0 до 1,0, представляющее собой величину интерполяции.
Vector2Вектор интерполяции.
SlideVector2
public Vector2 Slide(Vector2 normal);Возвращает новый вектор, полученный в результате скольжения этого вектора вдоль линии с нормалью n. Результирующий новый вектор перпендикулярен n и эквивалентен этому вектору за вычетом его проекции на n. См. также Vector2.Project.
Примечание: Вектор n должен быть нормализован. См. также Vector2.Normalized.
| Имя | Тип | По умолчанию |
|---|---|---|
normal | Vector2 | — |
normalОбычный вектор, на который можно скользить.
Vector2Скользящий вектор.
Snapped2 перегрузки
public Vector2 Snapped(Vector2 step);Возвращает новый вектор, в котором каждый компонент привязан к ближайшему кратному соответствующего компонента в step. Это также можно использовать для округления компонентов до произвольного числа десятичных знаков.
| Имя | Тип | По умолчанию |
|---|---|---|
step | Vector2 | — |
stepВекторное значение, представляющее размер ступеньки.
Vector2Сломанный вектор.
public Vector2 Snapped(float step);Возвращает новый вектор, в котором каждый компонент привязан к ближайшему кратному соответствующего компонента в step. Это также можно использовать для округления компонентов до произвольного числа десятичных знаков.
| Имя | Тип | По умолчанию |
|---|---|---|
step | float | — |
stepРазмер шага, до которого можно дойти.
Vector2Сломанный вектор.
ToString2 перегрузки
public override string ToString();Преобразует это Vector2 к а string.
stringA string представление этого вектора.
public string ToString(string? format);Преобразует это Vector2 к а string с указанным format.
| Имя | Тип | По умолчанию |
|---|---|---|
format | string | — |
stringA string представление этого вектора.
op_AdditionVector2
public static Vector2 operator +(Vector2 left, Vector2 right);Добавить каждый компонент Vector2
с элементами данного Vector2.
| Имя | Тип | По умолчанию |
|---|---|---|
left | Vector2 | — |
right | Vector2 | — |
leftЛевый вектор.
rightПравильный вектор.
Vector2Добавленный вектор.
op_Division2 перегрузки
public static Vector2 operator /(Vector2 vec, Vector2 divisorv);Разделяет каждый компонент Vector2
элементами данной Vector2.
| Имя | Тип | По умолчанию |
|---|---|---|
vec | Vector2 | — |
divisorv | Vector2 | — |
vecВектор дивидендов.
divisorvВектор дивизора.
Vector2Разделенный вектор.
public static Vector2 operator /(Vector2 vec, float divisor);Разделяет каждый компонент Vector2
Клянусь данным System.Single.
| Имя | Тип | По умолчанию |
|---|---|---|
vec | Vector2 | — |
divisor | float | — |
vecВектор дивидендов.
divisorЗначимость дивизора.
Vector2Разделенный вектор.
op_Equalitybool
public static bool operator ==(Vector2 left, Vector2 right);Returns (Возврат) true если векторы точно равны.
Примечание: Из-за ошибок в точности в плавающей точке рассмотреть вопрос об использовании
Vector2.IsEqualApprox вместо этого, что более надежно.
| Имя | Тип | По умолчанию |
|---|---|---|
left | Vector2 | — |
right | Vector2 | — |
leftЛевый вектор.
rightПравильный вектор.
boolВекторы равны или нет.
op_GreaterThanbool
public static bool operator >(Vector2 left, Vector2 right);Сравнит два Vector2 Векторы по первой проверке
значение X left Вектор больше, чем
значение X right Вектор.
Если значения X в точности равны, то он повторяет эту проверку
с значениями Y двух векторов.
Этот оператор полезен для сортировки векторов.
| Имя | Тип | По умолчанию |
|---|---|---|
left | Vector2 | — |
right | Vector2 | — |
leftЛевый вектор.
rightПравильный вектор.
boolБудь то левый больше, чем правый.
op_GreaterThanOrEqualbool
public static bool operator >=(Vector2 left, Vector2 right);Сравнит два Vector2 Векторы по первой проверке
значение X left Вектор больше, чем
или равняется значению Х right Вектор.
Если значения X в точности равны, то он повторяет эту проверку
с значениями Y двух векторов.
Этот оператор полезен для сортировки векторов.
| Имя | Тип | По умолчанию |
|---|---|---|
left | Vector2 | — |
right | Vector2 | — |
leftЛевый вектор.
rightПравильный вектор.
boolНеважно, больше левого или нет.
op_Inequalitybool
public static bool operator !=(Vector2 left, Vector2 right);Returns (Возврат) true если векторы не равны.
Примечание: Из-за ошибок в точности в плавающей точке рассмотреть вопрос об использовании
Vector2.IsEqualApprox вместо этого, что более надежно.
| Имя | Тип | По умолчанию |
|---|---|---|
left | Vector2 | — |
right | Vector2 | — |
leftЛевый вектор.
rightПравильный вектор.
boolНе равны ли векторы.
op_LessThanbool
public static bool operator <(Vector2 left, Vector2 right);Сравнит два Vector2 Векторы по первой проверке
значение X left Вектор меньше
значение X right Вектор.
Если значения X в точности равны, то он повторяет эту проверку
с значениями Y двух векторов.
Этот оператор полезен для сортировки векторов.
| Имя | Тип | По умолчанию |
|---|---|---|
left | Vector2 | — |
right | Vector2 | — |
leftЛевый вектор.
rightПравильный вектор.
boolЛевый или нет меньше, чем правый.
op_LessThanOrEqualbool
public static bool operator <=(Vector2 left, Vector2 right);Сравнит два Vector2 Векторы по первой проверке
значение X left Вектор меньше
или равняется значению Х right Вектор.
Если значения X в точности равны, то он повторяет эту проверку
с значениями Y двух векторов.
Этот оператор полезен для сортировки векторов.
| Имя | Тип | По умолчанию |
|---|---|---|
left | Vector2 | — |
right | Vector2 | — |
leftЛевый вектор.
rightПравильный вектор.
boolНеважно, меньше левое или равно правому.
op_Modulus2 перегрузки
public static Vector2 operator %(Vector2 vec, Vector2 divisorv);Получает оставшуюся часть каждого компонента Vector2
с элементами данного Vector2.
В этой операции используется перерезанное деление, которое зачастую не является желательным
так как это не работает с отрицательными цифрами.
Рассмотреть вопрос об использовании Vector2.PosMod вместо этого
если вы хотите справиться с отрицательными числами.
| Имя | Тип | По умолчанию |
|---|---|---|
vec | Vector2 | — |
divisorv | Vector2 | — |
vecВектор дивидендов.
divisorvВектор дивизора.
Vector2Оставшийся вектор.
public static Vector2 operator %(Vector2 vec, float divisor);Получает оставшуюся часть каждого компонента Vector2
с элементами данного System.Single.
В этой операции используется перерезанное деление, которое зачастую не является желательным
так как это не работает с отрицательными цифрами.
Рассмотреть вопрос об использовании Vector2.PosMod вместо этого
если вы хотите справиться с отрицательными числами.
| Имя | Тип | По умолчанию |
|---|---|---|
vec | Vector2 | — |
divisor | float | — |
vecВектор дивидендов.
divisorЗначимость дивизора.
Vector2Оставшийся вектор.
op_Multiply3 перегрузки
public static Vector2 operator *(Vector2 left, Vector2 right);Множить каждый элемент Vector2
элементами данной Vector2.
| Имя | Тип | По умолчанию |
|---|---|---|
left | Vector2 | — |
right | Vector2 | — |
leftЛевый вектор.
rightПравильный вектор.
Vector2Множественный вектор.
public static Vector2 operator *(Vector2 vec, float scale);Множить каждый элемент Vector2
Клянусь данным System.Single.
| Имя | Тип | По умолчанию |
|---|---|---|
vec | Vector2 | — |
scale | float | — |
vecВектор умножения.
scaleМасштаб умножить на.
Vector2Множественный вектор.
public static Vector2 operator *(float scale, Vector2 vec);Множить каждый элемент Vector2
Клянусь данным System.Single.
| Имя | Тип | По умолчанию |
|---|---|---|
scale | float | — |
vec | Vector2 | — |
scaleМасштаб умножить на.
vecВектор умножения.
Vector2Множественный вектор.
op_SubtractionVector2
public static Vector2 operator -(Vector2 left, Vector2 right);Вычитает каждый элемент Vector2
элементами данной Vector2.
| Имя | Тип | По умолчанию |
|---|---|---|
left | Vector2 | — |
right | Vector2 | — |
leftЛевый вектор.
rightПравильный вектор.
Vector2Вычтенный вектор.
op_UnaryNegationVector2
public static Vector2 operator -(Vector2 vec);Возвращает отрицательную стоимость Vector2.
Это то же самое, что и написание new Vector2(-v.X, -v.Y).
Эта операция искажает направление вектора,
Держать одну и ту же величину.
При поплавках число ноль может быть либо положительным, либо отрицательным.
| Имя | Тип | По умолчанию |
|---|---|---|
vec | Vector2 | — |
vecВектор отрицания/отклонения.
Vector2Отклоненный/отключенный вектор.
op_UnaryPlusVector2
public static Vector2 operator +(Vector2 vec);Возвращает то же значение, как если бы + не было. Унарный + ничего не делает, но иногда он может сделать ваш код более читаемым.
| Имя | Тип | По умолчанию |
|---|---|---|
vec | Vector2 | — |
vecВектор, который ничего не делает.
Vector2Изначальный вектор.
Поля и константы2
XПоле
public float X;X компонент вектора. Может быть доступен через индекс [0].
YПоле
public float Y;Y компонент вектора. Может быть доступен через индекс [1].
Vector2.Axis
| Значение | Описание |
|---|---|
X = 0 | Перечисленное значение для оси X. Возвращается |
Y = 1 | Перечисленное значение для оси Y. Возвращается |