Delphi下OpenGL2d畫圖之畫四邊形的辦法。本站提示廣大學習愛好者:(Delphi下OpenGL2d畫圖之畫四邊形的辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是Delphi下OpenGL2d畫圖之畫四邊形的辦法正文
1、媒介:
Delphi完成畫四邊形的辦法根本上與前幾遍文字代碼是雷同的。其差別常識在於glBegin()的參數“GL_QUADS”。繪制的框架代碼可使用Delphi下OpenGL2d畫圖初始化中的代碼,地址為http://www.jb51.net/article/52141.htm。修正的部分為 Draw 函數的內容。
2、畫四邊形辦法:
應用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); // 繪制第一個多邊形 l := 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;
完全代碼點此下載