基于VRML与Java黑板板书实验设计与实现.docVIP

基于VRML与Java黑板板书实验设计与实现.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文档。上传文档
查看更多
基于VRML与Java黑板板书实验设计与实现

基于VRML与Java黑板板书实验设计与实现   摘要 VRML是开发虚拟实验的主流语言。介绍如何利用Java与VRML的结合,实现数据通信功能,实现黑板板书的虚拟实验。   关键词 VRML;Java;板书;虚拟实验   中图分类号 G434 文献标识码 B 文章编号 1671-489X(2008)12-0077-02      1 前言      随着计算机技术的迅速发展,虚拟现实技术已很成熟,广泛应用于各行各业。虚拟现实技术凭借其强大的交互功能,在教育领域中应用也很广泛。虚拟现实技术在教育中的应用之一就是开发虚拟实验。VRML是开发虚拟实验的主流语言,能够构建逼真的实验环境。将VRML与Java相结合,通过EAI接口实现VRML场景与网页中各个嵌入式对象之间互相方便地通信,使VRML场景成为网络表现的一部分[1]。同时,也使用户能够动态地改变VRML场景。   黑板是教学中最常用的教具之一,也是在虚拟实验中虚拟教室的一个重要组成部分。笔者主要探讨黑板板书功能的设计以及实现方法。      2 黑板板书实验的设计      2.1 实验环境的设计实验的环境比较简单,就是一间教室,里面包括黑板、桌椅、灯、多媒体柜等。为了实现黑板的板书功能,这里只需做一个黑板就可以。制作的方法主要有2种:一是用3DMAX制作完后,再转化成VRML格式的文件,以便在VRML环境中对各种交互进行编程;二是直接用VRML语言来编写。2种方法各有长处。用3DMAX制作的实验器材比较精细、逼真,但在转换成VRML格式的时候会有一些小错误,需要人工修改;直接用VRML编写,做出来的器材的逼真度不如3DMAX,但编写起来方便。这里采用第2种方法。   2.2 交互功能的设计一般的交互功能都能通过JavaScript脚本来实现,但是如果VRML程序较大,运行起来就会影响速度。为了实现较好的交互功能,最好将VRML虚拟场景和交互的控制区分开,这就需要用到Java小程序Applet。   教学中一般的黑板板书功能就是能够在上面书写,能用各种颜色的粉笔,能写大小不等的字,还能用黑板擦擦掉。在这个虚拟实验中,这些功能都能实现。这就用到了EAI接口。在Applet小程序中设置字体的颜色、大小,将数据传递到VRML场景中,改变虚拟场景,就可以用设置好的颜色和大小来板书了。   2.3 网页布局的设计本实验的组成主要是虚拟场景和控制字体颜色大小的Applet小程序区。它们在屏幕上的分布设计如图1所示。         3 黑板板书实验的实现      3.1 字体颜色、大小的控制   1)方法介绍。板书功能的实现主要用JavaScript脚本来实现。由于EAI接口传递的数据不能直接传到JavaScript脚本中,需要一个中间变量,这个中间变量其实就是一个节点。由这个中间变量接收EAI传递的数据,那么这个节点的域就会发生变化。再通过一个路由将中间节点的域变化传到JavaScript脚本的相应事件中,进而间接地实现参数的传递。方法如图2所示。      板书功能的实现关键是用createVRMLFromString()动态控制函数。由于板书是非常灵活的,所以写出来的字应该是圆滑的。挤压造型Extrusion节点可以来创建弯曲的管道,板书写的字和管道有相似之处。因此,可以用这个节点来实现具体的板书功能。   2)关键代码。   ①VRML程序。JavaScript脚本部分代码:   function yanse(){ziyanse=mmm.diffuseColor ; } //获取字体颜色值   function zitidaxiao(){zidaxiao=daxiaobianhua.translation; } //获取字体大小值   function isActive (val) {   ……   zideyanse=new SFColor(ziyanse.r,ziyanse.g,ziyanse.b); //给字体赋颜色值   scale=new SFVec2f(zidaxiao.x,zidaxiao.x); //给字体赋大小值   string=xian1+diffuseColor +zideyanse+xian2+spine +spine+ scale +scale+xian3;   node=Browser.createVRMLFromString(string);//生成节点   ……   }   function hitpoint(val){   weix=val[0]; weiy=val[1];weiz=val[2];……   spine[q]=new SFVec3f(weix,wei

文档评论(0)

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

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

1亿VIP精品文档

相关文档