- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
D-CAD系统中场景显示参数的集中控制-Read
3D-CAD系统场景显示中光照参数的可视化集中控制
张志强 夏尊凤 贺静
(长沙大学,长沙,410003)
摘 要 本文提出了用OpenGL软件接口开发交互式3DCAD系统时,场景显示中光照参数的可视化集中控制的开发方法。该控制对象具有良好的可控制性、兼容性、可扩充性和可移植性。可用于VC++为开发平台,用OpenGL作软件接口的各种CAD系统或其它系统中。
关键词 VC++,OpenGL, 光照参数的可视化集中控制,可移植性
分类号
OpenGL已成为大多数系统程序员开发交互式CAD系统的软件接口。在进行3D场景设计时,光照参数的设计一般做法是:重复编写大量的OpenGL光照控制代码,反复修改程序中的的参数观察不同的效果,工作极其烦琐。如果设计控制多个光源和选用多种材料,那工作量将会更大。作者在开发3DCAD(1.0版)时,使用了VC++6.0为开发平台,采用了属性对话框对光照参数的可视化集中控制,实现了多种光源和材料的集中可视化调整和控制。并且能很方便地移植到各种新开发的使用VC++6.0为开发平台、OpenGL作软件接口的CAD系统或其它系统中。
本文将以3DCAD(1.0版)为例,阐述场景显示中光照参数的可视化集中控制的开发方法。
设计思想
光照参数的可视化集中控制应具有良好的集中控制环境,切实可行的完全可视化控制,方便的控制调整手段,相对独立且集中的可移植代码和方便控制、使用简单、安全可靠的用户接口。
1.1相对独立且集中的可移植代码
开发光照参数的可视化集中控制对象不仅仅是为3DCAD(1.0版)提供良好的控制调整环境而用,同时也是为了今后开发的程序提供该控制调整环境以便减少其开发工作量。因此,该对象的程序代码必须要相对独立且集中,以便能方便的移植到使用VC++6.0为开发平台、OpenGL作软件接口的其它系统中。
1.2方便交互的完全可视化集中控制
所设计的对象是一个完全可视化的控制对象,因此应该对每一个被控制对象的各种参数变化都能通过其可视的形式完整的表现出来,应该提供方便的交互形式,提供尽可能多和完善的参数交互控制方法。
1.3能控制尽可能多的光照参数
OpenGL的光照参数可分为光源、光照模型和被照对象的材质属性等。
1.3.1 光源
OpenGL中能同时使用八盏光源,每一盏灯都可以选择不同的灯光类型。灯光类型有方向型和位置型,而位置型中包含有位置光源和聚光灯。对于位置型光源必须考察恒量衰减,线性衰减和二次衰减问题。光源属性由颜色分量来描述。
1.3.2光照模型
每一盏灯都有各自的光照模型:包括全局环境光强度、观察点位置(局部视点、无穷远视点)、对物体采用单面还是双面光照计算,执行纹理操作之后,是否应用颜色分离。
张志强,男,45岁,硕士,副教授,研究方向:CAD/CAM
1.3.3材质属性
OpenGL用材质对光的红、绿、蓝三原色的反射率来近似的定义材质的属性。材质属性分为环境颜色、散射颜色、发射光颜色、镜面反射颜色及背景和散射颜色,材质属性应用于正面、背面还是双面。
所设计的对象应能控制以上所列的全部参数。
1.4良好的用户接口
好的程序及其对象除考虑功能上的完备外,更应该考虑其可移植性和使用的方便性。该对象不仅仅提供其良好地控制调整环境。而要给使用者提供方便控制、使用简单、安全可靠的用户接口。
整体结构设计
为了保证移植的方便,该光照参数的可视化集中控制对象的所有程序都集中在可相对独立于新工程的六个文件中,这六个文件中包含了四个类CGLView、CMyCreatLight、CMySetLightMaterial和CMySetLightDlg。对象的整体结构及各类之间的关系可用图1来描述。类CMySetLightDlg、CMyCreatLight和CmySetLightMaterial用于界面交互和数据修改,并即时调用类CGLView中的函数更新屏幕内容。
Windows程序开发者都知道:Windows应用程序使用的是设备描述表用于图形的输出。但OpenGL并不使用标准的Windows设备表,它使用一渲染描述表。因此,OpenGL必须有一种把其输出与一个Windows设备描述表联系起来的机制。使OpenGL的图形信息能在Windows中更新一个窗口的图形状态。类CGLView就是为实现这一机制而编的。它的基类是直接从CView继承的。新的工程不需要在实现这一机制上下功夫了。只需生成基于CGLView的视图基类就能实现这一机制。同时,类CGLView对外提供该控制对象的全部功能调用接口。
接口设计
该对象的接口分为光照参数的可视化集中控制调整环境调用接口和光照参数的可视化集中控制调整对象的内部功能函数调用接口。
3.
您可能关注的文档
- 1951—2010年大连雷暴气候统计特征.PDF
- 1980a四声别义中的时间层次.PDF
- 1986年5月6日世界卫生组织第三十九届世界卫生大会世界卫生组织.PDF
- 1999年普通高等学校招生全国统一考试生物试题上海卷.DOC
- 2000-2001年第一学期高三期末考试.DOC
- 2002—2008年专利战略推进工程实施项目.DOC
- 1923年诺贝尔奖康普顿效应-山西大学激光光谱研究所.PPT
- 2002年铁道部标准项目计划建议表行标-铁道质量技术监督网.DOC
- 1900年台北大稻埕河畔景观淡水河畔的养鸭人家与浣衣都边缘地景.PPT
- 2003年全国MRI医师上岗证考试题无答.DOC
- 中国行业标准 DB/T 100-2024区域性地震安全性评价.pdf
- 《GM/T 0138-2024C-V2X车联网证书策略与认证业务声明框架》.pdf
- GM/T 0138-2024C-V2X车联网证书策略与认证业务声明框架.pdf
- DB/T 100-2024区域性地震安全性评价.pdf
- 中国行业标准 GM/T 0138-2024C-V2X车联网证书策略与认证业务声明框架.pdf
- 校园周边书店阅读氛围对初中生阅读素养提升的影响研究教学研究课题报告.docx
- 初中校园餐饮卫生监管与食品安全教育创新模式研究教学研究课题报告.docx
- 《文化遗产保护与旅游开发平衡机制的法律法规完善研究》教学研究课题报告.docx
- 《农作物病虫害生物防治技术的经济效益与社会影响分析》教学研究课题报告.docx
- 1 剖宫产术后子宫瘢痕憩室治疗中的并发症预防与护理措施教学研究课题报告.docx
文档评论(0)