基于VRML和JAVA的交互式工程制图Web模型库的建立_王兴建
- 格式:pdf
- 大小:157.34 KB
- 文档页数:3
毕业设计(论文)说明书题目:《软件工程》精品课程教学网站的设计与实现毕业设计(论文)中文摘要毕业设计(论文)外文摘要目录1 绪论 (1)1.1 问题定义及内容简介 (1)1.2 研究背景与研究意义 (1)1.2.1 本课题研究背景 (1)1.2.2 本课题研究意义 (3)1.3 课题调研与可行性分析 (3)1.3.1 课题调研 (3)1.3.2 可行性分析 (5)1.4各章内容介绍 (6)2 系统需求分析 (7)2.1 系统的性能要求 (8)2.2 系统功能需求分析 (8)2.2.1 功能划分 (8)2.2.2 功能描述 (8)2.3 用例模型 (9)2.3.1普通用户用例图 (9)2.3.2学生用例图 (10)2.3.3教师用例图 (11)2.4 活动图 (13)2.5 数据流图 (14)2.6数据字典 (15)3系统设计 (18)3.1系统总体结构设计 (18)3.2系统数据模型设计 (18)3.2.1 E-R图 (18)3.2.2 关系模型 (20)3.2.3 数据库表的设计 (21)3.3系统开发与运行环境的确定 (23)3.3.1 系统开发环境 (23)3.3.2 系统运行环境 (24)3.4系统实现的若干关键技术 (24)3.4.1 UML建模技术 (24)3.4.2 ActiveX技术.......................................................................... 错误!未定义书签。
3.4.3流技术.................................................................................... 错误!未定义书签。
4系统内核设计. (25)5用户管理 (26)5.1用户注册 (27)5.2用户登陆 (29)5.3找回密码 (30)5.4系统安全性...................................................................................... 错误!未定义书签。
基于虚拟现实的建筑设计可视化实验报告一、实验背景随着科技的不断发展,虚拟现实(Virtual Reality,简称 VR)技术在建筑设计领域的应用越来越广泛。
虚拟现实技术能够为设计师和客户提供更加直观、沉浸式的设计体验,帮助他们更好地理解和评估设计方案。
本实验旨在探究虚拟现实技术在建筑设计可视化中的应用效果和优势,为建筑设计行业的发展提供参考。
二、实验目的1、研究虚拟现实技术在建筑设计可视化中的可行性和应用效果。
2、比较虚拟现实技术与传统设计可视化方法(如二维图纸、三维模型)的优劣。
3、探索虚拟现实技术在提高设计师与客户沟通效率、优化设计方案方面的作用。
三、实验设备与软件1、硬件设备高性能计算机虚拟现实头盔(如 HTC Vive、Oculus Rift)手柄控制器2、软件工具3D 建模软件(如 3ds Max、SketchUp)虚拟现实引擎(如 Unreal Engine、Unity)四、实验过程1、设计方案的创建首先,使用 3D 建模软件创建建筑设计方案的三维模型。
在建模过程中,注重细节的表现和材质的赋予,以提高模型的真实感。
2、模型导入虚拟现实引擎将创建好的三维模型导入虚拟现实引擎中,并进行场景的搭建和优化。
在引擎中,设置光照、阴影、物理效果等参数,使场景更加逼真。
3、虚拟现实交互设计利用虚拟现实引擎提供的交互功能,为用户设计操作方式和交互界面。
例如,通过手柄控制器实现行走、视角转换、物体选择等操作。
4、测试与优化在完成初步的虚拟现实场景后,进行内部测试。
邀请设计师和非专业人员体验虚拟现实场景,收集他们的反馈意见,并对场景进行优化和改进。
五、实验结果与分析1、直观性和沉浸感虚拟现实技术为用户提供了极其直观和沉浸式的体验。
用户可以身临其境地在虚拟建筑中行走、观察,从各个角度感受空间的布局和细节。
这种直观性和沉浸感远远超过了传统的二维图纸和三维模型,能够让用户更快速、更准确地理解设计方案。
2、沟通效率的提升在与客户的沟通中,虚拟现实技术展现出了显著的优势。
收稿日期:2003-07-15基金项目:河北省教育厅资助项目(09870001) 虚拟现实(Virtual Reality )技术是当今计算机界广泛关注的一个热点,随着硬件技术和网络技术的飞速发展,以及3D 技术的日益成熟,人们已不满足Web 上二维空间的交互特性。
虚拟现实模型语言VRML 的诞生为实现基于Web 的虚拟现实提供了得天独厚的条件。
VRML 的目的主要是为了在网页中实现三维动画效果以及基于三维对象的用户交互。
但是由于VRML 语言自身规范的复杂性,即使构造一个简单的三维场景也需要录入较多的数据,同时用户在将其所需的空间几何体直接用VRML 规范的数据格式实现时存在较大的困难,这些都阻碍了用户对VRML 的使用。
针对这种情况,笔者在研究VRML 现有规范的基础上,提出了一种基于Web 的虚拟模型创建工具的实现方法。
VRML 是一种三维造型和场景渲染的图形描述性语言,它把构成场景的每一个节点都看成一个对象,通过对节点的描述及节点间的层层嵌套就构成了一个VRML 文件(扩展名为wrl ),因而VRML 具有面向对象的特性[1]。
OpenGL 是源自于SGI 公司图形工作站的高性能三维图形和场景处理的3D 图形接口标准[2],是三维可视化和场景系统开发的有力工具。
同时OpenGL 已完全被集成到了Visual C++6.0中,因而笔者采用Visual C++6.0作为系统开发平台,用OpenGL 实现模型的真实感显示和动态操作。
实现了无须直接接触VRML 代码即可生成VRML 文件,从而可在装有VRML 浏览器插件的Web 通用浏览器中进行浏览。
1 模型创建工具的体系结构该虚拟模型创建工具所具有的主要功能模块包括:三维模型创建模块、模型预览模块、场景树预览模块以及一些其他辅助模块:如预览和编辑生成的虚拟模型的VRML 代码、文件操作等。
2004年 工 程 图 学 学 报 2004第3期 JOURNAL OF ENGINEERING GRAPHICS No.3基于Web 的虚拟现实模型创建工具冯桂珍, 池建斌(石家庄铁道学院,石家庄 050043)摘 要:虚拟现实模型语言VRML (Virtual Reality Modeling Language )可用于构造基于Web 的三维虚拟场景,但由于其自身的繁杂性,直接构造三维虚拟空间较为困难。
软件学院大作业实验报告题目:基于Struts的图书管理系统专业:软件工程班级: 122班(java方向)学号: 8000112163学生姓名:王冠完成人数: 1 人起讫日期: 2015/05/20任课教师:周兴斌职称:副教授部分管主任:刘晓强完成时间: 2015/05/30目录1.前言 (3)1.1 实验目的 (3)1.2 实验的基本要求 (3)2. 系统分析与设计 (3)2.1 系统功能描述(简单需求分析) (3)2.2 系统功能流程 (3)2.3数据库设计 (4)2.3.1数据表的构建 (4)3.系统的实现与测试 (5)3.1系统采用的关键技术 (5)3.2 关键程序流程 (6)3.3 关键代码分析 (7)3.4 出现的问题及解决 (18)3.4.1向数据库中插入数据出现乱码以及界面显示有中文乱码问题: (18)3.4.2弹出提示框问题 (19)4. 系统界面 (19)4.1 进入系统界面(登录界面) (19)4.2 管理员模块界面: (19)4.3 添加图书界面: (20)4.4 罚金设置界面: (20)4.5 用户管理界面: (20)4.6 用户模块界面: (21)4.7 图书检索、借阅界面: (21)4.8 续借图书界面: (22)4.9 归还界面: (22)4.9 安全退出界面: (23)5.操作方法 (23)5.1 登录 (23)5.2 图书检索,借阅 (23)5.3图书归还,续借 (23)5.4图书,用户的添加 (23)5.5 图书,用户的删除操作 (24)5.6 图书,用户的更新操作 (24)6.分析与总结 (24)6.1实验分析与总结 (24)7.附录: (25)7.1 参考文献: (25)7.3 MVC架构模式的认识 (25)1.前言1.1 实验目的学习Web应用程序的开发,以B/S方式,JSP编程技术开发图书管理系统;通过编程实践掌握JSP的动态网页与sql2012数据库相结合的技术;通过MVC(模型-视图-控制)架构模式,使其在开发过程中得以应用,并了解Web编程模式下的Model1和Model2 的区别;了解Struts框架的具体含义及在Struts模式下的开发。
鞍山师范学院学报J ou rna l of A nshan N or m a l U n iversity2006208,8(4:59-62VR ML与JAVA在网络课件中交互运用分析李国军,钟志强(鞍山师范学院物理系,辽宁鞍山114005摘要:VR ML与JAVA是制作网络课件的新技术,它们之间的信息交互是两种技术联合在课件制作中的关键.关键词:VR ML;JAVA;E A I中图分类号:G434文献标识码:A文章篇号:100822441(20060420059204The Ana lysis of Apply i n g VR ML and JAVAto W eb Courseware I n teracti onL I Guo2jun,Z HONG Zhi2qiang(D epart m ent of Physics,A nshan N or m al U niversity,A nshan Liaoning114005,ChinaAbstract:Both V r m l and Java are ne w devel op ing technol ogy f or web course ware.It is interacti onthat is key t o res olving questi on.Key words:VR ML;Java;EA I虚拟现实建模语言(V irtual Reality Modeling Language即VR ML和Java语言都是可执行的代码技术,通过网络传输的只是一个很小的描述文件(指令性数据集,客户端通过本地的VR ML浏览器、JA2 VA虚拟机交互地访问这些文件并解释执行.将Java与VR ML结合,能够很好地实现网络多媒体课件技术:使用VRML进行场景构造,内嵌用Java编写的程序设计实现对象的编程行为.这使VR ML在网上创建充满真实感的三维虚拟世界,为用户提供一种自然的、身临其境的体验方式,包括交互性、动态效果、连续性及参与感,而这将是未来网络教学的主要形式之一[1].1VRML简单交互VR ML简单交互,即VRML空间中各节点间数据交互.VRML有统一的数据传输接口和完善的属性集合和事件集合,可接收传感器节点发送过来的数值,并根据所对应的接口属性域设置提取数据、改变自身的属性值、触发事件进而改变自己在空间中的位置、外型和显示效果,还可以将处理后的数据送到输出域,传递给其它模型节点.各节点通过接口域的相互路由(r oute t o实现数据传输,路由的映射关系自由,但接口域的数据规格必须严格一致.2VRML扩展交互VR ML本身交互机制是无法构建一个大型多媒体课件的,因为VR ML本身不能完成普通程序设计收稿日期:2005-06-20作者简介:李国军(1968-,男,山东平度人,鞍山师范学院物理系高级实验师.06鞍山师范学院学报第8卷中的转折、分支、循环等基本特征.因此实际系统设计中,可利用Java语言提供的强大网络编程能力,编写与远程系统通信和共享能力处理等功能的应用程序.Java 对VRML的所有支持都通过附加的封装类实现.通过这些类,Java程序就能够访问VRML场景、接受和发送事件、从页面上得到VRML对象等,实现对VR ML场景的完全控制[2].根据访问方式的不同,又可分为:脚本编程接口S A I(Scri p t AuthoringI nterface交互与外部编程接口E A I(E A I External Authoring I nterface交互.2.1脚本编程接口S A I交互S A I交互即使用事件机制和路由利用Scri p t节点实现VR ML与Java(或JavaScri p t的交互.首先,通过eventI n将事件传至Scri p t节点中的脚本;其次,在Scri p t节点中的脚本中调用相应的Java类(或JavaScri p t进行处理;最后,通过event O ut 将结果送回到VR ML场景以实现动画或交互.[3] VR ML的Scri p t节点是一种控制传感器和内插器的节点,通过它可以定义和改变场景中对象的外观和行为.Scri p t节点的URL域可以包含一段JavaScri p t程序或者是链接的一个JavaClass.SCR I PT节点可放置在场景的任何地方,用DEF命名它,从而完成事件的删除传递[4].SCR I PT节点的字段是由用户延伸的,到达这些字段的字段会自动移到和SCR I PT节点相关程序中.另外,SCR I PT节点也能够通过编写合适程序脚本,动态生成(改变三维造型并绑定合适的感应器和内插器[5].2.1.1Java通过Scri p t类(vr m l.node包与Scri p t结点建立联系,控制VR ML 结点[6]首先,定义Scri p t节点中的各域域值,设置路由(Route使VR ML中的其它节点与Scri p t节点联系起来.当与Scri p t 节点有联系的节点发生事件时,事件通过路由传给Scri p t节点的eventI n域,Scri p t节点则通过url域中指定的地址找到java类.然后,Java类开始工作,最先执行的是initialize(方法:在initialize(方法中必须获得Scri p t节点中eventI n或field域的值,或者把java中的值返回给Scri p t中的event O ut域.Scri p t类提供的方法有:get2 Field(field Na me;getEventI n(eventI n Name;getEvent O ut(event O ut N a me;作为参数的fieldNa me、eventI n2 Na me、event O ut N a me要与Scri p t节点中定义的名称相符合,对应的Field类的子类(vr m l.filed 包与Scri p t节点中定义的各种Type类型一致.它提供get V alue(和set V alue(方法.再则,通过Scri p t类提供的p r ocessEvent(Event p0或p r ocessEvents(intp0,Event[]p1方法来捕获Scri p t节点传递的事件.p r ocessEvent和p r ocessEvents方法是所有外部事件公共的输入点.Java程序通过替代这两个方法对事件做出相应的处理.V r m l包中Event类的get N a me(方法返回事件名称(该名称与Scri p t节点中发生该事件的eventI n Na me相同,确定发生的事件,从而做出相应的处理;Event类的get V alue(方法则返回一个ConstField类的实例(它是Scri p t节点中发生该事件的eventI n域,Const2 Field类是Field类的子类,它没有set V alue(方法,因而只能取出Scri p t节点中eventI n域的值,而不能修改.最后,所有事件处理完后,程序就调用Scri p t类中的eventsPr ocessed(方法,在这儿可以加入用户想要实现的动画、交互等各种效果.Scri p t类中的shutdown(方法实现离开VRML文件的方式.通过Scri p t节点,java程序处理过的数据返回给VR ML文件.通过初始化时getEvent O ut(得到的变量的set V alue(方法将值传递给Scri p t节点的event O ut域,再通过路由传递给VR ML中的各类节点,完成整个通信过程.2.1.2Java通过Scri p t节点和Node类(vr m l.node包直接修改VR ML节点通过Scri p t节点和路由,同时又必须在Scri p t节点的event O ut域设置控制点,java 程序才能改变VR ML文件中节点值.当有大量数据需要传送时,这种给每个数据设置一个event O ut域加一个路由的方法显然是相当麻烦的.因此java,提出直接修改节点的方法.Java直接修改场景中的节点,仍然要用到Scri p t节点.首先在定义Scri p t节点时,将event O ut域改为field域,fieldType定义为SF Node,具体格式如下:“field SF Node fieldna me USE node Na me”.“node Na me”为要修改的节点名称(在VR ML中由DEF语句命名,产生一个指向名为node Na me节点的指针.执行初始化时通过getField(方法得到相应的SF2 Node类的一个实例,通过get V alue(方法得到该类的值,这里它的值恰好是名称为node Na me的Node类的实例,然后通过Node 类提供的方法直接修改节点.getExposedField (String p0、getEventI n (String p0方法,分别得到节点的field 和eventI n 域,并把结果作为Field 类;再通过各Field 类的子类提供的方法读取和设置值,将设置结果直接返回节点,不用再设置路由,从而达到了直接修改节点的目的.Node 类还提供了getEvent O ut (String p0方法,用它可以得到节点的event O ut 域,与前两个方法不同,它得到的结果是一个不能修改的Field 类,即Field 类的子类ConstField 类.使用改进后的方法,可以有效地缩减代码长度,节省VR ML 文件的计算时间,提高VRML 场景的生成速度.2.1.3Java 通过Scri p t 节点和B r owser 类(vr m l 包直接创建VR ML 场景设置Gr oup 节点的ad 2dChindren 和re moveChindren 的值可添加和删除具体节点,但还无法操作路由.当有大量不同的并相互关联的节点要通过java 在VR ML 中创建时,工作量是难以想象的.为了满足这一要求,Scri p t 类继承Base Node (vr m l 包类.Base Node 类中定义了两个方法:get B r owser (和getType (.get B r owser (方法将会返回Base Node 类所处的浏览器.B r o wser 类存在于VR ML 包中,它提供了一系列方法来对整个VRML 文件进行控制.如:(1添加和删除路由:addRoute (SF Node fr omNode,SFString fr omEvent O ut,SF Node t oNode,SFString t oEventI n ,deleteRoute (SF Node fr omNode,SFString fr omEvent O ut,SF Node t oNode,SFString t oEventI n .(2直接创建VR ML:create V r m lFr omString (SFString vr m lSyntax (把要创建的节点语法以字符串的方式作为参数写入.(3在VR ML 中建立相应节点:create V r m lFr omURL (MFString url,SF Node node,SFString event (该方法的提供节点语法的参数是放在url 地址所指出的VR ML 文件中,浏览器通过url 找到要加入的节点,把它加入到node 参数指定的节点中event 参数指定的eventI n 域中.(4用指定的节点来替换整个VR ML 文件:rep lace World (MF Node nodes .用url 指定的另一个VRML 文件来替换当前的文件:l oadURL (MFString url,MFString para meter .Scri p t 类执行initialize (方法时,得到浏览器实例,然后p r ocessEvent (Event e 方法执行时使用上述方法建立、修改VR ML 场景.通过改进,不仅VR ML 文件代码长度缩减,java 程序代码也大大减少,进一步提高了VR ML 场景的生成速度.2.2外部编程接口(EA I 交互S A I 交互VR ML 离不开Scri p t 节点和Scri p t 类(vr m l .node 包.为了实现通信功能编写的java 类都必须继承自Scri p t 类.但java 不支持多继承,如果用App let 操控VR ML 场景,java 程序要继承Scri p t 类的方法相当复杂.特别是要把VR ML 文件与App let 集成在同一个HT ML 页面时,用Scri p t 类来实现颇为困难,而且程序代码冗长、可扩展性差[6].VR ML97标准提供的E A I 定义了外部环境怎样通过VR ML 现存的事件驱动模式来访问VR ML 内部的节点的一系列方法,实现了App let 与VR ML 场景的通信.E A I 包含浏览器脚本接口的全部功能,例如查询浏览器的状态、增加或删除路由、生成新的节点等功能[7].Java 主要使用B r owser 和Node 两个类(vr m l .external 包,以及其它一些如处理eventI n 域和even 2t O ut 域的各个属性类(EventI n 3、Event O ut 3和处理例外的各种3Excep ti on 类完成对EA I 的描述.B r owser 类提供了3个方法:get B r owser (App let pApp let 、get B r owser (App let pApp let,String fra 2me Name,int index 和get N ode (String na me .前两个方法是静态方法,直接在App let 类中使用这两个方法得到App let 类和VRML 所在的浏览器类的实例.get N ode (方法可以直接得到VR ML 文件的具体节点(Node 类的实例,用I n L ine 语句嵌入在VR ML 文件中的各个节点是用get N ode (方法无法得到的.它用自己的getEventI n (和getEvent O ut (方法来得到VR ML 节点的各个域.然后使用返回的Event 3的实例的get V alue (和set V alue (方法来控制具体的值.EventI n 3类仅提供了设置值的set V alue (方法;Event O ut 3类相对复杂,不仅提供了get V alue (方法来获得当前值,还提供了监听Event O ut 域的接口———Even2t O ut O bserver,随时监听VR ML 节点中是否有新的Event O ut 事件发生,一旦有新事件发生,通过替代该接16第4期李国军,等:VR ML 与JAVA 在网络课件中交互运用分析26鞍山师范学院学报第8卷口提供的callback(Event O ut value,double ti m eSta mp,Object data方法响应事件.通过B r owser和Node类,可以抛弃Scri p t节点和Scri p t类甚至路由而实现对VRML文件的各种节点即Node类的各个实例直接操控.但get B r owser(方法的参数必须是App let的实例,因而该方法只能通过App let来控制VRML.3总结VR ML与其它实现三维场景的技术手段(如OpenG L,Cult3D,3DS MAX,V ie wpoint相比,具有语法简单、三维建模功能强大、便于网上发布等优点.但由于VR ML本身仅仅是一种标准,不可能满足各行各业的所有需要.所以,高级交互功能的实现必须借助于Java等功能强大的高级语言.这样,可以有效地弥补VR ML本身的一些不足(例如逻辑判断、文件操作、键盘输入、精确控制场景等,进而完善与HT2 ML等其它媒体的交互,也可实现复杂的虚拟环境系统网络课件.参考文献:[1]吴访升.基于VR ML交互式网络课程的实现技术[J].中国电化教育,2002,(9:48-49.[2]王德新.在VR ML文件中实现对数据库信息的访问[J].沈阳工业大学学报,2002,24(5:417-419.[3]徐洪珍.VR ML和Java的交互及其应用[J].计算机与现代化,2003,(11:48-50.[4]王硕.VR ML与外界数据交互的技术实现[J].计算机系统应用,2000,(2:38-40.[5]王琳.利用VR ML构造交互式虚拟现实环境[J].计算机应用,2000,20(8:253-254.[6]王汝传.基于Java和VR ML虚拟场景通信方式的研究[J].系统仿真学报,2003,15(7:986-989.[7]孙宏彬.Java2VR ML虚拟技术的多媒体课件研究[J].高师理科学刊,2002,22(4:74-75.(责任编辑:张冬冬 (上接第58页4总结S VG实现了图形、图像它,文字和动画的有机统一.S VG除了支持HT ML中常用的标记如:文本、图像它、链接、CSS、脚本(Scri p t外,还提供了大量针对图形、图像它、动画的特定标记.并且基于X ML,在制作追求公开、标准化、跨平台新型网络课件的过程中,S VG必将成为下一代的课件制作标准之一.参考文献:[1]吴高峰.基于X ML的可升级矢量图像(S VG浅析[J].计算机应用研究,2002,(5:136-138.[2]佚名[DB/OL].htt p:///ne ws/L I ST.ASP?id=207.[3]孟宪会.S VG中的动画技术[DB/OL].htt p:///app lic/p r og/ht m2003/20030116_166Z D_1.sht m l[4]在S VG中添加交互性[DB/OL].htt p://www-900.ib /devel oper Works/cn/x m l/x-svgint/index.sht m l.[5]陈传波.S VG与X ML的集成技术在动态W eb图像它上的应用[J].计算机工程与科学,2002,24(3:11-13.(责任编辑:张冬冬。
基于VRML-JAVA的网络交互式虚拟装配环境构建
金侠杰;邢科礼;林财兴
【期刊名称】《计算机仿真》
【年(卷),期】2004(21)10
【摘要】虚拟现实建模语言(VRML)作为构建网络虚拟现实的国际标准,其应用得到了越来越多的关注.该文讨论了VRML虚拟场景与外界交互的手段和方法,着重研究了通过VRML外部编程接口EAI利用Java Applet来实现交互式网络虚拟装配环境的方法和实现过程,并给出了运行实例,通过该平台可以实现异地设计信息交流.【总页数】4页(P126-129)
【作者】金侠杰;邢科礼;林财兴
【作者单位】上海大学机电工程与自动化学院,上海,200072;上海大学机电工程与自动化学院,上海,200072;上海大学机电工程与自动化学院,上海,200072
【正文语种】中文
【中图分类】TP393;TP391.9
【相关文献】
1.基于社交网络构建大学英语交互式英语教学环境 [J], 王力维
2.基于VRML-JAVA的通用虚拟装配场景交互操作的研究与实现 [J], 卜莹琼;李世国;胡文明
3.网络环境下组合夹具虚拟装配平台的构建 [J], 魏园园;瞿畅;王君泽
4.基于VRML-Java的虚拟装配系统开发 [J], 张刚;李火生;侯强
5.基于VRML-Java的机械产品虚拟装配技术研究 [J], 胡茶根;王晓军;赵刚;李国臣
因版权原因,仅展示原文概要,查看原文内容请购买。
基于XML的Web数据挖掘模型的设计
周晓梅;王潜平;苏琳
【期刊名称】《计算机工程与设计》
【年(卷),期】2007(28)2
【摘要】目前很多网站都是用HTML构建的,要真正做到高效准确的挖掘数据非常困难,XML的出现为基于Web的数据挖掘带来了便利.在研究Web数据挖掘技术的基础上,利用XML数据抽取技术将半结构化数据映射为结构化数据,建立了一个具有基本挖掘功能的面向多种Web数据的挖掘系统模型Web_mining.最后将Agent技术引入数据挖掘,提出了一种基于Agent技术的体系结构,用来实现大容量的数据在分布式存放情况下的数据挖掘,并对基于Web的数据挖掘技术进行深入的研究和探讨.
【总页数】4页(P272-274,277)
【作者】周晓梅;王潜平;苏琳
【作者单位】中国矿业大学,计算机学院,江苏,徐州,221008;中国矿业大学,计算机学院,江苏,徐州,221008;中国矿业大学,计算机学院,江苏,徐州,221008
【正文语种】中文
【中图分类】TP391
【相关文献】
1.基于XML的Web数据挖掘模型的研究 [J], 陈景霞;张鹏伟
2.基于XML的Web数据挖掘系统模型的设计 [J], 黄淑芹
3.基于XML的Web数据挖掘模型设计与研究 [J], 周炘;邓蓉
4.基于XML的Web数据挖掘模型的设计研究 [J], 王雅轩;顼聪;
5.基于XML的Web数据挖掘模型的探讨 [J], 孙铁利;古丽娜孜
因版权原因,仅展示原文概要,查看原文内容请购买。
2009 年 第1期工 程 图 学 学 报JOURNAL OF ENGINEERING GRAPHICS2009 No.1采用 VRML 的虚拟校园交互功能的实现施贵刚1, 2, 程效军1, 谷 川1(1. 同济大学测量与国土信息工程系,上海 200092;2. 安徽建筑工业学院土木工程系,安徽 合肥 230601)摘 要: 以某虚拟校园交互功能的实现为例, 从信息获取、 虚拟场景交互控制出发, 探讨了 VRML 与 HTML 通信、VRML 与 JavaScript、VrmlScript 在 HTML 中通信等技术, 实现了校园内的各种数据、属性、图形的查询,实现了虚拟环境的工具菜单,实现了场景对 象的移动、删除、修饰等,从而丰富了虚拟校园的交互手段,方便了用户的操作。
关 键 词:计算机应用;虚拟校园;虚拟环境;交互功能 中图分类号:TP 391 文献标识码:A 文 章 编 号:1003-0158(2009)01-0148-05Implementation of Interactive Functions in Virtual Campus Based on VRMLSHI Gui-gang1, 2, CHENG Xiao-jun1, GU Chuan1( 1. Department of Surveying and Geo-Informatics, Tongji University, Shanghai 200092, China; 2. Department of Civil Engineering, Anhui Institute of Architecture and Industry, Hefei Anhui 230601, China )Abstract: Starting from the information acquirement, the interactive control of virtual scene, and the implementation of interactive functions in virtual campus, some techniques are discussed, such as communication of VRML and HTML, JavaScript and VrmlScript, etc. The query of different data, attributes, graph in campus are realized. The tool menu embedded in virtual environment, and the movement and deletion of scene objects are realized also. The interactive functions enrich mutual means with virtual campus and make users to operate conveniently. Key words: computer application; virtual campus; virtual environment; interactive function数字化信息社会最具代表性的 3 种新技术是 多媒体、Internet 和虚拟现实,而这 3 种新技术 的交叉点是虚拟现实建模语言(Virtual Reality Modeling Language, VRML)[1]。
基于VR ML的矿井三维网络图建模技术研究盛 武,余忠林(安徽理工大学, 安徽淮南市 232001)摘 要:结合虚拟现实建模语言技术(VR ML)特征,分析了矿井三维网络图基本模型建模特点,讨论了基于VR ML的三维网络矿图的建模技术和绘图技术。
关键词:虚拟现实;三维建模;网络矿图;可视化虚拟现实技术(VR)是一门综合性信息技术。
虚拟现实技术主要内容包括实物虚化、虚物实化和高效的计算机信息处理这3个方面。
虚拟现实建模语言(VR ML)是三维造型和渲染的图形描述语言。
传统的矿井图纸设计及优化开采多采用二维图纸,结构复杂,大多需要人工操作,开发周期较长。
现有矿井设计软件所提供的有限可视化功能,已不再能满足要求。
采用虚拟现实技术可以实现从矿井三维图纸设计到井下作业全过程及开采若干年以后的景观的可视化。
1 VRML的技术模型(1)VRML网络模型。
由于基于VR ML的第二代web采用“可执行的代码”技术,有效克服了网络带宽造成的瓶颈,可以通过运行VR ML程序直接接入I N TERET,VR ML具有强大的网络功能。
开发人员利用VR ML和java,可以不必在介质中传输大得惊人的图像和动画文件,而只需传输VR ML和java 描述的指令性数据集(同一三维图的字节数仅相当其它软件绘制的1/1000)。
在web的客户端,利用本地计算机便可把接收的瘦型文件转换成极富感染力的可视化数据文件。
(2)VRML多媒体模型。
VR ML多媒体模型能够实现多媒体制作,合成声音、图像以达到影视效果。
在VR ML三维空间中,可对场景进行渲染和升华,实现逼真的三维表现现场效果。
(3)VRML人工智能模型。
人工智能模型体现在VRML具有感知功能,利用感知传感器节点来感知用户和造型之间的动态交互感觉。
(4)VRML三维立体模型。
VR ML本身提供了多种几何造型方法,其中基本体造型有4种:长方体(Box)、圆锥体(Cone)、圆柱体(Cylinder)、球体(Sphere)。
收稿日期:2004-06-23基金项目:四川省教育厅重点科研基金资助项目作者简介:王兴建(1974-),男,讲师基于VR ML 和JAVA 的交互式工程制图Web 模型库的建立王兴建, 李 丽, 陈雪菱, 刘思颂(成都理工大学应用核技术与自动化工程学院,四川成都610059) 摘要:VRML 是基于Web 技术的虚拟现实建模语言,具有丰富的三维造型能力、渲染能力、交互能力及动画功能.Java 是一种非常灵活的、可移植的、彻底地面向对象的程序设计语言.以VR ML 和Java 的接口为基础,利用Java 语言编写程序脚本,结合VRML 的Script 节点实现模型对用户的更加灵活的响应和用户对模型的更加精细的控制,从而弥补VR ML 节点在这方面的不足.基于上述建立交互式工程制图模型库,提出了B /S 构架的三层系统的功能框图,实现了模型库的部分功能.关键词:模型库;Java ;Web ;交互;接口中图分类号:TP302.4 文献标识码:A 文章编号:1001-8395(2005)02-0250-030 引言基于Web 的交互式虚拟模型库的建立是图形学远程教育的关键技术[1],而交互式的实现关键在于Java 和VR ML 的综合应用,即是VR ML 和Java 的接口问题[2].VR ML 是虚拟现实建模语言,是一个3D 造型和渲染的图形描述性语言.随着Web 技术的飞速发展,VR ML 已经成为Internet 上3D 文件的交换、描述标准.为基于Internet 的虚拟现实的实现提供了一个可行的解决方案.其基本特征包括分布式、三维、多媒体集成、境界逼真和一定的交互性.其更加灵活的交互性则需要与Java 语言和Java Script 结合才可实现.Java 是一种跨平台,适合于分布式计算环境和广泛使用的网络编程语言,其具有简单性、面向对象、解释型等性能[3].优良的性能决定了Java 能够最大限度的利用网络,特别是Java 的小应用程序(applet )可在网络上传输而不受环境的影响.网络性能使Java 能够和VR ML 有效的结合起来.VR ML 提供了一个与场景外的程序相结合的节点—Script ,该节点可以使用编程语言编写,然后通过执行模式连接到模型中,创建出新的节点产生对用户事件的响应.使用的编程语言就是Java 和Java Script .1 VR ML 和JAVA 的接口Java 和VRML 的接口都是通过附加的封装类来实现的.通过这些封装类,Java 程序就能够访问VRML 模型、接受和发送事件、从页面上得到VRML对象,增加和删除节点,实现对VRML 模型组的完全控制.VR ML 中使用Java 有两种方式,即通过内部Script 节点和外部编程接口(E AI ).1.1 内部Script 节点 这种方式下必须在VRML 模型内部定义Script 节点,在其中指定接受的时间输入、发送的事件输出、需要控制的VRML 节点以及用以处理事件的Java 程序.该节点的定义如下Script {field MFString url []field SFBool directOutput FALSE field SFBool mustEvaluate F AL SE field SFBool directOutputs FALSE evenIn eventT ype Na me eventName event Out eventTypeName event Na me field fieldTypeName fieldname initialValue }其中url 是指用Java 编写的程序脚本.mustE -valuate 通过设定True 或False 来确定脚本如何求值,为True 时,浏览器立即对程序脚本进行计算,False 时,对脚本的计算则有可能推迟.通常设定为False ,设定为True 易引起浏览器性能降低.di - 2005年3月 第28卷 第2期四川师范大学学报(自然科学版)Journal of Sichuan Normal University (Natural Science )Mar .,2005 Vol .28,No .2 rectOutput 控制程序脚本直接访问节点值的方法.如该域为False ,程序脚本就只能读不能写其它节点的可见域,evenIn 和evenOut ,如为True ,则可读可写.当程序脚本要传递一组节点实例时,可以将该域设为True ,这样就可以把事件直接发送给节点.如果该域设为False ,则需要加入一个evenOut 域,并为之建立相应的路由.本文为实现交互式的模型库,把directOutput 域设为True .1.2 外部编程接口(External Authoring Interface )EAI Script 节点从VRML 模型内部提供了与Java 的连接,而外部程序接口(External Authoring Interface )实质是一个与VRML 插件相联系的Java 包,它主要由3部分组成:vrml 、vr ml .node 和vrml .field ,另外还包括一个br owser 类.E AI 允许Java 主要以3种方式访问VRML 中的模型[4,5].(1)可以发送一个事件到VR ML 模型中的节点的事件入口;(2)可以收到VRML 中节点的事件出口发出的最新值;(3)当VR ML 中节点的事件出口发出一个事件时,能得到一个通知,激活callback 方法.在Java 中使用E AI 实现和VRML 模型之间的相互通信,从而灵活的控制模型的动态效果.更进一步值得指出的是Browser 类,该类定义了与HT ML 页面中的Applet 通信的接口.Br owser 类的基类是I -Browser 接口类,封装了VRML 模型,在Java 中建立Br owser 对象后即标识了一个唯一的VRML 模型空间.并由此获得对VR ML 模型中以定义节点的引用,这样就可以把HTML 、VRML 和Java 结合起来,实现交互式的Web 模型库.具体实现方法是:把经过编译的Java .class 文件添加到VRML 的Script 节点的url 域,然后通过HT ML 文件的标记〈E MBED 〉和〈OBJEC T 〉包含在HT ML 文件中.再把Java Applet 通过HTML 的标记〈C ODE 〉包含在HT ML 文件中,这样包含在同一个HTML 文件的Java Applet 和VR ML 中的模型可以相互访问.虽然VR ML 的内部Script 可以动态生成VR ML 场景,并可利用JavaScript 灵活的网页设计功能,在Web 页面上增加许多录入手段和输出显示,但和VRML 类似,所有的JavaScript 都融入到VR ML 程序中,无法实时修改参数.2 交互式工程制图模型库由于外部编程接口(E AI )和VR ML 模型高度的访问能力,选择其作为VR ML 和Java 的接口来实现交互式模型库.本文采用了3层Browser /Ser ver 系统结构,图1显示了系统的功能框图.数据库主要存储模型及其投影图.模型分组存储,比如在两个模型相贯中分为圆柱和圆锥相贯等.投影图是在模型默认的视点方向上的投影,也就是正投影.一个模型文件对应一个投影图文件.投影图文件采用AUTOCAD 绘制,然后转化成VRML 格式的文件存储在库中.Java W eb 服务器提供数据库操作,信息提取主要是找到模型文件和投影图的对应关系.VRML 模型中的交互功能通过Java .class 文件实现模型的动态效果.以根据用户选择模型相贯线的参数调整模型的尺寸大小为例,说明控制过程.在参数选择栏中规定几个相贯线变化的临界值,每一个临界值对应一个switch 节点中的值(在switch 节点中不同的值可对应不同的空间造型),Java 来控制switch 节点中的值的变化.这样用户选择不同的参数就可以浏览到不同大小的模型及其产生的相贯线.用户交互的部分用Java Applet 编程实现.以下是运行实例中实现交互功能的部分Java Applet 代码:i mport java .a wt .*;i mport java .a wt .event .*;i mport java .applet .*;i mport vrml .external .*;i mport vrml .external .Bro wser ;i mport vrml .external .Node ;i mport javax .s wing .*;public class Column -taper extends java .applet .Applet {Brows er brows er ;251第2期王兴建等:基于VR ML 和J AVA 的交互式工程制图Web 模型库的建立 Node dia meter1,diameter2,diameter3; …… public void init () {//获取当前VR ML 浏览器的句柄browser =Bro wser .getBrowser (this );try {//获取组成部件节点的句柄 diameter1=Brows er .gerNode (“Col -parameter1”); diameter2=Brows er .gerNode (“Col -parameter2”); diameter3=Brows er .gerNode (“Col -parameter3”); //获取组成部件节点事件入口的句柄 dmt1=(EventInMFString )Diameter1.getEventIn (“set -dmt1”); dmt2=(EventInMFString )Diameter2.getEventIn (“set -dmt2”); dmt3=(EventInMFString )Diameter3.getEventIn (“set -dmt3”); //获取组成部件颜色节点的句柄 c olumn -taper0=browser .getNode (COL1); c olumn -taper1=browser .getNode (COL2); c olumn -taper2=browser .getNode (COL3); //获取组成部件颜色节点事件入口的句柄 diffus eColor1=(EventInSFcol or )col umn -taper0.getEventIn (“s et -dif -fus eCol or ”); diffuseCol or2=(EventInSFcol or )col umn -taper2.getEventIn (“s et -dif -fuseCol or ”); diffuseCol or3=(EventInSFcol or )col umn -taper3.getEventIn (“s et -dif -fuseCol or ”); } …… }3 结论Java 的引入为VR ML 提供了强大的编程能力以及网络访问能力,使VR ML 这种描述性语言对各种需求功能的扩充成为可能.VRML 完成场景的描述和接口的定义,真正的交互和高级应用让Java 来完成,从而很好地实现了虚拟场景的人机交互的功能.正是由于Java 和VR ML 的结合,使它们成为创建基于网络的大规模虚拟环境的理想综合平台,本文中模型库的建立正是基于这一平台,如能将Ja -va 、VR ML 、Java3D 结合将达到更好的效果.本文的课题在进一步研究之中.参考文献[1]汪兴谦.VR ML 与Java 编程实例[M ].北京:中国水利水电出版社,2002.[2]阳化冰.虚拟现实构造语言[M ].北京:北京航空航天大学出版社,2000.[3]Laura L .Java2[M ].北京:清华大学出版社,2002.[4]朱正强,孔竞飞.基于VRML -JAVA 的可视化装配及其原型系统实现[J ].系统仿真学报,2001,13(4):586.[5]杜湘瑜.一种基于VRML -JAVA 的分布式虚拟环境模型及其实现[J ].计算机工程与应用,2002,1:132.Building of Interactive Engineering Drawing Model Bank Using VR ML and JAVAWANG Xing -jian , LI Li , CHEN Xue -ling , LIU Si -song(Colle ge of Applied Nucl ear Tec hnology and Automate d Enginee ring ,Chengdu Unive rsity of Technology ,Chengdu 610059,Sichuan )A bstract :VRML is a virtual reality modeling language and a Web -oriented format used on the Internet .The language possesses the fol -lowing capacity :3D modeling ,animation ,interactive and rendering .Java is a very flexible 、transplantable and Object Oriented Programmin g language .This paper presents a method which is based on the interface of VRML and Java ,uses Java to write scripts ,makes the model to re -spond more sens itively to the user and the user control the model more accurately .This method can compensate VRML 's defect .Using this method ,we design a 3layerB /S structure flow chart ,and realize some functions of a model base .Key words :Model base ;Java ;Web ;Interactive ;Interface 2000MSC :68U05(编辑 李德华)252 四川师范大学学报(自然科学版)28卷。