• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Delphi下OpenGL2d绘图(04)-画四边形

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

一、前言

画四边形基本上与前几遍文字代码是相同。区别在于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


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
delphi 程 序从exe运行改成dll库发布时间:2022-07-18
下一篇:
如何用Delphi开发网游外挂发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap