openGL几何变换与Windows屏幕坐标转换的研究.docVIP

openGL几何变换与Windows屏幕坐标转换的研究.doc

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
openGL几何变换与Windows屏幕坐标转换的研究   摘要:分析openGL三维图形显示流程,讨论其坐标变换过程,推导了openGL坐标与Windows屏幕坐标的转换关系,给出了在MFC下实现openGL图形编程的方法。   关键词:openGL;几何变换;坐标转换   中图分类号:TP391文献标识码:A文章编号:1009-3044(2008)34-1749-03   The Research of OpenGL Geometric Transformation and Conversion of the Windows Screen Coordinates   WENG Wei1,HUANG Cui-lan1,CAI Jian-li2   (1.Department of Computer Science and Technology, Xiamen University of Technology, Xiamen 361024, China; 2. Department of Automation, Xiamen University, Xiamen 361005, China)   Abstract: By analysing the processes of openGL 3D graphics and discussng its coordinate alternation process, the thises derives the transformation relationship between openGL coordinate and the Windows screen coordinate. Meanwhile it gives the openGL graphical programming approach under the platform of MFC.   Key words: openGL;geometric transform;coordinate transformations   1 引言   openGL(open graphics library,开放性图形库)是以SGI的GL三维图形库为基础制定的一个开放式三维图形库,目前得到了许多软硬件厂商的支持,是世界上最流行的图形API之一,已经成为一个工业标准。openGL独立于硬件设备,窗口系统和操作系统,可移植性高,主要有绘制模型、几何变换、光照处理、纹理映射、图像操作、动画等功能[1],已经在军事、航天、医学、虚拟现实等领域得到了广泛的应用[2]。   利用openGL进行三维图形绘制时,世界坐标系的三维物体位置坐标信息经过几何变换、投影变换、裁剪变换和视口变换这几个空间坐标变换过程变为屏幕坐标系的坐标。论文[3]分析了openGL常见坐标使用中的问题;论文[4]讨论了坐标变换相关的openGL API,但没有涉及几何变换的具体公式,亦没有研究openGL坐标和屏幕坐标的转换问题,不便于进行交互图形设计;论文[5]讨论了正投影和透视投影下openGL坐标和屏幕坐标的转换关系,但设定了判断条件,不具有一致性。   本文首先在世界坐标系下讨论了openGL的几何变换过程,然后推导了openGL坐标与Windows屏幕坐标的转换关系,最后给出了在MFC下实现openGL图形编程的方法。   2 openGL三维图形显示流程   绘制三维图形是一项复杂的任务,对于一个特定的图形,光照、材质、纹理等因素都会影响它的绘制,openGL采用状态机模型来控制这些非位置因素[6],由一系列的点所组成的图元受状态机控制以便形成真实感图形。openGL要将现实三维图形显示在二维屏幕上,关键是一系列的几何变换,包括平移、旋转、缩放、投影、裁剪和视口变换,基本过程如图1所示[7]。   2.1 三维几何变换   openGL中的世界坐标系x轴正方向水平向左,y轴正方向水平向上,z轴正方向垂直屏幕向外。三维几何变换均在世界坐标系中完成,openGL提供了几个API实现这些变换,相关函数原型如下:   1) 平移   glTranslate{fd}(TYPE x,TYPE y,TYPE z);   x,y,z为x轴、y轴和z轴方向上的平移量。   2) 旋转   glRotate{fd}(TYPE angle,TYPE x,TYPE y,TYPE z);   angle为旋转角度,后三个变量与原点的连线构成旋转轴。   3) 缩放   glScale{fd}(TYPE x,TYPE y,TYPE z)   该函数可以对物体沿x轴、y轴和z轴分别放大或缩小。   三维几何变换中还有一个视点变换,函

文档评论(0)

yingzhiguo + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:5243141323000000

1亿VIP精品文档

相关文档