以文本方式查看主题 - 计算机科学论坛 (http://bbs.xml.org.cn/index.asp) -- 『 C/C++编程思想 』 (http://bbs.xml.org.cn/list.asp?boardid=61) ---- 浮动窗体中的OpenGL多视图的实现 (http://bbs.xml.org.cn/dispbbs.asp?boardid=61&rootid=&id=87407) |
-- 作者:葛靖青001 -- 发布时间:11/2/2010 11:09:00 AM -- 浮动窗体中的OpenGL多视图的实现 【转自互联网】 由于在工作中需要结合浮动窗体实现OpenGL的多视图,用于得到三维实体的三视图观察效果,通过参考其它资料,设计了一个程序框架,在此基础之上大家可以根据自己的需要进行扩充,实现需要的功能。 本程序中浮动窗体的实现从以下网站得到支持:www.datamekanix.com 程序实现效果图 一、OpenGL多视图的实现 平常我们的程序大部分都是建立一OpenGL设备上下文,但在本程序中,由于要实现三维实体的多视图观察功能,因此,需要建立多OpenGL设备上下文,并在需要的时候进行切换。 //add in the header file of view class 接着在某个视图需要更新的时候(一般在每个视图的OnDraw()函数中),将这个视图的设备上下文设为OpenGL当前的渲染上下文(OpenGL Rendering context)//add in the OnDraw() function of view class 由于同一视图在不同的时刻根据用户的需要可能有不同的功能,因此需要在几个视图之间进行功能的切换。本程序选取一个视图作为主视图,而另外两个视图作为子视图。视图的类有一下几种:上、下视图,前、后视图,左、右视图。为此设计了枚举类型变量用于指示视图的类型。为了保证不同视图类型之间的有效切换,即不会产生重复的类型,设计了一个类用于操作视图之间的类型切换。 //the definition of AssignViewID() //the definition of AddMetoDoc() |
-- 作者:卷积内核 -- 发布时间:11/2/2010 2:16:00 PM -- 不錯,支持一下。。。 |
W 3 C h i n a ( since 2003 ) 旗 下 站 点 苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》 |
39.063ms |