Подключиться через MCP →

Введите расчет

Задайте до трёх шагов поворота, выполняемых по порядку (сначала шаг 1). Ось: X, Y или Z. Чтобы пропустить шаг, оставьте угол пустым или поставьте 0.

Математическая формула

Реклама

Результатов

Координаты после поворота
( 0, 1, 1 )
точка (x, y, z) после поворота
x после поворота 0
y после поворота 1
z после поворота 1

Что делает этот калькулятор

Калькулятор поворота 3D-координат находит новое положение точки в трёхмерном пространстве после её поворота вокруг осей X, Y и (или) Z. Он работает в правосторонней системе координат и использует знаковое соглашение по правилу правой руки: положительный угол поворачивает точку против часовой стрелки, если смотреть со стороны положительного конца оси вращения в направлении начала координат. Это чистая аналитическая геометрия, которая применима везде — в физике, робототехнике, компьютерной графике, САПР и инженерных расчётах.

Трёхмерные оси координат с точкой и дугой её поворота вокруг оси Z
Точка в трёхмерном пространстве, повёрнутая вокруг оси Z по правилу правой руки.

Как пользоваться

Введите исходные координаты точки (начальные x, y, z). Выберите, в чём заданы углы — в градусах или радианах. Затем задайте до трёх шагов поворота, у каждого из которых есть своя ось и угол. Шаги выполняются по порядку: шаг 1 действует на исходную точку, шаг 2 — на результат шага 1 и так далее. Чтобы пропустить шаг, оставьте поле угла пустым или поставьте 0. Для одного поворота достаточно заполнить только шаг 1.

Разбор формулы

Для каждого шага обозначим угол в радианах через \(\theta\), а также \(c = \cos\theta\) и \(s = \sin\theta\). Поворот вокруг оси Z оставляет \(z\) неизменной и переводит \((x, y)\) в \((x\cdot c - y\cdot s,\; x\cdot s + y\cdot c)\):

$$R_z(\theta) = \begin{bmatrix} \cos\theta & -\sin\theta & 0 \\ \sin\theta & \cos\theta & 0 \\ 0 & 0 & 1 \end{bmatrix}$$

Поворот вокруг X не меняет \(x\), поворот вокруг Y не меняет \(y\) — в каждом случае две оставшиеся координаты смешиваются по тому же принципу.

$$\begin{aligned} x^{\prime} &= x \\ y^{\prime} &= y\cos\theta - z\sin\theta \\ z^{\prime} &= y\sin\theta + z\cos\theta \end{aligned}$$$$\begin{aligned} x^{\prime} &= x\cos\theta + z\sin\theta,\; y^{\prime}=y,\; z^{\prime}=-x\sin\theta + z\cos\theta \\ x^{\prime} &= x\cos\theta - y\sin\theta,\; y^{\prime}=x\sin\theta + y\cos\theta,\; z^{\prime}=z \end{aligned}$$

Композиция нескольких поворотов равносильна перемножению их матриц поворота, но применение их к вектору шаг за шагом избавляет от ошибок в порядке действий.

Реклама
Правило правой руки: большой палец вдоль оси, пальцы загибаются в направлении вращения
Правило правой руки: большой палец указывает вдоль положительной оси, остальные пальцы загибаются в сторону положительного вращения.

Пример расчёта

Возьмём точку \((1, 0, 1)\) и повернём её на \(90°\) вокруг оси Z. Здесь \(\theta = \pi/2\), поэтому \(c = 0\) и \(s = 1\). Тогда

$$x' = 1\cdot 0 - 0\cdot 1 = 0,\quad y' = 1\cdot 1 + 0\cdot 0 = 1$$

а \(z'\) остаётся равной \(1\). Результат — \((0, 1, 1)\).

Частые вопросы

Какое направление поворота считается положительным? Положительное направление — против часовой стрелки, если смотреть со стороны положительной полуоси в сторону начала координат (правило правой руки).

Важен ли порядок поворотов? Да. Повороты в 3D не коммутативны, поэтому поворот сначала вокруг X, а затем вокруг Z в общем случае отличается от поворота сначала вокруг Z, а потом вокруг X. Этот инструмент всегда выполняет шаг 1 первым.

Почему иногда выводится 0 вместо очень маленького числа? Такие значения, как \(\cos(90°)\), в формате с плавающей точкой не равны строго нулю, поэтому близкие к нулю результаты округляются до 0 для наглядности.

Реклама

Часто используемые углы поворота

Элементы любой матрицы поворота зависят только от \(\cos\theta\) и \(\sin\theta\). В таблице приведены точные значения для наиболее распространённых углов, которые вы можете подставить непосредственно в \(R_X\), \(R_Y\) или \(R_Z\). Десятичные приближения показаны до четырёх знаков.

\(\theta\) (град) \(\theta\) (рад) \(\cos\theta\) \(\sin\theta\)
0 1 0
30° \(\pi/6\) \(\tfrac{\sqrt3}{2}\approx0.8660\) \(\tfrac12=0.5\)
45° \(\pi/4\) \(\tfrac{\sqrt2}{2}\approx0.7071\) \(\tfrac{\sqrt2}{2}\approx0.7071\)
60° \(\pi/3\) \(\tfrac12=0.5\) \(\tfrac{\sqrt3}{2}\approx0.8660\)
90° \(\pi/2\) 0 1
180° \(\pi\) −1 0
270° \(3\pi/2\) 0 −1

Заметьте, что поворот на \(180^\circ\) меняет знак двух координат, перпендикулярных оси, в то время как \(270^\circ\) эквивалентно \(-90^\circ\) (четверть оборота в направлении по часовой стрелке при взгляде с положительного конца оси).

Ключевые термины и переменные

Правая система координат
3D система отсчёта, в которой оси X, Y и Z ориентированы так, что если направить пальцы правой руки от +X к +Y, то большой палец будет указывать вдоль +Z. Это стандартное математическое и физическое соглашение; матрицы поворота предполагают её.
Правило правой руки
Мнемоническое правило для положительного направления поворота: направьте большой палец правой руки вдоль положительной оси вращения, и загибание пальцев покажет положительное (против часовой стрелки) направление вращения для этой оси.
Матрица поворота
Ортогональная матрица \(3\times3\) с определителем \(+1\), которая поворачивает векторы вокруг фиксированной оси, не изменяя их длину. Здесь \(R_X\), \(R_Y\) и \(R_Z\) поворачивают вокруг осей X, Y и Z соответственно.
\(\theta\) (тета), угол поворота
Величина поворота вокруг выбранной оси. Вводится в градусах или радианах; инструмент конвертирует градусы внутренне с помощью \(\theta_{\text{рад}} = \theta_{\text{град}}\cdot\pi/180\) перед вычислением \(\cos\theta\) и \(\sin\theta\).
Ось вращения
Фиксированная линия (X, Y или Z), точки на которой остаются неизменными, в то время как всё остальное вращается вокруг неё. В этом инструменте ось каждого шага выбирается как 0 = X, 1 = Y, 2 = Z.
Положительное / направление против часовой стрелки
Положительный угол создаёт вращение против часовой стрелки при взгляде с положительного конца оси на начало координат. Отрицательный угол меняет это на обратное (по часовой стрелке).
Выходные координаты \(x'\), \(y'\), \(z'\)
Компоненты повёрнутой точки \(\mathbf{p}' = R\,\mathbf{p}\). При одном или нескольких последовательных поворотах \(\mathbf{p}' = R_{a_3}(\theta_3)\,R_{a_2}(\theta_2)\,R_{a_1}(\theta_1)\,\mathbf{p}\), где матрица справа применяется первой.
Последнее обновление: