談談座標系的變換

2022-01-29 09:17:13 字數 1828 閱讀 8586

座標系的變換分兩類:一類是座標系中,點的位置不變,變的只是座標的值,或者說改變的只是同乙個點在不同系下的描述;二類是點的座標值不改變,點的位置發生改變適應新的座標系,或者說相同的座標值在不同的座標系中有不同的幾何解釋,從而得到不同的位置。

我們討論的是前一種情況。

一)基底:

座標系最根本的是基底,點p的座標是(1,2,3)是什麼意義?

可能說:表示的是p在直角座標系中,在x軸上的投影為1,在y軸上的投影為2,在z軸上的投影為3。

對嗎?未必。

首先,我們討論的未必是直角座標系;

其次,所謂投影,一般是指作垂直的直線,這只有在直角座標系中才是這樣,在非直角座標系中,作垂直是沒有意義的,應該是「平行」。確定x軸上的分量要作與yoz平面平行的平面與x軸相交;

第三,在x軸上的分量未必為1,這只有在空間直角座標系中當向量op=i+2j+3k時才是這樣。

當向量op=i+2j+3k時,我們就叫點p的座標為(1,2,3),這裡的三個單位向量i,j,k就叫這個座標系的基底。

但是要注意,座標系的基底未必是向量i,j,k。

例:設有三個向量a,b,c,這三個向量未必是單位向量,也未必垂直,只是非常普通的三個向量,只要這三個向量非零且不共面,就可以作為基底,此時若向量op=a+2b+3c 則稱點p在以a,b,c為基底的系下的座標為(1,2,3)。

二)變換:

以向量i,j,k作為基底的座標系(稱原係)裡乙個點p(x1,y1,z1),即op=x1*i+y1*j+z1*k。  

設向量a=(xa,ya,za),即a=xa*i+ya*j+za*k;

向量b=(xb,yb,zb),即b=xb*i+yb*j+zb*k;

向量c=(xc ,yc,zc),即c=xc*i+yc*j+zc*k;

現以a,b,c為基底建立新系,則點p在新系下的座標為多少?

設在新系下的座標為(x2,y2,z2),則

向量op=x2*a+y2*b+z2*c

= x2*(xa*i+ya*j+za*k)+y2*(xb*i+yb*j+zb*k)+z2*(xc*i+yc*j+zc*k)

=(x2*xa+y2*xb+z2*xc)*i+(x2*ya+y2*yb+z2*yc)*j+(x2*za+y2*zb+z2*zc)*k

又op=x1*i+y1*j+z1*k,

所以x2*xa+y2*xb+z2*xc=x1

x2*ya+y2*yb+z2*yc=y1

x2*za+y2*zb+z2*zc=z1

寫成矩陣形式

顯然

同乙個點位置不變,在新舊座標系中有新舊兩個座標,這就是新舊兩座標的關係。

請再次回顧,並作觀察,新座標系的基底在原座標系中的座標為

向量a=(xa,ya,za);

向量b=(xb,yb,zb);

向量c=(xc ,yc,zc)。

三)應用:

在polt3d中,在計算計算隱藏線面時,在乙個x軸垂直電腦螢幕的座標系(以向量i,j,k為基底,稱game系)中計算,但在表現出來,即給使用者的感覺時,卻用的是斜二側畫法使用的座標系。

斜二測畫法的座標系(稱math系)基底為

向量a=

(1,-0.35355334,-0.35355334)

向量b=(0,1,0);

向量c=(0,0,1)。

在計算旋轉時,也要先放到math系,gametomath(p),再作旋**rotate(p),最後又回到game系:mathtogame(p)。

座標系變換與座標變換理解

在slam中經常用到空間點的座標變換。假設已獲得相機某一位置的位姿pose,pose包括相機座標系相對於世界座標系的旋轉r和平移t,此時若已知某點p在相機座標系下的座標為pc,計算點p在世界座標系下的座標pw,可使用 pw r pc t t pc 開始的時候我有這樣的疑問 t表示世界座標到相機座標系...

詳解座標系及座標變換 大地座標系(一)

以前讀大學的時候,沒有好好的把座標系學一下,到工作的時候才發現座標系是如此的重要。如果說資料是gis的血肉 那麼座標系就是gis的靈魂。離開這個靈魂gis就是乙個空殼,毫無意義。在gis中座標系被分為兩大類,大地座標系 地理座標系 和投影座標系。大地座標系屬於參心座標系,座標系中的點位於球面上,如w...

座標系與變換矩陣

1.世界座標系和模型幾何變換 settransform d3dts world,world 物體在圖形學中通常通過乙個4x4矩陣來表示三圍物體的空間幾何變換,表示三圍物體在世界空間中集合變換的矩陣稱為世界變換矩陣,簡稱世界矩陣,在direct3d中通過為direct3d裝置介面設定世界矩陣完成其模型...