自製3D顯示引擎九 三維空間的顯示區域

2021-07-26 09:38:37 字數 498 閱讀 7277

在三維空間裡觀察物體,需要乙個攝像機,和乙個處於顯示區域裡的物體。

攝像機的問題,以後會講。現在先講一下顯示區域。

空間座標系有兩種,左手座標系和右手座標系,在這裡,我習慣使用左手座標系。

顯示區域是乙個六面體,有著前後上下左右六個面,

在這裡需要判斷點與面的關係,所以需要知道最後顯示的螢幕大小,根據這個資料才能得到面的方程與點與面的關係。

平面的標準方程為ax+by+cz+d=0,計算方法是得到構成平面的、不在一條直線上的三個點,以此得到三個方程,通過行列式的方法快速求解。

自製3D顯示引擎八 矩形視窗裁剪

只講原理,需要自己構思 設計,這種演算法只有自己寫出來才能真正的記在腦子裡。正方形區域為顯示區域,該三角形為經典的多次裁剪三角形。三角形與顯示區域的相交情況有好幾種 三角形全部在顯示區域內 外,部分在顯示區域內 三角形的邊框並沒有和顯示框相交,卻有顯示部分。網上也有一些相關的演算法,但是總結的不是很...

自製3D顯示引擎(八)矩形視窗裁剪

自製3d顯示引擎 八 矩形視窗裁剪 只講原理,需要自己構思 設計,這種演算法只有自己寫出來才能真正的記在腦子裡。正方形區域為顯示區域,該三角形為經典的多次裁剪三角形。三角形與顯示區域的相交情況有好幾種 三角形全部在顯示區域內 外,部分在顯示區域內 三角形的邊框並沒有和顯示框相交,卻有顯示部分。網上也...

三維幾何基礎(3D?)

二維幾何我們多少有了一點了解,今天又是周天,於是又開始知識普及了。二維幾何中的很多操作也都適合三維幾何,比如點 向量 點,向量 向量 向量,等等 struct node node operator const node a,const node b node operator const node ...