通过MCP连接 →

输入计算

最多可设定三个旋转步骤,按顺序依次执行(先执行第 1 步)。旋转轴可选 X、Y 或 Z。把角度留空或填 0 即可跳过该步骤。

数学公式

广告

结果

旋转后的坐标
( 0, 1, 1 )
旋转后的点 (x, y, z)
旋转后的 x 0
旋转后的 y 1
旋转后的 z 1

这个计算器有什么用

三维坐标旋转计算器能算出一个点在三维空间中绕 X、Y 或 Z 轴旋转之后的新位置。它采用右手坐标系和右手定则的符号约定:当你沿旋转轴正方向朝原点看过去时,正角度表示该点逆时针旋转。这属于纯粹的解析几何,应用范围极广——物理、机器人、计算机图形学、CAD 以及各类工程领域都用得上。

带有一点及其绕 Z 轴旋转弧的三维坐标轴
按右手定则绕 Z 轴旋转的三维空间中的一点。

使用方法

先输入点的初始坐标(初始 x、y、z)。再选择角度单位是度还是弧度。然后最多可以设定三个旋转步骤,每一步都指定一个旋转轴和一个角度。各步骤按顺序依次执行:第 1 步作用于原始点,第 2 步作用于第 1 步的结果,以此类推。把某一步的角度留空或填 0,即可跳过该步骤。如果只需旋转一次,填好第 1 步即可。

公式详解

绕 Z 轴旋转的旋转矩阵为:

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

对每一步,设 \(\theta\) 为弧度制角度,令 \(c = \cos\theta\)、\(s = \sin\theta\)。绕 Z 轴旋转时 \(z\) 保持不变,\((x, y)\) 映射为 \((x\cdot c - y\cdot s,\ x\cdot s + y\cdot c)\)。绕 X 轴旋转时 \(x\) 不变,绕 Y 轴旋转时 \(y\) 不变,另外两个坐标同样按这一规律相互混合。把多次旋转组合起来,等价于把它们的旋转矩阵相乘;不过逐步作用于向量,可以避免搞错先后顺序。

Advertisement
展示拇指沿轴、其余手指沿旋转方向弯曲的右手定则
右手定则:拇指指向轴的正方向,其余手指沿正旋转方向弯曲。

实例演算

取点 \((1, 0, 1)\),让它绕 Z 轴旋转 90°。此时 \(\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)\)。

常见旋转角度值

每个旋转矩阵的元素仅取决于 \(\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\)(当沿正轴向下看时的四分之一圈顺时针旋转)。

Advertisement

关键术语与变量

右手坐标系
一个三维框架,其中 X、Y 和 Z 轴的方向使得右手的手指从 +X 指向 +Y 时,大拇指指向 +Z 方向。这是标准的数学和物理约定;这些旋转矩阵假设采用这一约定。
右手法则
旋转正方向的记忆法:将右手的大拇指沿着旋转轴的正方向指向,手指的弯曲方向给出该轴旋转的正(逆时针)方向。
旋转矩阵
一个 \(3\times3\) 的正交矩阵,其行列式为 \(+1\),它绕固定轴旋转向量而不改变其长度。这里 \(R_X\)、\(R_Y\) 和 \(R_Z\) 分别绕 X、Y 和 Z 轴旋转。
\(\theta\) (θ),旋转角
绕所选轴的旋转量。以度数或弧度输入;工具在计算 \(\cos\theta\) 和 \(\sin\theta\) 之前使用 \(\theta_{\text{弧度}} = \theta_{\text{度数}}\cdot\pi/180\) 在内部转换度数。
旋转轴
固定的线(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}\),其中最右边的矩阵首先应用。

常见问题

正向旋转是哪个方向?正向指的是当你从旋转轴正方向朝原点看时的逆时针方向(即右手定则)。

旋转的先后顺序重要吗?重要。三维旋转不满足交换律,所以先绕 X 再绕 Z,通常和先绕 Z 再绕 X 结果不同。本工具会先执行第 1 步。

为什么有些结果显示为 0,而不是一个很小的数?在浮点运算中,\(\cos(90°)\) 这类值并不会严格等于 0,因此为了便于阅读,接近零的结果会被处理成 0。

最后更新: