左手座標系和右手座標系詳解

左手座標系 vs 右手座標系

2d 座標系一般來說大家都有默認: x軸朝右,y軸朝向。

 

左手座標系

而對於三維座標系,一般有兩種習俗,左手座標系和右手座標系,它們的重點不是在於 z 軸標註的是哪根,而是三個方向的組合,比如之前的[從零開始計算機圖形學]系列一直用左手座標系,爲了作圖方便,我把 z 軸指向屏幕裏。

 

對應關係:

  • right - x指向
  • up - y指向
  • front - z指向

 

但是如果我們把手轉90°。這依舊是一個左手座標系。

 

 

右手座標系

右手座標系是這樣:

 

 

如果我們爲了作圖方便將 x軸 放到右邊, y軸 放到上邊,那麼 z軸的朝向:

 

跟左手座標系中 z軸朝向剛好相反。

叉乘

兩個三維中的向量叉乘有:

 

 

 

Maya 和 OPenGL 使用右手座標系, DirectX, pbrt, PRMan 使用左手座標系。

 


今天記錄一下一些基本的數學知識,左手座標系和右手座標系。這些對於搞圖像開發或者遊戲開發的朋友來說,應該是很基礎的東西,不過對於大部分人來說還是比較陌生的知識。之所以看這方面資料主要是因爲在使用Android Camera使用Matrix的過程中,發現需要一些數學理論支持才能理解。這是爲了後面使用Android Camera和Matrix的基礎。

 

1、空間直角座標系

  下面摘錄一段百科的解析,這些都是數學基礎。過空間定點O作三條互相垂直的數軸,它們都以O爲原點,具有相同的單位長度.這三條數軸分別稱爲X軸(橫軸).Y軸(縱軸).Z軸(豎軸),統稱爲座標軸。

  各軸之間的順序要求符合右手法則,即以右手握住Z軸,讓右手的四指從X軸的正向以90度的直角轉向Y軸的正向,這時大拇指所指的方向就是Z軸的正向.這樣的三個座標軸構成的座標系稱爲右手空間直角座標系.與之相對應的是左手空間直角座標系.一般在數學中更常用右手空間直角座標系,在其他學科方面因應用方便而異。三條座標軸中的任意兩條都可以確定一個平面,稱爲座標面.它們是:由X軸及Y軸所確定的XOY平面;由Y軸及Z軸所確定的YOZ平面;由X軸及Z軸所確定的XOZ平面.這三個相互垂直的座標面把空間分成八個部分,每一部分稱爲一個卦限.位於X,Y,Z軸的正半軸的卦限稱爲第一卦限,從第一卦限開始,在XOY平面上方的卦限,按逆時針方向依次稱爲第二,三,四卦限;第一,二,三,四卦限 下方的卦限依次稱爲第五,六,七,八卦限。

 

 

 

2、右手座標系

  右手座標系在我們以前初中高中學幾何的時候也經常用到。在三維座標系中,Z軸的正軸方向是根據右手定則確定的。右手定則也決定三維空間中任一座標軸的正旋轉方向。要標註X、Y和Z軸的正軸方向,就將右手背對着屏幕放置,拇指即指向X軸的正方向。伸出食指和中指,如右圖所示,食指指向Y軸的正方向,中指所指示的方向即是Z軸的正方向。要確定軸的正旋轉方向,如下圖所示,用右手的大拇指指向軸的正方向,彎曲手指。那麼手指所指示的方向即是軸的正旋轉方向。

 

3、左手座標系

  伸出左手,讓拇指和食指成“L”形,大拇指向右,食指向上。其餘的手指指向前方。這樣就建立了一個左手座標系。拇指、食指和其餘手指分別代表x,y,z軸的正方向。判斷方法:在空間直角座標系中,讓左手拇指指向x軸的正方向,食指指向y軸的正方向,如果中指能指向z軸的正方向,則稱這個座標系爲左手直角座標系.反之則是右手直角座標系。

 

 

 

4、左手座標系和右手座標系比較

  手座標系和右手座標系,左手座標系是X軸向右,Y軸向上,Z軸向前,右手座標系的Z軸正好相反,是指向“自己”的,在計算機中通常使用的是左手座標系,而數學中則通常使用右手座標系。計算機裏面其實很多也有用右手座標系,這個只是根據實際應用不同,沒有說哪個比較好。

 

 

5、結語

  今天主要是講講這兩個座標系和區分,因爲後面我會講解有關Android Camera使用Matrix進行滑動特效變換。裏面就好應用到很多座標系的轉換,所以腦袋裏面要先有這方面的概念,否則有關Matrix的轉換和圖像操作就不好理解了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章