This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| ru:functions:math [2016/04/26 18:18] – djskaarj | ru:functions:math [2016/05/04 21:53] (current) – djskaarj | ||
|---|---|---|---|
| Line 39: | Line 39: | ||
| Сравнивает два числа и возвращает результат: | Сравнивает два числа и возвращает результат: | ||
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| ==== dist ==== | ==== dist ==== | ||
| Line 55: | Line 55: | ||
| dist(3.0, -2.0) == 5.0; | dist(3.0, -2.0) == 5.0; | ||
| </ | </ | ||
| + | |||
| + | ==== gcf ==== | ||
| + | '' | ||
| + | |||
| + | Возвращает наибольший общий делитель двух чисел. Возвращённый делитель будет отрицательным, | ||
| + | |||
| + | **Example** | ||
| + | |||
| + | < | ||
| + | gcf(18, | ||
| + | gcf(18.0, 24.0) == 6.0; | ||
| + | gcf(-18, | ||
| + | </ | ||
| + | |||
| ==== max ==== | ==== max ==== | ||
| Line 84: | Line 98: | ||
| Возвращает знак числа x. | Возвращает знак числа x. | ||
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| - | * '' | + | * '' |
| **Пример** | **Пример** | ||
| Line 105: | Line 119: | ||
| * round -- округляет до ближайшего целого числа | * round -- округляет до ближайшего целого числа | ||
| - | Для каждого вида округления | + | Таблица округления: |
| + | < | ||
| + | | ||
| + | ----- -------- -------- -------- -------- | ||
| + | | ||
| + | | ||
| + | | ||
| + | -2.3 -2 | ||
| + | -3.8 -4 | ||
| + | -5.5 -5 | ||
| + | </ | ||
| + | |||
| + | Для каждого вида округления существует две функции. Те, что начинаются с " | ||
| ==== ceil ==== | ==== ceil ==== | ||
| '' | '' | ||
| Line 135: | Line 161: | ||
| Возвращает число x без дробной части. | Возвращает число x без дробной части. | ||
| - | ===== Numerical algorithms | + | ===== Численные алгоритмы |
| ==== lerp ==== | ==== lerp ==== | ||
| Line 221: | Line 247: | ||
| Возвращает arccosec x (арккосеканс). | Возвращает arccosec x (арккосеканс). | ||
| + | |||
| + | ===== Векторы ===== | ||
| + | |||
| + | ==== dot2 ==== | ||
| + | '' | ||
| + | |||
| + | Возвращает скалярное произведение двух векторов. | ||
| + | |||
| + | ==== dot3 ==== | ||
| + | '' | ||
| + | |||
| + | Возвращает скалярное произведение двух трехмерных векторов. | ||
| + | |||
| + | ==== length2d ==== | ||
| + | '' | ||
| + | |||
| + | Возвращает длину заданного двухмерного вектора. Является Zandronum-реализацией функции | ||
| + | [[zdoom> | ||
| + | ==== length2d2 ==== | ||
| + | '' | ||
| + | |||
| + | Возвращает **квадрат** длины данного двухмерного вектора. | ||
| + | |||
| + | ==== length3d ==== | ||
| + | '' | ||
| + | |||
| + | Возвращает длину заданного трехмерного вектора. | ||
| + | |||
| + | ==== length3d2 ==== | ||
| + | '' | ||
| + | |||
| + | Возвращает **квадрат** длины заданного трехмерного вектора. | ||
| + | |||
| + | ==== normalize2d ==== | ||
| + | '' | ||
| + | |||
| + | Нормализует заданный двухмерный вектор. | ||
| + | |||
| + | [[..mulretval|Эта функция возвращает несколько значений.]] | ||
| + | |||
| + | ==== normalize3d ==== | ||
| + | '' | ||
| + | |||
| + | Нормализует заданный трехмерный вектор. | ||
| + | |||
| + | [[..mulretval|Эта функция возвращает несколько значений.]] | ||
| + | |||
| + | ==== RotatePoint ==== | ||
| + | '' | ||
| + | |||
| + | Вращает заданную точку (x; y) вокруг заданной точки вращения на указанный угол и возвращает результирующие координаты точки. | ||
| + | |||
| + | [[..mulretval|Эта функция возвращает несколько значений.]] | ||
| + | |||
| + | ==== RotateVector ==== | ||
| + | '' | ||
| + | |||
| + | Поворачивает вектор на указанный угол и возвращает его новые координаты. | ||
| + | |||
| + | [[..mulretval|Эта функция возвращает несколько значений.]] | ||
| + | |||
| + | **Пример** | ||
| + | |||
| + | < | ||
| + | RotateVector(x, | ||
| + | int newX = r1; | ||
| + | int newY = r2; | ||
| + | </ | ||
| + | |||
| + | ==== VectorToAngles ==== | ||
| + | '' | ||
| + | |||
| + | Конвертирует вектор в пару углов (рысканье и тангаж (поворот и наклон)), | ||
| + | |||
| + | [[..mulretval|Эта функция возвращает несколько значений.]] | ||
| + | |||
| + | **Пример** | ||
| + | |||
| + | < | ||
| + | // Заставляет игрока смотреть по вектору | ||
| + | VectorToAngles(1.0, | ||
| + | int angle = r1; | ||
| + | int pitch = r2; | ||
| + | SetActorAngle(angle); | ||
| + | SetActorPitch(pitch); | ||
| + | </ | ||