首页 > 代码库 > 关于三维坐标系基本概念的一些另类理解

关于三维坐标系基本概念的一些另类理解

先给一些教科书上的概念

概念1:左手坐标系和右手坐标系

三维坐标系分两种,左手坐标系和右手坐标系。下面就是这两个坐标系的规则示意图(图中固定了x轴的正方向向右,y轴的正方向向上):

技术分享

例:

OpenGL是右手坐标系,原点在左下角,向右为x轴正方向,向上为y轴正方向,z轴正方向为屏幕朝人眼的方向——高中数学教科书上的坐标系就是这种坐标系。

iOS的UIKit是左手坐标系,原点在左上角,向右为x轴正方向,向下为y轴正方向,z轴正方向为屏幕朝人眼的方向


概念2:旋转正方向

对左手坐标系,确定一个旋转轴后,左手握住拳头,拇指指向旋转轴的正方向,四指弯曲的方向为旋转的正方向。相应地,右手坐标系就用右手来判定。

技术分享

这是有用处的,确定了旋转的正方向后,在公式计算中就很容易知道是该使用正角度还是负角度了。

我的理解

对于这两个概念,我觉得还是很烦的,不够直观,需要拿出手来进行比划才行。在日常生活中,我们判断左右方向根本不需要拿出手来比划,如果对这两个概念的理解就像我们判断左右方向一样直观,不是很好吗?下面我就做了一些自己的理解,或者说是一种巧记吧。

低轴和高轴的概念

三维坐标系有三个轴,分别为X轴、Y轴、Z轴,定义这三个轴从左到右的属性为从低到高。

X轴与Y轴中,X轴为低轴,Y轴为高轴;Y轴与Z轴中,Y轴为低轴,Z轴为高轴。

比较特殊的是X轴和Z轴,定义Z轴为低轴,X轴为高轴。

所以,实际上是:按X-->Y-->Z->X方向的相邻两个轴,其左边为低轴,右边为高轴

左手坐标系和右手坐标系的判断

一个人站立,以脚为原点,以人体从脚到头为高轴正方向,以人眼前方为低轴正方向(可以形象地理解成高轴踩着低轴),若第三轴正方向在人的右方,即为右手坐标系;在人的左边,即为左手坐标系。

例:

Y轴踩着X轴,Z轴正方向在右边,就是右手坐标系,Z轴正方向在左边,就是左手坐标系。

Z轴踩着Y轴,X轴正方向在右边,就是右手坐标系,X轴正方向在左边,就是左手坐标系。

X轴踩着Z轴,Y轴正方向在右边,就是右手坐标系,X轴正方向在左边,就是左手坐标系。

Note: 以后判断是左手坐标系还是右边坐标系时,任选两个轴,分辨出高轴与低轴,再根据另一条在左边还是右边,就可以判断出是左手坐标系还是右边坐标系了。

旋转正方向的判断

围绕某一条轴旋转,其旋转的正方向为另两条轴中的低轴正方向顶点指向高轴正方向顶点的方向,不论是左手坐标系还是右手坐标系。

?对2D平面坐标系来说也是如此。

Note: 很简单吧,再也不用拿出手来比划了。


关于三维坐标系基本概念的一些另类理解