通常的OpenGL程序,都是基于一下不断循环进行Render,来实现场景和模型的显示
和渲染,比较适合于游戏等编程模式。而如果要在一个交互的基于OpenGL显示的程序中
使用OpenGL,则必须采用通常GUI的开发模式,在需要绘制的时候,使用OpenGL的功能
进行图元绘制。例如,CAD程序中,创建一条曲线,则需要程序能够很好的控制何时绘制
曲线,如果再采用循环不断的渲染模式,则可能导致效率降低,因此循环render模式不
适用于交互程序。
学习OpenCascade显示模块,其内部基于OpenGL实现。包含一个图形显示数据管理
,记录了所有要显示的图形数据,再必要的时候调用Redraw函数将全部数据使用OpenGL
功能进行绘制。例如,在MFC的OnDraw中进行绘制。
仿照其功能,将OpenGL集成到了MFC的文档/视结构的程序中,创建了一个简单的模
型管理功能,将要显示的数据添加到模型中,在OnDraw中使用OpenGl功能绘制所有数据
。
实现功能很简单,实现也很简单,只是将NeHe第二课的内容重新进行了组织,实现了绘制三角形的功能。
程序只是一个最简单的实现。还可以在后续添加很多的处理,例如:灯光等。准备后续继续完善,并通过该程序,进一步深入学习OpenGL。
程序上传到:
http://download.csdn.net/source/1422557下。