基于OpenGL的实验室的用滑动变阻器的设计与实现.docVIP

基于OpenGL的实验室的用滑动变阻器的设计与实现.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的实验室的用滑动变阻器的设计与实现

基于OpenGL的实验室用滑动变阻器的设计与实现 摘 要 本文介绍了基于OpenGL的实验室用滑动变阻器的设计与实现技术,并介绍模板缓存在图形设计中的应用、滑动变阻器的三维可视化以及通过鼠标实现其缩放和移动等技术实现功能。 关键字 OpenGL;滑动变阻器;仿真;纹理;模板缓存1 引言 物理学是一门实验科学,学生不仅可以从物理实验中获取感性认识,加强探索能力和培养动手技巧,而且物理实验在增加物理教学的趣味性方面也有着举足轻重的作用。随着现代科学技术及计算机技术的飞速发展,计算机在辅助物理实验教学中,如模拟实验过程、演示实验原理、进行数据处理、实验控制和测量等方面都有了广泛的应用,这也有力地促进了实验教学的改革步伐。在计算机辅助物理实验教学中,CAI课件在辅助实验教学中起着举足轻重的作用。物理实验CAI课件模拟实验过程、演示实验原理、进行实验控制等的仿真程度越高,对实验教学的效果影响就越好。目前,教师多以Flash等工具来制作多媒体实验教学课件,很多情况下不能模拟实验过程,更加难实现进行实验控制,如实现直流电路中的滑动变阻器根据滑块的移动来及时准确地控制电路,实现直流电路的仿真控制。本文将要介绍在OpenGL环境下,实验室用滑动变阻器的设计思路和实现方法。2 OpenGL简介 OpenGL是一个工业标准的三维计算机图形软件接口,是美国高级图形和高性能计算机系统公司(SGL)开发的三维图形库。它实际上是与图形硬件完全无关的程序设计API,独立于操作系统,有着强大的图形功能和良好的跨平台移植能力,具有可靠性、可扩展性强、伸缩性好、灵活性强、易用等特点。OpenGL实现二维和三维的高级图形技术,在性能上表现得异常优越,它包括建模、变换、颜色模式设置、光照与材质设置、双缓存动画以及更先进的能力,如纹理映射、物体运动模糊等。OpenGL的这些能力为实现逼真的三维渲染效果,建立交互的三维景观等提供了优秀的软件工具。3 实验室用滑动变阻器的设计与实现3.1 需求分析 实验室用滑动变阻器是直流电路中最常用的实验仪器之一。系统应提供多种交互手段,用户和系统的交互主要通过鼠标和键盘进行。键盘主要应用在辅助鼠标进行多个物体的选择,其他的交互都是用鼠标来完成。系统设计中的滑动变阻器能够根据所连接在电路中的接线柱和滑块的位置来及时准确地改变电路中的电阻,同时系统也必须提供将滑动变阻器连接到电路中的接口。3.2 功能 缩放和移动。主要实现滑动变阻器在上下左右和对角线方向的缩放功能,可以通过鼠标的拖动来完成(如图1)。图1 鼠标缩放图像 滑块移动。滑动变阻器在电路中电阻的变化主要是通过滑动滑块来实现的。在正确连接的情况下,滑块移动能够改变滑动变阻器在电路中的有效电阻,从而实现变阻器在电路中的限流、分压作用等。本文中的滑块移动功能是通过在滑块上绑定一个点,这个点和滑块彼此关联来实现的,通过鼠标拖动点来实现滑块移动,效果如图2所示。图2 使用鼠标拖动滑块 接线柱。滑动变阻器在电路中起到保护电路、限制电路电流和分担电压等作用,是通过使用接线柱将滑动变阻器连接到电路中来实现的,所以接线柱的连接功能是必不可少的(如图3)。图3 接线柱功能4 设计实现关键技术4.1 纹理贴图技术 纹理贴图技术又称为纹理映射技术,它是计算机图形学中广泛应用的一项重要技术。本文选用纹理贴图技术是出于两方面的考虑,第一,使用OpenGL建模所创建的几何造型不能够描述物体的微观细节,而利用纹理图像可以达到模拟物体表面丰富的细节的目的,在很大程度上可以提高图形的真实性;第二,采用纹理映射的方法,可以很好地简化建模过程。本文中的滑动变阻器造型,如果使用OpenGL直接建模时有许多的细节需要表现,想要创建出真实感非常强的滑动变阻器,需要的工作量是很大的,若采用纹理映射,只要创建简单的模型。在这里使用OpenGL绘制两个简单的正方形模型,分别使用经过处理的三维立体效果很好的不含滑动变阻器滑块的图片和单独的滑块图片贴到模型表面即可。相比较而言,使用纹理贴图的工作量要小很多。 纹理映射(Texture Map)是将指定的图像数据应用到一个几何图元上,使用纹理绘制的一般步骤为:导入纹理,将纹理贴图到几何图形上。4.1.1 导入纹理 应用纹理绘制的第一步就是要将纹理载入到内存中,同时设置纹理图像。下面的代码能实现该功能: ::glGenTextures(1,amp;m_textureNames);BITMAP BM;HBITMAP hBmp = (HBITMAP) ::LoadImage (NULL, m_bmpFile, IMAGE_BITMAP, 0, 0, LR_LOADFROMF ILE|LR_ CREATEDIBSECTION); ::GetObject(hBmp, sizeof (BM), am

文档评论(0)

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

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

1亿VIP精品文档

相关文档