一、前言:
Delphi實作畫四邊形的方法基本上與前幾遍文字程式碼是相同的。其差異知識在於glBegin()的參數「GL_QUADS」。繪製的框架程式碼可以使用Delphi下OpenGL2d繪圖初始化中的程式碼,位址為//www.VeVB.COm/article/52141.htm。修改的部份為Draw 函數的內容。
二、畫四邊形方法:
使用GL_QUADS:繪製由四個頂點組成的一組單獨的四邊形。頂點4n-3、4n-2、4n-1和4n定義了第n個四邊形。總共繪製N/4個四邊形。這裡學畫四邊形是為了畫點陣圖做準備。
設定顏色:
glColor3f(1, 0.5, 0); 可設定四邊形的顏色,參數為三部份,分別為R、G、B的值,取得範圍為0到1,1表示255,0.5表128。這裡需要特別注意!
設定四邊形的點:
glVertex2f(nleft, ntop); nleft、ntop表示四邊形的點在視窗上的像素點位置。每個點的位置需依順時針或逆時針設定。
程式碼如下:
procedure TForm1.Draw;var l, t, w: Integer;begin // 清空緩衝區glClear(GL_COLOR_BUFFER_BIT or GL_DEPTH_BUFFER_BIT); // 設定四邊形的顏色glColor3f(1, 0.5, 0); // 繪製第一個多邊形:= 10; t := 10; w := 64; glBegin(GL_QUADS); glVertex2f(l, t); glVertex2f(l + w, t); glVertex2f(l + w, t + w); glVertex2f(l, t + w); glEnd(); // 繪製第二個多邊形l := 80; t := 10; glColor3f(0, 0.5, 0); glBegin(GL_QUADS); glVertex2f(l, t); glVertex2f(l + w, t + w); glVertex2f(l + w, t); glVertex2f(l, t + w); glEnd(); SwapBuffers( FDC); //交換雙緩衝區內容,這將把剛繪製的圖形翻印到螢幕上。 end;
完整程式碼點此下載