第三章 机械手的几何建模与视景生成.docVIP

第三章 机械手的几何建模与视景生成.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第三章 机械手的几何建模与视景生成

第三章 机械手的几何建模与视景生成 机械手模型可以用基本的图元来表示,图元包括点、线、面、图象等。由点、线、面及其表示的几何图形如多边形、球面、柱面绘制出模型的轮廓与形状,如果需要更加逼真的效果,可以采取贴图象的方法。 机械手的几何模型采用分层结构,也就是把模型分为各个关节子对象,分别用OpenGL图形库绘制出来,并用它们之间的连接来表达整个模型,这样就可以计算生成不同的姿态与动作。各关节的连接通过坐标变换来实现,关节绘制在相应的坐标系中,并可以绕相应坐标系z轴转动。机械手坐标系的建立采用D-H矩阵法,并用OpenGL的变换来实现。 要生成真实的视景,还需进行视点变换、消隐、光照与材质等处理。计算机绘制物体时,必须把三维信息经过某种变换,在二维显示表面上绘制出来。由于投影变换失去深度信息,因此需要进行消隐处理。三维物体在经过消隐后,就应该计算场景中可见面的颜色,以最终确定在显示表面上所需要显示的每个像素的颜色。可见面的颜色是光照与材质共同作用的结果,恰当的光照模型与合适的材质能够使场景看起来更加真实。经过这些处理后,就能够模拟出一个真实世界中的物体。 §3.1 OpenGL简介 生成真实感图形需要较深的数学知识(三角学、线性代数、微分几何等),今天的许多三维图形开发工具已经隐藏了这些细节,使编程人员只需要考虑怎样创作自己的图形,给编程人员带来了极大的方便。OpenGL就是这样的一个开发工具。 OpenGL最初是由SGI公司为其图形工作站开发的可以独立于窗口系统、操作系统和硬件环境的图形开发环境,但随着它的广泛应用,OpenGL已逐渐成为一种图形工业标准。作为图形硬件的软件接口,它由上百个函数组成,用来生成交互式的三维图形应用。 OpenGL的功能可以归纳为以下几个方面: 绘制三维物体 OpenGL并不提供绘制三维实体模型的高级命令,复杂实体模型只能由几何图元--点、线、面来构造。OpenGL以顶点为基础,由点构成线,由线及其拓扑结构构成多边形。应用点、线、多边形等基本几何图形可以绘制出任何用户想要绘制的三维物体。图形的控制由相应的矩阵变换命令完成,这些变换命令包括平移、旋转等,经过变换使各个部分的图形绘制在相应的位置。 观察物体 一旦完成了对场景中物体的绘制,就可以设定观察物体的视点,指定观察方向、角度及观察范围大小。不仅如此,还可以通过各种变换,观察场景中物体的各个侧面,对物体进行放大、缩小处理等。 指定颜色模式 OpenGL应用专门的函数和结构来指定颜色模式。OpenGL有两种可选颜色模式:RGBA模式和颜色索引模式。在RGBA模式中,颜色用红、绿、兰三种颜色的值来描述。在颜色索引模式中,颜色由颜色索引表中的索引值来确定。 指定光照模型与材质   用OpenGL绘制的物体可以加上光照处理,以使其更接近于真实世界。OpenGL提供四种光,即辐射光、环境光、镜面光、漫反射光。可以指定光的颜色、光源位置等相关参数。物体的光照效果还与物体的材质有关,OpenGL可以对物体的材质进行定义,说明它们对光的反射特性。 动画生成   为了生成平滑的动画,动态场景在被传递到屏幕之前,需要在内存中先建立帧。OpenGL采用双缓存技术,一个缓存总是用作显示(前缓冲区) ,另一缓存是隐藏的(后缓冲区) 。我们的所有作图工作是针对后缓冲区的,并且在向后缓冲区写入数据的时候,先将它与前缓冲区交换。因为所有的更新发生在一瞬间,所以不会感觉到闪烁。 其它一些增强图像效果的处理 除了以上一些功能外,OpenGL还提供了一系列的增强图像效果的函数,如反走样、融合、雾化、纹理映射等,使绘制的物体具有更加真实的效果。 §3.2 OpenGL中的变换 在现实世界中,所有的物体都是三维的。可是这些三维物体又是怎样在计算机中以二维平面的形式来表现的呢?OpenGL是通过一系列的变换来实现的。这些变换包括取景变换、几何变换、投影变换、剪切变换、视口变换等。在算法上,它们是通过矩阵操作来实现的。OpenGL中的变换关系在机械手的三维图形仿真中非常重要,其中的几何变换正是我们用来建立机械手关节动坐标系的基础。用OpenGL中的几何变换命令可以方便的按D-H法建立起机械手的坐标系。 几何变换 几何变换是建立模型的基础,通过它我们才能把模型的各个部分画在正确的位置并对模型进行位置与姿态的控制。基本的几何变换有平移、旋转和缩放。 平移变换 OpenGL中的平移变换命令为glTranslatef(x,y,z), 其对应的变换矩阵为

文档评论(0)

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

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档