如何在window下面使用OpenGL作图-续GDI作图

原创 2004年09月19日 22:28:00

如何在window下面使用OpenGL作图

1.先设置显示设备DC的位图格式(PIXELFORMAT)属性.
 方法:填充(PIXELFORMATDESCRIPTOR)的结构//该结构决定了OpenGL作图的物理设备属性
 

比如:该结构中的dwFlags中PFD_DOUBLEBUFFER位如果没有被设置(置一),通过该设备的DC上作图的OpenGL的命令就不可能使用双缓冲来做动画.
注意:有些位图格式(PIXELFORMAT)是DC支持的,而有些DC就不支持了.
所以:程序必须先用ChoosePixelFormat来选择DC所支持的与指定的位图格式最接近的位图格式.
然后用SetPixelFormat设置DC的位图格式.

2.利用刚才的设备DC建立渲染上下文RC(),使得RC与DC建立联系
 方法:用wglCreateContext在设备DC建立渲染上下文RC;用wglMakeCurrent使得RC与DC建立联系

3.调用OpenGL函数作图.由于线程与RC一一对应,OpenGL函数中的参数中都不指明本线程RC的句柄
 方法:用OpenGL函数就够了

4.作图完毕后先通过设置当前线程的RC为NULL(方法::wglMakeCurrent(NULL,NULL);)断开当前线程和该渲染上下文的联系,由此断开与设备DC的联系.

注意:由于此时的RC句柄的有效性在微软自己的文档中并没有讲清楚,所以在后面的删除RC的时候要先判断RC的有效性(if(hRC)  wglDeleteContext(hRC);)
在根据情况释放(ReleaseDC)或者删除(DeleteDC)设备DC

OpenGL顶点数组

OpenGL中,如果要绘制图元,一般来说会使用 glVertex3f。 但是,如果顶点数太多,这种方法需要频繁调用函数,效率太低。这就要用到顶点数组。...
  • lzhlzz
  • lzhlzz
  • 2015年06月19日 13:13
  • 1791

UML建模之协作图

概述 协作图是一种交互图,强调的是发送和接收消息的对象之间的组织结构,使用协作图来说明系统的动态情况。 协作图主要描述协作对象间的交互和链接,显示对象、对象间的链接以及对象间如何发送消息。 协作图可以...
  • zhurui536
  • zhurui536
  • 2013年09月27日 08:28
  • 1020

UML图之协作图

创建方法:     1,new----collaboration diagram     2,根据序列图按F5转换
  • superl1216658891
  • superl1216658891
  • 2014年07月03日 16:50
  • 1830

UML交互图(序列图&协作图)

导语:         交互图是一个统称,它是用来描述对象之间的相互作用关系的,包括顺序图和协作图。从本质来讲,顺序图和协作图的作用是相同的,只不过他们两者的侧重点不同。顺序图更加侧重对消息的描述,...
  • sky15732625340
  • sky15732625340
  • 2015年12月17日 18:13
  • 1006

UML详解之五——顺序图和协作图

序列图(时序图)和协作图属于交互图。时序图(面向时间的) 时序图用于描述对象之间的传递消息的时间顺序, 即用例中的行为顺序.当执行一个用例时, 时序图中的每条消息对应了一个类操作或者引起转换的触发事...
  • xx326664162
  • xx326664162
  • 2016年03月09日 11:06
  • 2641

UML简单介绍(十一)——协作图的概念与实例完全解析

1、协作图         协作图是一种与时序图语意类似的图形,换句话说,它能表示的意思,使用时序图都能表示。他们不同的地方在于,时序图重在表示时间的顺序关系,而协作图重在表现对象之间的变化关系。 ...
  • ljtyzhr
  • ljtyzhr
  • 2015年06月04日 20:59
  • 999

UML总结—时序图(Sequence Diagram)和协作图(Collaboration Diagram)

一、时序图      时序图是一种强调时间顺序的交互图,在时序图中,首先把参与交互的对象放在图的上方,沿X轴方向排列。通常把发起交互的对象放在左边,较下级对象依次放在右边,然后把这些对象发送和接...
  • u011676589
  • u011676589
  • 2013年10月10日 08:52
  • 1430

uml 9种图之协作图

协作图(Collaboration Diagram /Communication Diagram,也叫合作图)是另一种交互图(interaction diagram)。它强调的是对象之间的交互关系。...
  • xdd19910505
  • xdd19910505
  • 2014年02月05日 20:35
  • 2039

浅谈UML学习笔记动态模型之序列图、协作图

1、序列图        序列图和协作图都是交互图,彼此等价,可以相互转化。序列图是对对象之间传送消息的时间顺序的可视化表示。序列图用于表现交互,侧重于强调时间顺序。        序列图将交互关系表...
  • jiuqiyuliang
  • jiuqiyuliang
  • 2013年02月05日 20:41
  • 12457

垂直领域的在线作图工具:那些可以替代Visio的应用!

9款国内外垂直领域的在线作图工具:那些可以替代Visio的应用! 发表于18小时前|1517次阅读| 来源CSDN|1 条评论| 作者钱曙光 协作工具应用云计算SaaS 摘要:现在越来越...
  • zhangqipu000
  • zhangqipu000
  • 2015年02月13日 09:24
  • 997
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:如何在window下面使用OpenGL作图-续GDI作图
举报原因:
原因补充:

(最多只允许输入30个字)