OpenGL提供了十幾個(gè)三維實(shí)體模型的輔助庫(kù)函數(shù),這些函數(shù)在aux庫(kù)中,。常見(jiàn)的簡(jiǎn)單模型如球體,、立方體、圓柱體等都可以直接使用這些函數(shù)繪制,。但是,在雕銑機(jī)的應(yīng)用中出現(xiàn)的圖形一般比較復(fù)雜,因此本軟件中所有的模型都是通過(guò)組織一些小三角形和小矩形來(lái)形成的,。
確定實(shí)體的位置和尺寸
雕銑機(jī)加工中對(duì)實(shí)體要求有很強(qiáng)的位置關(guān)系,而且在仿真的動(dòng)畫(huà)過(guò)程中這些關(guān)系在不斷變化。OpenGL提供了一些可對(duì)物體進(jìn)行平移,、旋轉(zhuǎn)和縮放的函數(shù),如平移函數(shù)voidg-lTranslatef(GLfloatx,GLfloaty,GLfloatz),可以使物體沿X、Y,、Z軸任意平移,。采用正交投影變換,由函數(shù)voidglOrtho(GLdoubleleft,GLdoubleright,GLdoublebottom,GLdoubletop,GLdoublenear,GLdoublefar)來(lái)定義一個(gè)各面都為矩形的六面體。在程序中判斷加工坐標(biāo)的最大和最小值,根據(jù)視圖區(qū)的大小適當(dāng)縮放這些坐標(biāo)值,。