- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
利用VRML和Java实现三维交互研究.doc
利用VRML和Java实现三维交互研究
邓朝晖1,2,3 李仁发2*
(湖南大学软件学院1,计算机与通信学院3,长沙410082;郴州职业技术学院3,郴州423000)
摘 要 构建基于WEB的虚拟实验室可以解决远程教育中的技能培训问题,虚拟现实技术可以生成三维逼真的虚拟环境,
广泛应用于虚拟实验室中。介绍了VRML和Java技术的基本概念,利用它们进行三维交互的原理,并对三维实体的动态实
现,动画的实现及声音的实现作了详细分析。
关键词 虚拟现实 VRML Java 三维交互
中图法分类号 TP391.9; 文献标识码 A
在现代的远程教育中,网上虚拟实验是发展现
代网上教育的一个瓶颈,而其中最关键的问题是交
互性没能较好地解决。在这里,提出结合利用
VRML和Java来实现三维虚拟实验场景中的交互
问题。
利用VRML和Java技术进行三维虚拟实验室
的开发[1],基本原理是用文本信息描述三维场景,
在Internet网上传输,在本地机上由VRML的浏览
器解释生成三维场景,解释生成的标准规范就是
VRML规范。这种思想使得在Internet上传输很少
的数据,就可以在Web上实现三维虚拟场景成为可
能。
1 基本概念
1.1 VRML虚拟现实建模语言
VRML虚拟现实建模语言是一种三维场景的描
述性语言,也是在Internet网上实现虚拟现实的关
键性技术,具有平台无关性,是目前Internet上基于
WWW的三维互动网站制作的主流语言。VRML浏
览器可以是一个独立的程序[2],也可以是某个Web
页的附件和插件。它具有界面真实感强、浏览方便、
2006年10月10日收到
第一作者简介:邓朝晖(1973—),女,湖南郴州人,郴州职业技术
学院讲师,软件工程硕士生,研究方向:数字化实验与仿真技术。
*通信作者简介:李仁发,男,湖南郴州人,湖南大学计算机通信学
院博导,研究方向:网络安全与对抗,数字化实验与仿真技术。
信息量大、交互性能优越等特点,是实现网上教学、
模拟战场、网上实习、网上实验的利器。
1.2 Java技术
Java语言是一种使用与网络编程的语言,它的
基本结构与C+ +极为相似,但却简单得多。
Java具有简单、面向对象、分布式、解释型、健
壮、安全跨平台以及可移植等多种特性,用Java开
发的软件具有可视化、可听化、可操作化的特点。
2 三维交互实施原理
Java能够自由运用于3D场景[3],获得了一个
结合VRML世界和Java世界的机制。VRML世界
通过其扩展执行模式进入Java世界,即活动行为通
过一个特殊结点(Script结点)来连接两个模块。
2.1 Script结点和事件
结点是VRML中的基本元素。Script结点可以
看作是一个结点的外壳:它拥有字段、eventIn事件、
eventOut事件。其本身没有任何动作,但可以通过
程序脚本来赋予脚本的动作。
为了使虚拟空间具有动感,构造指令可以包含
绑定指令。绑定两个结点之后,第一个结点通过这
样的路径传送给第二个结点的信息叫作事件。当一
个结点接收到一个事件时,它将根据结点的特征开
始动画或者其它事情。
2.2 通讯实现
一个事件驱动三维世界的动态表现为:一个到
达evenIn的事件会自动的使浏览器把事件传送到
程序上,这些程序是Script结点中的URL字段。对
于Java语言,事件到达程序的方法是确定的,事件
被分成一段段的代码,代码操作事件。在一个事件
被分配到程序后,程序将会像这个事件一样工作。
然后,程序将会从它的计算中得到一些结果,再定义
一种方法把结果送回Script结点。最后,通过Script
结点的evenOut事件将结果传送出去。
图1 Script结点是通向Script自身的网关
例如,一个用来计算立方体外形的Script结点,
应该具有一个字段,这个字段包含了立方体的角度、
大小和颜色,以及其他一些特征。另外,还需要包含
设置角度、大小和颜色的eventIn事件和描述立方体
在三维空间中的坐标取值的eventOut事件,这个
eventOut事件可以路由到描述立方体的结点,使立
方体发生变化。所有这些字段、eventIn事件和
eventOut事件就定义了一个计算立方体外形的
Script结点,Script结点的语法如下:
Script{
Field SFBool directOutput FALSE
Field SFBool mustEvaluate FALSE
exposedField MFString url[ “ /fooBar.class”,
“ /fooBar.js”,...]
field fieldTypeName fieldName initialValue
eventIn eventTyp
您可能关注的文档
最近下载
- 6-CFD基础及软件应用汇总课件.pptx VIP
- 移动通信职业规划.docx VIP
- 2024年杭州钱塘新区城市发展集团有限公司招聘真题 .pdf VIP
- 输日热加工禽肉及其产品动物卫生要求.pdf VIP
- 2025杭州钱塘新区城市发展集团有限公司社会招聘22人笔试备考题库及答案解析.docx VIP
- 药物分析与常用组学技术在药学服务中的应用题库答案-2025年华医网继续教育.docx VIP
- 海丰2022年事业编招聘考试《公共基础知识》真题及答案解析三.docx VIP
- 7、美国联邦法典第九卷联邦肉类检验法.doc VIP
- 2024年入团积极分子考试题库.docx VIP
- 《荷塘月色》课件25张 .ppt VIP
文档评论(0)