OpenGL 世界座標系

2021-09-21 00:21:41 字數 549 閱讀 6445

世界座標系

在opengl中,世界座標系是以螢幕中心為原點(0, 0, 0),且是始終不變的。你面對螢幕,你的右邊是x正軸,上面是y正軸,螢幕指向你的為z正軸。長度單位這樣來定:視窗範圍按此單位恰好是(-1,-1)到(1,1),即螢幕左下角座標為(-1,-1),右上角座標為(1,1)。這是採用了歸一化的結果

當前繪圖座標系

是繪製物體時的座標系。程式剛初始化時,世界座標系和當前繪圖座標系是重合的。當用gltranslatef(),glscalef(), glrotatef()等對當前繪圖座標系進行平移、伸縮、旋轉變換之後,世界座標系和當前繪圖座標系不再重合。注意,這裡的平移旋轉是將當前繪圖座標系看做乙個整體在世界座標系中進行旋轉平移。然後,改變以後,再用glvertex3f()等繪圖函式繪圖時,都是在當前繪圖座標系進行繪圖,所有的函式引數也都是相對當前繪圖座標系來講的。

規律:opengl使用右手座標

從左到右,x遞增

從下到上,y遞增

從遠到近,z遞增

注意設定光照位置的時候,一時把z軸從近到遠,認為是遞增的,把光源設在物體的後面了,導致物體是黑色的

OpenGL 座標系詳解

opengl最終將圖形渲染到的裝置螢幕本質上是2d的,我們對圖形進行渲染的過程就是將3d場景轉換為最終的2d場景的過程。opengl中定義的點從使用者構造模型的區域性座標系,經過模型變換轉為世界座標系,再經過視變換轉換為相機座標系,再經過投影變換轉換為裁剪座標系,再進行透視除法轉換為規範化裝置座標系...

OpenCV區域性座標系和世界座標系轉換

本文實現區域性座標系和世界座標系的轉換。假設機器在p1處在世界座標系下的位姿為 x,y,z,1,1,0,0 p1 和p2之間的轉換 區域性座標系 為t12表示為 1,1,0,45 求p2處世界座標系下的位姿 x,y,z,結果為 2,2,0,45 程式如下 include includeusing n...

螢幕座標到opengl世界座標轉換

很多人用opengl繪圖會遇到乙個問題即螢幕座標向opengl座標轉換,在網上流傳著如下類似的 glint viewport 4 gldouble modelview 16 gldouble projection 16 glfloat winx,winy,winz gldouble posx,pos...