如何在vc++中用mfc进行opengl编程

如何在vc++中用mfc进行opengl编程

ID:3902627

大小:327.58 KB

页数:5页

时间:2017-11-25

如何在vc++中用mfc进行opengl编程_第1页
如何在vc++中用mfc进行opengl编程_第2页
如何在vc++中用mfc进行opengl编程_第3页
如何在vc++中用mfc进行opengl编程_第4页
如何在vc++中用mfc进行opengl编程_第5页
资源描述:

《如何在vc++中用mfc进行opengl编程》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、万方数据第21卷第8期计算机应用V01.21.No.82001年8月C0mputerApplic砒ionsAug.,2001———————————————————————————————————————————————————————————一一_文章编号:1001—9081(2001)08—0087一03如何在VC++中用MFC进行OpenGL编程胡伟,王弘(华中科技大学动力工程系,湖北武汉430074)摘要:介绍了OpenGL的基本概念及其基本程序结构,通过对用标准C和用MFC这两种方法进行OpenGL编程的相通点的分析

2、,详细叙述了如何在VC++中用MFC编写openGL程序的一般过程。关键词:OpenGL;MFC;设备描述表(DC);绘制描述表(RC)中图分类号:哪!1.73文献标识码:A1简介随着三维图形的应用越来越广泛,计算机图形学的发展也越来越迅速,各种图形应用软件也就随之应运而生。OpenGL(()penGI印Ilicubrary,开放性图形库)是目前比较完善的三维图形标准,已被广泛的用于可视化技术、实体造型、c^D/cAM、模拟仿真等诸多领域。0penGL作为一种硬件图形的软件接口,其优点是作为一个独立的工作平台,独立于硬件设备

3、、窗口系统和操作系统,用它编写的软件可以在u面x、windows950sR2、Windows98/NT/2000等系统间移植。openGL编程类似于c编程,实际接口就是c,所以市面上的很多有关()penGL的书中的程序都是使用标准c(或是WiIl32ConsoleAppuc撕0n)调用0penGL函数实现的。这样做,只是为了使读者尽快地掌握OpenGL的基本操作。但是,0pencL仅仅是一个包含120多个图形函数的图形库,并没有窗口函数(尽管0penGL的辅助库提供了一些窗口和事件管理的函数,但是这些函数在实际应用中是远远不

4、够的。),它缺乏面向对象能力,不符合当前流行的软件设计思想。因此我们需要借助一个“窗口”系统来完成0p朗GL三维图形的制作。Vc++中的MFC包含了强大的基于Wi抵的应用框架,提供了丰富的窗口和事件管理函数,已经成为当前一种比较流行的工作平台。于是我们可以使用Ⅻ陀调用Ope以L函数来实现三维图形的制作。2OpenGL的基本程序结构2.1定义窗口即定义所制作的三维图形在Windows屏幕坐标系中的显示位置,定义所显示图形窗口的大小、窗口的性质。2.2初始化包括初始化一些基本操作,如清缓存区(bu&r)、定义光照模型、定义纹理映

5、射、安装显示列表、定义雾等基本操作的初始化状态、设置三维视景体、定义视口。总之,是为下一步的0penGL图形显示作准备,初始化0penGL的状态变量,使显示三维0penGL图形更方便,节省显示图形的时间。2.3绘制和显示图形按照应用的具体要求,绘制和显示三维图形包括建立三维模型、设置物体在立体空间的运动轨迹、变更0penGL的状态变量、协调合理地结合运用0penGL各基本操作、实现完美的三维图形显示。例1.1用一个简单的例子(标准c编写)来说明0penGL的程序结构。例1.1OpenGL例程姗ple.e#include<衍n

6、daw.h>#include#indude}}indude#irlclllde<吼dio.h>voidⅡlyi撕t(void);void(:AIIBACK硼yReshape(GL8izeiw,Glsizeih);voidcAIIBAcKdisplay(void);/*Ini6alize枷出IsingforRGBAn10de,incl础ngalpllablendiTIg,him,锄dlinewi拙.*/砌dnlyiIIit(void){daearColor(O.O,O.

7、0,O.O,0.O);//将窗口清为黑色)/*disp:Iay()幽n幅蚰octahedlDnwitllalarge8lphavalue,1.O.*/void(:AIIBACKdi8play(void){出Qear(GLCOLOR_BImR—Brr);//将当前颜色缓存清为窗口的颜色西Colo—f(O.2,0.6,1.0,1.0);//设置颜色蝴ef(60.O.1.0,1.O,1.0);//设置坐标a政ⅣiIeCube(1.0);//绘制立方体棚ush();//强制绘图完成1收稿日期:2001一02—28作者简介:胡伟(19

8、76一),男,硕士研究生,主要研究方向:CAD、图形学应用;王弘(1948一).男,副教授,主要研究方向:cJMs系统规划及应用研究.万方数据88计算机应用2001年———————————————————————————~——————————————————————————————————

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。