Vector3
Трёхкомпонентное значение для 3D-координат и вычислений.
Различайте позицию, смещение, скорость и нормаль, даже если все представлены Vector3. В 3D Y направлен вверх, Forward = (0,0,−1), Back = (0,0,1). Right.Cross(Up) даёт Back. Vector3.One имеет длину √3, а не 1.
Нормализация не сохраняет расстояние; Zero не определяет направление. Учитывайте пространство родителя и масштаб: Transform3D × точка включает перенос, Basis × вектор — нет. Для нормали под неравномерным масштабом нужен обратный транспонированный Basis.
Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.
Конструкторы1
Свойства16
BackСвойство
public static Vector3 Back { get; }Вектор единицы назад. Представляет локальное направление назад и глобальное направление юг.
DownСвойство
public static Vector3 Down { get; }Нижний единичный вектор.
ForwardСвойство
public static Vector3 Forward { get; }Прямой единичный вектор. Представляет локальное направление вперед и глобальное направление на север. Помните, что прямое направление для источников света, камер и т. д. отличается от 3D-ресурсов, таких как персонажи, которые по соглашению обращены лицом к камере. Используйте Vector3.ModelFront и подобные константы при работе в пространстве 3D-ресурсов.
InfСвойство
public static Vector3 Inf { get; }Вектор бесконечности, вектор со всеми компонентами @C#.INF.
ItemСвойство
public float this[int index] { get; set; }Доступ к компонентам вектора с использованием их индекса.
LeftСвойство
public static Vector3 Left { get; }Левый единичный вектор. Представляет локальное направление налево и глобальное направление запад.
ModelBottomСвойство
public static Vector3 ModelBottom { get; }Единичный вектор, направленный к нижней стороне (down) импортированных 3D-ресурсов.
ModelFrontСвойство
public static Vector3 ModelFront { get; }Единичный вектор, направленный к передней стороне (лицом вперед) импортированных 3D-ресурсов.
ModelLeftСвойство
public static Vector3 ModelLeft { get; }Единичный вектор, направленный в левую сторону импортированных 3D-ресурсов.
МОДЕЛИ
ModelRearСвойство
public static Vector3 ModelRear { get; }Единичный вектор, направленный к задней стороне (back) импортированных 3D-ресурсов.
ModelRightСвойство
public static Vector3 ModelRight { get; }Единичный вектор, направленный в правую сторону импортированных 3D-ресурсов.
ModelTopСвойство
public static Vector3 ModelTop { get; }Единичный вектор, направленный к верхней стороне (up) импортированных 3D-ресурсов.
OneСвойство
public static Vector3 One { get; }Вектор-единица — вектор у которого все координаты равны 1.
RightСвойство
public static Vector3 Right { get; }Правый единичный вектор. Представляет локальное направление вправо и глобальное направление на восток.
UpСвойство
public static Vector3 Up { get; }Верхний единичный вектор.
ZeroСвойство
public static Vector3 Zero { get; }Нулевой вектор — вектор у которого все координаты равны 0.
Методы71
AbsVector3
AngleTofloat
public float AngleTo(Vector3 to);Возвращает беззнаковый минимальный угол к заданному вектору в радианах.
| Имя | Тип | По умолчанию |
|---|---|---|
to | Vector3 | — |
toДругой вектор для сравнения этого вектора.
floatНеподписанный угол между двумя векторами в радианах.
BezierDerivativeVector3
public Vector3 BezierDerivative(Vector3 control1, Vector3 control2, Vector3 end, float t);Возвращает производную по заданному t на кривой Безье, определенной этим вектором и заданными точками control_1, control_2 и end.
| Имя | Тип | По умолчанию |
|---|---|---|
control1 | Vector3 | — |
control2 | Vector3 | — |
end | Vector3 | — |
t | float | — |
control1Control точка, определяющая кривую безиера.
control2Control точка, определяющая кривую безиера.
endЗначение пункта назначения для интерполяции.
tЗначение на диапазоне от 0,0 до 1,0, представляющее собой величину интерполяции.
Vector3Получаемое значение интерполяции.
BezierInterpolateVector3
public Vector3 BezierInterpolate(Vector3 control1, Vector3 control2, Vector3 end, float t);Возвращает точку с заданным t на кривой Безье, определенной этим вектором и заданными точками control_1, control_2 и end.
| Имя | Тип | По умолчанию |
|---|---|---|
control1 | Vector3 | — |
control2 | Vector3 | — |
end | Vector3 | — |
t | float | — |
control1Control точка, определяющая кривую безиера.
control2Control точка, определяющая кривую безиера.
endВектор назначения.
tЗначение на диапазоне от 0,0 до 1,0, представляющее собой величину интерполяции.
Vector3Вектор интерполяции.
BounceVector3
public Vector3 Bounce(Vector3 normal);Возвращает вектор, "отскочивший" от плоскости, определенной заданной нормалью n.
Примечание: Vector3.Bounce выполняет операцию, которую большинство движков и фреймворков называют [пропуск кода]reflect()`.
Сейл
| Имя | Тип | По умолчанию |
|---|---|---|
normal | Vector3 | — |
normalОбычный вектор, определяющий, что плоскость должна отскочить.
Vector3Отскочивший вектор.
CeilVector3
public Vector3 Ceil();Возвращает новый вектор, все компоненты которого округлены в большую сторону (в сторону положительной бесконечности).
Clamp2 перегрузки
public Vector3 Clamp(Vector3 min, Vector3 max);Возвращает новый вектор со всеми компонентами, зажатыми между компонентами Vector3.Min и Vector3.Max, путем запуска @GlobalScope.clamp для каждого компонента.
| Имя | Тип | По умолчанию |
|---|---|---|
min | Vector3 | — |
max | Vector3 | — |
minВектор с минимальными допустимыми значениями.
maxВектор с максимальными допустимыми значениями.
Vector3Вектор с зажимом всех компонентов.
public Vector3 Clamp(float min, float max);Возвращает новый вектор со всеми компонентами, зажатыми между компонентами Vector3.Min и Vector3.Max, путем запуска @GlobalScope.clamp для каждого компонента.
| Имя | Тип | По умолчанию |
|---|---|---|
min | float | — |
max | float | — |
minМинимальное допустимое значение.
maxМаксимально допустимое значение.
Vector3Вектор с зажимом всех компонентов.
CrossVector3
public Vector3 Cross(Vector3 with);Возвращает перпендикулярный вектор с длиной, зависящей от входов и угла. Right.Cross(Up) = Back (+Z); Forward в Reckfell — −Z.
| Имя | Тип | По умолчанию |
|---|---|---|
with | Vector3 | — |
withДругой вектор.
Vector3Перекрестный вектор продукта.
CubicInterpolateVector3
public Vector3 CubicInterpolate(Vector3 b, Vector3 preA, Vector3 postB, float weight);Осуществляет кубическую интерполяцию между этим вектором и b использование pre_a и post_b как ручки, и возвращает результат в положение weight. weight находится в диапазоне: 0.0 в адрес 1.0, представляющее собой сумму интерполяции.
| Имя | Тип | По умолчанию |
|---|---|---|
b | Vector3 | — |
preA | Vector3 | — |
postB | Vector3 | — |
weight | float | — |
bВектор назначения.
preAВектор перед этим вектором.
postBВектор после b.
weightЗначение на диапазоне от 0,0 до 1,0, представляющее собой величину интерполяции.
Vector3Вектор интерполяции.
CubicInterpolateInTimeVector3
public Vector3 CubicInterpolateInTime(Vector3 b, Vector3 preA, Vector3 postB, float weight, float t, float preAT, float postBT);Осуществляет кубическую интерполяцию между этим вектором и b использование pre_a и post_b как ручки, и возвращает результат в положение weight. weight находится в диапазоне: 0.0 в адрес 1.0, представляющее собой сумму интерполяции.
Он может осуществлять более гладкую интерполяцию, чем Vector3.CubicInterpolate по временным значениям.
| Имя | Тип | По умолчанию |
|---|---|---|
b | Vector3 | — |
preA | Vector3 | — |
postB | Vector3 | — |
weight | float | — |
t | float | — |
preAT | float | — |
postBT | float | — |
bВектор назначения.
preAВектор перед этим вектором.
postBВектор после b.
weightЗначение на диапазоне от 0,0 до 1,0, представляющее собой величину интерполяции.
Vector3Вектор интерполяции.
Deconstructvoid
public void Deconstruct(out float x, out float y, out float z);Метод помощи для вывода из строя тюпля.
| Имя | Тип | По умолчанию |
|---|---|---|
x | float | — |
y | float | — |
z | float | — |
DirectionToVector3
public Vector3 DirectionTo(Vector3 to);Возвращает нормализованный вектор, указывающий из этого вектора на to.
a.direction_to(b) эквивалентно (b - a).normalized(). См. также Vector3.Normalized.
| Имя | Тип | По умолчанию |
|---|---|---|
to | Vector3 | — |
toДругой вектор указывает в сторону.
Vector3Направление от этого вектора до to.
DistanceSquaredTofloat
public float DistanceSquaredTo(Vector3 to);Возвращает квадрат евклидова расстояния между этим вектором и to.
Этот метод работает быстрее, чем Vector3.DistanceTo, поэтому предпочитайте его, если вам нужно сравнить векторы или вам нужен квадрат расстояния для какой-либо формулы.
| Имя | Тип | По умолчанию |
|---|---|---|
to | Vector3 | — |
toДругой вектор для использования.
floatРасстояние в квадрате между двумя векторами.
DistanceTofloat
public float DistanceTo(Vector3 to);Возвращает евклидово расстояние между этим вектором и to.
| Имя | Тип | По умолчанию |
|---|---|---|
to | Vector3 | — |
toДругой вектор для использования.
floatРасстояние между двумя векторами.
Dotfloat
public float Dot(Vector3 with);Возвращает скалярное произведение этого вектора и with. Это можно использовать для сравнения угла между двумя векторами. Например, это можно использовать для определения того, смотрит ли враг на игрока.
Скалярное произведение будет равно 0 для прямого угла (90 градусов), больше 0 для углов уже 90 градусов и меньше 0 для углов шире 90 градусов.
При использовании единичных (нормализованных) векторов результат всегда будет между -1.0 (угол 180 градусов), когда векторы смотрят в противоположных направлениях, и 1.0 (угол 0 градусов), когда векторы выровнены.
Примечание: a.dot(b) эквивалентно b.dot(a).
| Имя | Тип | По умолчанию |
|---|---|---|
with | Vector3 | — |
withДругой вектор для использования.
floatТочный продукт двух векторов.
Equals2 перегрузки
public bool Equals(Vector3 other);Returns (Возврат) true если векторы точно равны.
Примечание: Из-за ошибок в точности в плавающей точке рассмотреть вопрос об использовании
Vector3.IsEqualApprox вместо этого, что более надежно.
| Имя | Тип | По умолчанию |
|---|---|---|
other | Vector3 | — |
otherДругой вектор.
boolВекторы равны или нет.
public override bool Equals(object? obj);Returns (Возврат) true если вектор точно равен
к данному объектуobj).
Примечание: Из-за ошибок в точности в плавающей точке рассмотреть вопрос об использовании
Vector3.IsEqualApprox вместо этого, что более надежно.
| Имя | Тип | По умолчанию |
|---|---|---|
obj | object | — |
objОбъект, с которым можно сравниться.
boolРавно ли вектор и объект равны.
FloorVector3
public Vector3 Floor();Возвращает новый вектор, все компоненты которого округлены в меньшую сторону (в сторону отрицательной бесконечности).
GetHashCodeint
public override int GetHashCode();Выполняет функцию хеширования Vector3.
intКод хэша для этого вектора.
InverseVector3
public Vector3 Inverse();Возвращает обратный вектор. Это то же самое, что Vector3(1.0 / v.x, 1.0 / v.y, 1.0 / v.z).
###=равный_ примерно
Vector3Обратная сторона этого вектора.
IsEqualApproxbool
public bool IsEqualApprox(Vector3 other);Возвращает true, если этот вектор и to приблизительно равны, путем запуска @GlobalScope.is_equal_approx для каждого компонента.
| Имя | Тип | По умолчанию |
|---|---|---|
other | Vector3 | — |
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 для каждого компонента.
Этот метод быстрее, чем использование Vector3.IsEqualApprox с одним значением в качестве нулевого вектора.
boolЯвляется ли вектор примерно нулевым.
Lengthfloat
public float Length();Возвращает длину (величину) данного вектора.
floatДлина этого вектора.
LengthSquaredfloat
public float LengthSquared();Возвращает длину данного вектора в квадрате.
Этот метод выполняется быстрее, чем Vector3.Length, поэтому он предпочтительнее если вам нужно сравнить векторы или нужно расстояние в квадрате для какой-либо формулы.
floatДлина в квадрате этого вектора.
LerpVector3
public Vector3 Lerp(Vector3 to, float weight);Возвращает результат линейной интерполяции между данным вектором и to на величину weight. weight находится в диапазоне от 0.0 до 1.0, что представляет собой величину интерполяции.
| Имя | Тип | По умолчанию |
|---|---|---|
to | Vector3 | — |
weight | float | — |
toВектор назначения для интерполяции.
weightЗначение на диапазоне от 0,0 до 1,0, представляющее собой величину интерполяции.
Vector3Вектор интерполяции.
LimitLengthVector3
public Vector3 LimitLength(float length = 1f);Возвращает вектор с максимальной длиной, ограничивая его длину до Vector3.Length. Если вектор не конечен, результат не определен.
| Имя | Тип | По умолчанию |
|---|---|---|
length | float | 1f |
lengthДлина, которую можно ограничить.
Vector3Вектор с его длиной ограничен.
Max2 перегрузки
public Vector3 Max(Vector3 with);Возвращает покомпонентный максимум этого и with, что эквивалентно Vector3(maxf(x, with.x), maxf(y, with.y), maxf(z, with.z)).
| Имя | Тип | По умолчанию |
|---|---|---|
with | Vector3 | — |
withДругой вектор для использования.
Vector3Полученный максимальный вектор.
public Vector3 Max(float with);Возвращает покомпонентный максимум этого и with, что эквивалентно Vector3(maxf(x, with.x), maxf(y, with.y), maxf(z, with.z)).
| Имя | Тип | По умолчанию |
|---|---|---|
with | float | — |
withДругое значение для использования.
Vector3Полученный максимальный вектор.
MaxAxisIndexVector3.Axis
public Vector3.Axis MaxAxisIndex();Возвращает ось наибольшего значения вектора. См. константы AXIS_*. Если все компоненты равны, этот метод возвращает Vector3.Axis.X.
Vector3.AxisИндекс верхней оси.
Min2 перегрузки
public Vector3 Min(Vector3 with);Возвращает покомпонентный минимум этого и with, эквивалентный Vector3(minf(x, with.x), minf(y, with.y), minf(z, with.z)).
| Имя | Тип | По умолчанию |
|---|---|---|
with | Vector3 | — |
withДругой вектор для использования.
Vector3Получаемый минимальный вектор.
public Vector3 Min(float with);Возвращает покомпонентный минимум этого и with, эквивалентный Vector3(minf(x, with.x), minf(y, with.y), minf(z, with.z)).
| Имя | Тип | По умолчанию |
|---|---|---|
with | float | — |
withДругое значение для использования.
Vector3Получаемый минимальный вектор.
MinAxisIndexVector3.Axis
public Vector3.Axis MinAxisIndex();Возвращает ось наименьшего значения вектора. См. константы AXIS_*. Если все компоненты равны, этот метод возвращает Vector3.Axis.Z.
Vector3.AxisУказатель нижней оси.
MoveTowardVector3
public Vector3 MoveToward(Vector3 to, float delta);Возвращает новый вектор, смещенный к to на фиксированную величину delta. Не выйдет за пределы конечного значения.
| Имя | Тип | По умолчанию |
|---|---|---|
to | Vector3 | — |
delta | float | — |
toВектор, к которому нужно двигаться.
deltaВсё, что нужно сделать.
Vector3Получаемый вектор.
NormalizedVector3
public Vector3 Normalized();Возвращает результат масштабирования вектора до единичной длины. Эквивалентно v / v.length(). Возвращает (0, 0, 0), если v.length() == 0. См. также Vector3.IsNormalized.
Примечание: Эта функция может возвращать неверные значения, если длина входного вектора близка к нулю.
Vector3Нормализованная версия вектора.
OctahedronDecodeVector3
public static Vector3 OctahedronDecode(Vector2 oct);Возвращает Vector3 из октаэдрически сжатой формы, созданной с помощью Vector3.OctahedronEncode (сохраненной как Vector2).
| Имя | Тип | По умолчанию |
|---|---|---|
oct | Vector2 | — |
octЗакодировано Vector2
Vector3Декодированная нормализованная Vector3.
OctahedronEncodeVector2
public Vector2 OctahedronEncode();Возвращает октаэдрически закодированную (oct32) форму этого Vector3 как Vector2. Поскольку Vector2 занимает на 1/3 меньше памяти по сравнению с Vector3, эта форма сжатия может использоваться для передачи большего количества Vector3.Normalized Vector3 без увеличения требований к хранению или памяти. См. также Vector3.OctahedronDecode.
Примечание: Vector3.OctahedronEncode может использоваться только для Vector3.Normalized векторов. Vector3.OctahedronEncode не проверяет, нормализован ли этот Vector3, и вернет значение, которое не распаковывается до исходного значения, если Vector3 не нормализован.
Примечание: Октаэдрическое сжатие с потерями, хотя визуальные различия редко заметны в реальных сценариях.
Vector2Закодировано Vector2.
OuterBasis
PosMod2 перегрузки
public Vector3 PosMod(Vector3 modv);Возвращает вектор, состоящий из @GlobalScope.fposmod компонентов этого вектора и mod.
| Имя | Тип | По умолчанию |
|---|---|---|
modv | Vector3 | — |
modvВектор, представляющий дивизоров операции.
public Vector3 PosMod(float mod);Возвращает вектор, состоящий из @GlobalScope.fposmod компонентов этого вектора и mod.
| Имя | Тип | По умолчанию |
|---|---|---|
mod | float | — |
modЗначение, представляющее счетчика операции.
ProjectVector3
public Vector3 Project(Vector3 onNormal);Возвращает новый вектор, полученный в результате проецирования этого вектора на данный вектор b. Вытекающий из этого новый вектор является параллельным bСм. также Vector3.Slide.
Примечание: Если вектор b - нулевой вектор, компоненты нового вектора будут: @C#.NAN.
| Имя | Тип | По умолчанию |
|---|---|---|
onNormal | Vector3 | — |
onNormalВектор для проецирования.
Vector3Прогнозируемый вектор.
ReflectVector3
public Vector3 Reflect(Vector3 normal);Возвращает результат отражения вектора через плоскость, определенную данным обычным вектором n.
Примечание: Vector3.Reflect отличается от того, что называют другие двигатели и системы Vector3.Bounce что делает то, что большинство двигателей называют [Код пропущенный/отражающий(ый)(ый) ".
| Имя | Тип | По умолчанию |
|---|---|---|
normal | Vector3 | — |
normalОбычный вектор, определяющий плоскость для отражения.
Vector3Отраженный вектор.
RotatedVector3
public Vector3 Rotated(Vector3 axis, float angle);Возвращает результат вращения этого вектора вокруг заданной оси на angle (в радианах). Ось должна быть нормализованным вектором. См. также @GlobalScope.deg_to_rad.
| Имя | Тип | По умолчанию |
|---|---|---|
axis | Vector3 | — |
angle | float | — |
axisВектор, чтобы повернуться.
angleУгол поворота в радианах.
Vector3Поворачиваемый вектор.
RoundVector3
public Vector3 Round();Возвращает новый вектор, все компоненты которого округлены до ближайшего целого числа, а половинные значения округлены от нуля.
Vector3Закругленный вектор.
SignVector3
public Vector3 Sign();Возвращает новый вектор, в котором каждый компонент установлен на 1.0, если он положительный, -1.0, если он отрицательный, и 0.0, если он равен нулю. Результат идентичен вызову @GlobalScope.sign для каждого компонента.
Vector3Вектор со всеми компонентами в качестве либо 1, -1или 0.
SignedAngleTofloat
public float SignedAngleTo(Vector3 to, Vector3 axis);Возвращает знаковый угол к заданному вектору в радианах. Знак угла положительный в направлении против часовой стрелки и отрицательный в направлении по часовой стрелке, если смотреть со стороны, указанной axis.
| Имя | Тип | По умолчанию |
|---|---|---|
to | Vector3 | — |
axis | Vector3 | — |
toДругой вектор для сравнения этого вектора.
axisОсь отсчета, используемая для знака угла.
floatПодписанный угол между двумя векторами, в радианах.
SlerpVector3
public Vector3 Slerp(Vector3 to, float weight);Возвращает результат сферической линейной интерполяции между этим вектором и to на величину weight. weight находится в диапазоне от 0,0 до 1,0, представляя величину интерполяции.
Этот метод также обрабатывает интерполяцию длин, если входные векторы имеют разную длину. Для особого случая, когда один или оба входных вектора имеют нулевую длину, этот метод ведет себя как Vector3.Lerp.
| Имя | Тип | По умолчанию |
|---|---|---|
to | Vector3 | — |
weight | float | — |
toВектор назначения для интерполяции.
weightЗначение на диапазоне от 0,0 до 1,0, представляющее собой величину интерполяции.
Vector3Вектор интерполяции.
SlideVector3
public Vector3 Slide(Vector3 normal);Возвращает новый вектор, полученный в результате скольжения этого вектора по плоскости с нормалью n. Результирующий новый вектор перпендикулярен n и эквивалентен этому вектору за вычетом его проекции на n. См. также Vector3.Project.
Примечание: Вектор n должен быть нормализован. См. также Vector3.Normalized.
| Имя | Тип | По умолчанию |
|---|---|---|
normal | Vector3 | — |
normalОбычный вектор, на который можно скользить.
Vector3Скользящий вектор.
Snapped2 перегрузки
public Vector3 Snapped(Vector3 step);Возвращает новый вектор, в котором каждый компонент привязан к ближайшему кратному соответствующего компонента в step. Это также можно использовать для округления компонентов до произвольного числа десятичных знаков.
| Имя | Тип | По умолчанию |
|---|---|---|
step | Vector3 | — |
stepВекторное значение, представляющее размер ступеньки.
Vector3Сломанный вектор.
public Vector3 Snapped(float step);Возвращает новый вектор, в котором каждый компонент привязан к ближайшему кратному соответствующего компонента в step. Это также можно использовать для округления компонентов до произвольного числа десятичных знаков.
| Имя | Тип | По умолчанию |
|---|---|---|
step | float | — |
stepРазмер шага, до которого можно дойти.
Vector3Сломанный вектор.
ToString2 перегрузки
public override string ToString();Преобразует это Vector3 к а string.
stringA string представление этого вектора.
public string ToString(string? format);Преобразует это Vector3 к а string с указанным format.
| Имя | Тип | По умолчанию |
|---|---|---|
format | string | — |
stringA string представление этого вектора.
op_AdditionVector3
public static Vector3 operator +(Vector3 left, Vector3 right);Добавить каждый компонент Vector3
с элементами данного Vector3.
| Имя | Тип | По умолчанию |
|---|---|---|
left | Vector3 | — |
right | Vector3 | — |
leftЛевый вектор.
rightПравильный вектор.
Vector3Добавленный вектор.
op_Division2 перегрузки
public static Vector3 operator /(Vector3 vec, Vector3 divisorv);Разделяет каждый компонент Vector3
элементами данной Vector3.
| Имя | Тип | По умолчанию |
|---|---|---|
vec | Vector3 | — |
divisorv | Vector3 | — |
vecВектор дивидендов.
divisorvВектор дивизора.
Vector3Разделенный вектор.
public static Vector3 operator /(Vector3 vec, float divisor);Разделяет каждый компонент Vector3
Клянусь данным System.Single.
| Имя | Тип | По умолчанию |
|---|---|---|
vec | Vector3 | — |
divisor | float | — |
vecВектор дивидендов.
divisorЗначимость дивизора.
Vector3Разделенный вектор.
op_Equalitybool
public static bool operator ==(Vector3 left, Vector3 right);Returns (Возврат) true если векторы точно равны.
Примечание: Из-за ошибок в точности в плавающей точке рассмотреть вопрос об использовании
Vector3.IsEqualApprox вместо этого, что более надежно.
| Имя | Тип | По умолчанию |
|---|---|---|
left | Vector3 | — |
right | Vector3 | — |
leftЛевый вектор.
rightПравильный вектор.
boolВекторы равны или нет.
op_GreaterThanbool
public static bool operator >(Vector3 left, Vector3 right);Сравнит два Vector3 Векторы по первой проверке
значение X left Вектор больше, чем
значение X right Вектор.
Если значения X в точности равны, то он повторяет эту проверку
с значениями Y двух векторов, а затем с значениями Z.
Этот оператор полезен для сортировки векторов.
| Имя | Тип | По умолчанию |
|---|---|---|
left | Vector3 | — |
right | Vector3 | — |
leftЛевый вектор.
rightПравильный вектор.
boolБудь то левый больше, чем правый.
op_GreaterThanOrEqualbool
public static bool operator >=(Vector3 left, Vector3 right);Сравнит два Vector3 Векторы по первой проверке
значение X left Вектор больше, чем
или равняется значению Х right Вектор.
Если значения X в точности равны, то он повторяет эту проверку
с значениями Y двух векторов, а затем с значениями Z.
Этот оператор полезен для сортировки векторов.
| Имя | Тип | По умолчанию |
|---|---|---|
left | Vector3 | — |
right | Vector3 | — |
leftЛевый вектор.
rightПравильный вектор.
boolНеважно, больше левого или нет.
op_Inequalitybool
public static bool operator !=(Vector3 left, Vector3 right);Returns (Возврат) true если векторы не равны.
Примечание: Из-за ошибок в точности в плавающей точке рассмотреть вопрос об использовании
Vector3.IsEqualApprox вместо этого, что более надежно.
| Имя | Тип | По умолчанию |
|---|---|---|
left | Vector3 | — |
right | Vector3 | — |
leftЛевый вектор.
rightПравильный вектор.
boolНе равны ли векторы.
op_LessThanbool
public static bool operator <(Vector3 left, Vector3 right);Сравнит два Vector3 Векторы по первой проверке
значение X left Вектор меньше
значение X right Вектор.
Если значения X в точности равны, то он повторяет эту проверку
с значениями Y двух векторов, а затем с значениями Z.
Этот оператор полезен для сортировки векторов.
| Имя | Тип | По умолчанию |
|---|---|---|
left | Vector3 | — |
right | Vector3 | — |
leftЛевый вектор.
rightПравильный вектор.
boolЛевый или нет меньше, чем правый.
op_LessThanOrEqualbool
public static bool operator <=(Vector3 left, Vector3 right);Сравнит два Vector3 Векторы по первой проверке
значение X left Вектор меньше
или равняется значению Х right Вектор.
Если значения X в точности равны, то он повторяет эту проверку
с значениями Y двух векторов, а затем с значениями Z.
Этот оператор полезен для сортировки векторов.
| Имя | Тип | По умолчанию |
|---|---|---|
left | Vector3 | — |
right | Vector3 | — |
leftЛевый вектор.
rightПравильный вектор.
boolНеважно, меньше левое или равно правому.
op_Modulus2 перегрузки
public static Vector3 operator %(Vector3 vec, Vector3 divisorv);Получает оставшуюся часть каждого компонента Vector3
с элементами данного Vector3.
В этой операции используется перерезанное деление, которое зачастую не является желательным
так как это не работает с отрицательными цифрами.
Рассмотреть вопрос об использовании Vector3.PosMod вместо этого
если вы хотите справиться с отрицательными числами.
| Имя | Тип | По умолчанию |
|---|---|---|
vec | Vector3 | — |
divisorv | Vector3 | — |
vecВектор дивидендов.
divisorvВектор дивизора.
Vector3Оставшийся вектор.
public static Vector3 operator %(Vector3 vec, float divisor);Получает оставшуюся часть каждого компонента Vector3
с элементами данного System.Single.
В этой операции используется перерезанное деление, которое зачастую не является желательным
так как это не работает с отрицательными цифрами.
Рассмотреть вопрос об использовании Vector3.PosMod вместо этого
если вы хотите справиться с отрицательными числами.
| Имя | Тип | По умолчанию |
|---|---|---|
vec | Vector3 | — |
divisor | float | — |
vecВектор дивидендов.
divisorЗначимость дивизора.
Vector3Оставшийся вектор.
op_Multiply3 перегрузки
public static Vector3 operator *(Vector3 left, Vector3 right);Множить каждый элемент Vector3
элементами данной Vector3.
| Имя | Тип | По умолчанию |
|---|---|---|
left | Vector3 | — |
right | Vector3 | — |
leftЛевый вектор.
rightПравильный вектор.
Vector3Множественный вектор.
public static Vector3 operator *(Vector3 vec, float scale);Множить каждый элемент Vector3
Клянусь данным System.Single.
| Имя | Тип | По умолчанию |
|---|---|---|
vec | Vector3 | — |
scale | float | — |
vecВектор умножения.
scaleМасштаб умножить на.
Vector3Множественный вектор.
public static Vector3 operator *(float scale, Vector3 vec);Множить каждый элемент Vector3
Клянусь данным System.Single.
| Имя | Тип | По умолчанию |
|---|---|---|
scale | float | — |
vec | Vector3 | — |
scaleМасштаб умножить на.
vecВектор умножения.
Vector3Множественный вектор.
op_SubtractionVector3
public static Vector3 operator -(Vector3 left, Vector3 right);Вычитает каждый элемент Vector3
элементами данной Vector3.
| Имя | Тип | По умолчанию |
|---|---|---|
left | Vector3 | — |
right | Vector3 | — |
leftЛевый вектор.
rightПравильный вектор.
Vector3Вычтенный вектор.
op_UnaryNegationVector3
public static Vector3 operator -(Vector3 vec);Возвращает отрицательную стоимость Vector3.
Это то же самое, что и написание new Vector3(-v.X, -v.Y, -v.Z).
Эта операция искажает направление вектора,
Держать одну и ту же величину.
При поплавках число ноль может быть либо положительным, либо отрицательным.
| Имя | Тип | По умолчанию |
|---|---|---|
vec | Vector3 | — |
vecВектор отрицания/отклонения.
Vector3Отклоненный/отключенный вектор.
op_UnaryPlusVector3
public static Vector3 operator +(Vector3 vec);Возвращает то же значение, как если бы + не было. Унарный + ничего не делает, но иногда он может сделать ваш код более читаемым.
| Имя | Тип | По умолчанию |
|---|---|---|
vec | Vector3 | — |
vecВектор, который ничего не делает.
Vector3Изначальный вектор.
Поля и константы3
XПоле
public float X;X компонент вектора. Может быть доступен через индекс [0].
YПоле
public float Y;Y компонент вектора. Может быть доступен через индекс [1].
ZПоле
public float Z;Z компонент вектора. Также может быть доступен по индексу [2].
Vector3.Axis
| Значение | Описание |
|---|---|
X = 0 | Перечисленное значение для оси X. Возвращается |
Y = 1 | Перечисленное значение для оси Y. Возвращается |
Z = 2 | Перечисленное значение для оси Z. Возвращается |