在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
一、前言 画四边形基本上与前几遍文字代码是相同。区别在于glBegin()的参数“GL_QUADS”。绘制的框架代码可以使用 Delphi下OpenGL2d绘图(01)-初始化 中的代码。修改的部份为 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); // 绘制第一个多边形 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; 效果图如下: 源码下载:https://files.cnblogs.com/lin557/OpenGL_04.zip 2014-07-10 by lin |
2023-10-27
2022-08-15
2022-08-17
2022-09-23
2022-08-13
请发表评论