(计算机应用技术专业论文)基于空间可视化图形的协同设计系统的研究.pdf_第1页
(计算机应用技术专业论文)基于空间可视化图形的协同设计系统的研究.pdf_第2页
(计算机应用技术专业论文)基于空间可视化图形的协同设计系统的研究.pdf_第3页
(计算机应用技术专业论文)基于空间可视化图形的协同设计系统的研究.pdf_第4页
(计算机应用技术专业论文)基于空间可视化图形的协同设计系统的研究.pdf_第5页
已阅读5页,还剩58页未读 继续免费阅读

(计算机应用技术专业论文)基于空间可视化图形的协同设计系统的研究.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

上海大学硕士学位论文 ! ! 塑g ! ! ! 望! ! 竺堕坚竺! ! 生! 堑坐 摘要 当前许多基于图形的设计应用系统因其应用性与工作效率要求进一步 提高,而迫切需要c s c w ( 计算机支持的协同工作) 特性。具有c s c w 特 性的设计应用系统不仅使设计师之间可以实时交流,更能及时获得客户对设 计初稿的反馈意见,从而缩短设计周期。同时,c s c w 特性还可跨越地域的 局限,使系统应用更加方便。 本文首先详细分析了协同工作系统与图形c a d 的工作特点,提出一个 基于协同虚拟环境的技术方案,给出了基于空间可视化图形的协同设计系统 的模型。 文中具体利用了v r m l 的原型节点定义,以有向无环图的形式组织了虚 拟环境中的对象。在系统的人机交互模块上通过e a i ( 外部编辑接口) , 结合j a v a 技术给用户提供了具有虚拟现实特征的交互方式。旨在利用虚拟 现实技术来增强空间图形的可视化,使人们能以最自然、最直观的方式进行 设计工作。 然后,本文采用j a v ar m i 的方式实现了系统支持c s c w 特性的基础设 施。并在其上实现了设计者共享的协同工作环境,让各个客户端之间可以实 时协同交互。同时,本文还应用了x 3 d 的最新定义,利用x m l 技术设计了 系统支持协同工作环境的数据管理与保存方式。 最后,作为系统的实例,本文实现了基于空间可视化图形的家居协同设 计系统的原型,采用了上述讨论的各主要技术。原型同时也达到了预期目标, 即缩短设计周期、提高工作效率和质量。 关键词:虚拟现实协同设计虚拟协同环境空间可视化c s c w 上海大学硕士学位论文 一 一一 塑! ! g 型望坐堡塑! 坐! ! 查:! 些! 堡 a b s t r a c t m a n yp r e s e n tg r a p h i c s c a ds y s t e m sn e e dc s c wf e a t u r e f o rt h e i r e f f i c i e n c yp r o m o t i o n ,w h i c hc a nm a k ei te a s yt oc o m m i tc o o p e r a t i v ew o r k a m o n gd e s i g n e r sa n dt oc o l l e c t i v ef e e d b a c ki n f o r m a t i o nf r o mc l i e n t s a n dt h e c s c wf e a t u r ea l s oc a nm a k et h es y s t e mw o r ka c r o s st h et e r r i t o r yl o c a l i z a t i o n t h i st h e s i s p r e s e n t s as o l u t i o nt oc o n s t r u c tav i s u a l a n a l y s i s & d e s i g n s y s t e m t o s u p p o r ts p a t i a ld a t a c s c wo ni n t e r n e tb a s e do nc o l l a b o r a t i v e v i r t u a le n v i r o n m e n t c o n c e p t w i t hv ri n t e r f a c e ,t h ec o l l a b o r a t i v ed e s i g ns y s t e mb a s e do ns p a t i a ld a t a c a l lg r e a t l yi m p r o v ei t sv i s u a l i z a t i o n ,w h i c hm a k e si tp o s s i b l et os u p p o r t p e o p l e w o r k i n gc o l l a b o r a t i v e l yi nan a t u r a l v i s u a lm e t h o d b e s i d e st h ei m p l e m e n t a t i o no ft h ev r i n t e r f a c e ,t h ec s c wi m p l e m e n t a t i o n b a s e do nj a v ar m j & t h ed a t am a n a g e m e n ti nt h ec o l l a b o r a t i v ee n v i r o n m e n t i sa l s od e t a i l e dd i s c u s s e di nt h i st h e s i s f i n a l l y ,t h i st h e s i sp r o v i d e sap r o t o t y p eo f m u l t i u s e ri n t e r i o rd e s i g ns y s t e m t o p r o v et h ef e a s i b i l i t yo f t h ea r c h i t e c t u r e k e yt e c h n o l o g yd i s c u s s e da b o v e a n dt h em o s te x p e c t e do b je c t i v e sh a v eb e e na c h i e v e d k e y w o r d s :v i r t u a l r e a l i t y ;c o l l a b o r a t i v ed e s i g n ;c o l l a b o r a t i v e v i r t u a l e n v i r o n m e n t ;s p a t i a lv i s u a l i z a t i o n ;c s c w h 原创性声明 本人声明:所呈交的论文是本人在导师指导下进行的研究工作。 除了文中特别加以标注和致谢的地方外,论文中不包含其他人己发表 或撰写过的研究成果。参与同一工作的其他同志对本研究所做的任何 贡献均已在论文中作了明确的说明并表示了谢意。 签名:重未璺墨i 堕日期垫! ! 罗。多 本论文使用授权说明 本人完全了解上海大学有关保留、使用学位论文的规定,即: 学校有权保留论文及送交论文复印件,允许论文被查阅和借阅;学校 可以公布论文的全部或部分内容。 ( 保密的论文在解密后应遵守此规定) 签名:t 垒堕憋师签名:釜型芷日期:垫瞄:墨 上海大学硕士学位论文 ! ! 竺g 坠! 竺! 生! ! 墅堡翌! 坐生坠! 坐 第一章前言 1 1c s c w 技术的发展 计算机技术的发展给人类的生活带来了巨大的变化,计算机的应用领域 已从科学计算领域扩展到社会生活的各个方面,把人们带入信息时代。人类 社会是一个群体社会,在社会分工日益细化的今天,人类社会已经成为一个 互相依存的紧密群体,更能体现人们的生活方式和劳动方式具有群体性、交 互性和协作性的特点。为了完成一项共同的工作,人们必须进行协作,因此 迫切需要利用计算机技术来克服传统协同方式的时空障碍,以提高群体协同 工作的效能。 c s c w ( c o m p u t e rs u p p o r t e dc o o p e r a t i v ew o r k ) 即计算机支持的协同工 作已经被普遍认为是2 1 世纪人类的工作方式。c s c w 这一概念最早是在 1 9 8 4 年由美国m i t 的i r e n eg r i e f 和d e c 的p a u lc a s h m a n 这两位研究人员用 于描述他们正在组织安排的有关如何用计算机支持交叉学科的人们共同工 作的课题时提出来的。协同的概念发展到“c s c w ”是人类进入信息时代的 必然产物,它是现代社会中,以人们协同工作方式为背景,以计算机和通信 技术的发展和融合为基础,以具有广泛应用领域为前提而形成和发展的。 c s c w 的出现标志着计算机应用的水平又上了一个新的台阶,实现了计算机 从单纯支持个体工作到能够同时支持群体协同工作的转化。 我们把“计算机支持的协同工作”定义f 1 1 为:地域上分散的一个群体借 助计算机及其网络技术,共同协调与协作来完成一项任务。它包括协同工作 系统的建设、群体工作方式的研究和支持群体工作的相关技术研究、应用系 统的丌发等部分。通过建立协同工作环境,改善人们信息交流的方式,消除 或减少人们在时间和空间上相互分隔的障碍,节省工作人员的时间和精力, 提高群体工作质量和效率,从而提高企业、机关、团体乃至整个社会的整体 效益和人类的生活质量,如共享文件系统提供的资源共享能力,电子邮件和 多媒体会议系统提供的人与人之间的通信支持功能,工作流和决策支持系统 的组织管理功能等。 c s c w 是一个多学科交叉的研究领域,它将计算机技术、网络通信技术、 多媒体技术以及各种社会科学紧密地结合起来,向人们提供了一种全新的工 作环境和交流方式。因此,它的应用领域相当广泛,如协同编著、电子会议、 上海大学硕士学位论文 塑! ! 韭墅望型兰堡型坚! ! 丝查:! 堡! 查 工业应用、科学协作、远程教学、工作流管理和远程医疗等等。计算机协同 工作应用系统的发展和推广会改善人们交流信息进行协作的方式,而计算机 技术的发展也必将走向计算机协同工作的方向,可见c s c w 研究的重要性是不 言而喻的。 自1 9 8 4 年c s c w 这一研究领域在i r e ng r i e f 和p a u lc a c h m a n 等人的努 力下出现以来,大量用来支持某些特定的协同领域协同应用系统( 也称为群 件g r o u p w a r e ) 已被相继的开发出来,其中某些系统已经被商品化,目前已 经得到广泛使用的群件系统包括em a i l ,桌面会议系统,工作流管理系统、 电子布告牌b b s 等。总体而言,群件的主要目标是通过连成网络的计算机 系统给具有共同目标和任务的协作参与者们提供某种类型的协作共享工作 空间,以帮助他们完成协作过程中的各种交流和交互。 总之,协同工作的研究正在逐步成为计算机领域的重要的研究方向, 并f 在向军事、商业、政府办公等应用领域扩展。并且传输的介质也由以前 的有线向无线,协同场所由固定向移动方向发展。 1 2 可视化设计技术的发展 现代的数据可视化( d a t av is u a l i z a t i o n ) 技术指的是运用计算机图形 学和图像处理技术,将数据换为图形或图像在屏幕上显示出来,并进行交互 处理的理论、方法和技术。它涉及到计算机图形学、图像处理、计算机辅助 设计、计算机视觉及人机交互技术等多个领域。 利用可视化技术,数据可以用图像、曲线、二维图形、三维图形和动画 来显示,并可对其模式和相互关系进行可视化分析。 历史证明,人类的视觉在人类的科学发现中发挥过杰出的作用。通常在 可视化方面,关键技术的出现,就是重大科学发现的前奏。望远镜和显微镜 在天文学和生物发展中的作用,就是明证。这些工具放大和扩展了人类眼晴 的功能。今天,这个道理仍然成立。可视化技术正是允许人类对大量抽象的 数据进行分析。人的创造性不仅取决于人的逻辑思维,而且取决于人的形象 思维。海量的数据只有通过可视化变成形象,才能激发人的形象思维。 虚拟现实技术的应用可以看作产品计算机辅助设计制造过程 ( c a d c a m ) 的可视化发展的一个重要方面。在工程实践中,很多问题属于 非数值计算问题。于是,现在发展起来的c a d 都集成了图形交互技术。但随 上海大学硕士学位论文 一一一 ! ! 竺业塑望! ! ! ! ! ! ! 生翌! ! ! ! 垒! 生! 堡 着v r ( 虚拟现实:v i r t u a lr e a l i t y ) 技术的实用化,它在许多领域得到应 用。将v r 技术和c a d 技术相结合,形成一个新的研究领域一一虚拟设计。 虚拟设计和传统的基于图形技术c a d 主要差别在于: v r 具有两个重要特征,即交互和实时,而传统c a d 做不到; v r 使设计者里主动状态,设计者能身临其境,如实现q u a k e 视角( q u a k e : 著名的第一人称视角动作游戏,因其率先在游戏中成功引入虚拟现实的观测 视角而闻名于世) 。而对于传统c a d ,设计者只是被动的观察者: v r 的图形真实感强,有远近、纵深的感觉,这是传统的图形c a d 所做 不到的: 在进行虚拟设计时,首先要在计算机中生成虚拟原型。通过这个虚拟原 型,我们可以做很多工作。如: 进行多方案对比,从中选出最佳方案; 设计者通过虚拟原型可以进行虚拟装配,以检查各零部件尺寸以及可装 配性,即时修改错误; 通过虚拟原型,可以进行虚拟试验,而不用再去做更多的实物试验。这 样,既节省了时间又节约了费用。 许多现实问题域本身是基于三维空间的,若采用基于虚拟现实的可视化 图形方式交互的c a d ,则会有较好的工作效率。正因为如此,v r 技术和传统 c a d c a m 的结合有着光辉的前景。虚拟设计虚拟制造也成为当今非常活跃 的、前沿的研究领域。 所以虚拟现实技术是实现此类协同工作交互环境的最佳方式。 1 3 国内外目前的研究状况 美固是v r 技术的发源地。美国v r 研究技术的水平基本上就代表国际v r 发展的水平。目前美国在该领域的基础研究主要集中在感知、用户界面、后 台软件和硬件四个方面。 在当前实用虚拟现实技术的研究与开发中日本是居于领先位置的国家 之一,主要致力于建立大规模v r 知识库的研究。另外在虚拟现实的游戏方 面的研究也做了很多工作。 、 在v r 开发的某些方面,特别是在分布并行处理、辅助设备( 包括触觉 反馈) 设计和应用研究方面,在欧洲英国是领先的。到1 9 9 1 年底,英国已 上海大学硕士学位论文 一一 ! ! ! ! 韭堂坚! i 翌堡业坚竺! ! 生! ! 鲤! 有从事佩的六个主要中心,它们是w f n d u s t r i e s ( 工业集团公司) ,b r i t i s h a e r o s p a c e ( 英国航空公司) ,d i m e n s i o ni n t e r n a t i o n a l ,d i v i s i o n l t d ,a d v a n c e dr o b o t i c sr e s e a r c hc e n t e r 和v i r t u a lp r e s e n c el t d ( 主要 从事v r 职产品销售) 。 世界上现有系统主要分为军用d v e ( d i s t r i b u t e dv i r t u a l e n v i r o n m e n t ) ,如s i m n e t ,网络游戏,如d o g f l i g h t ,n p s n e t ,d o o m ,8 0 l o 以及学院研究项目,如加拿大阿尔伯它大学的m r 工具库,瑞典计算机科研 所的d i v e ( 虚拟漫游系统) ,英国大学的a v i a r y ,d v s ,m a s s i v e 等。而这 些基于网络的v r ,多采用昂贵的设备,开发成本极高,商业化程度很低。 和一些发达国家相比,我国v r 技术还有一定的差距,但已引起政府有 关部门和科学家们的高度重视。根据我国的国情,制定了开展v r 技术的研 究,例如,九五规划、国家自然科学基金会、国家高技术研究发展计划等都 把v r 列入了研究项目。在紧跟国际新技术的同时,国内一些重点院校,已 积极投入到了这一领域的研究工作。 当前的研究将v r ,c s c w 结合起来,即关于c v e 的相对较少,而且现有关 于e v e 的研究都较为集中在探索阶段,研究的例子通常是虚拟漫游,游戏等, 与现实设计应用方面比如室内居室,建筑外观设计等相距甚远;并且通常都 是基于特别的平台与网络协议,而不能在i n t e r n e t 上工作_ 1 。因此我们 想就该技术在具体的协同设计工作中的应用作一些有意义的尝试。 1 4 课题的引出 一方面,随着网络技术的发展与应用,i n t e r n e t 逐步成熟,无疑为c s c w 提供了最广泛的支持环境。它使得世界上不同地方的人们可以不再受到地域 和范围的限制,而联系在一起工作、学习和娱乐,促迸t c s c w 的应用。目 前主流的分布式技术有:o m g 的c o r b a ( c o m m o n0 b j e c tr e q u e s tb r o k e r a r c h i t e c t u r e ) 、m i c r o s o f t 的d c o m ( d i s t r i b u t e dc o m p o u n do b je c tm o d e l ) 和 s u n 公司的j a v a r m i ( j i n i ) 【2 1 ,使得在i n t e r n e t 环境下进行分布式开发成为可 能。 另一方面,基于虚拟现实的交互方式因其能够极为自然地表现问题域本 身的数据结构( 尤其基于三维空间数据的设计工作) ,将是实现此类协同设 计工作环境的最佳交互方式【4 1 。 上海大学硕士学位论文 ! 塑! g 坠! 堕! ! 坚垡型坚! 壁空! ! ! ! ! 堡 在许多具体协同设计工作中引入虚拟现实技术会明显提高工作效率,比 如对于室内居室设计来说,如图1 1 所示:通常整个项目周期会由于2 ,3 步 之间的反复而导致开发周期的延长【5 1 。 修改意见: 如改变某物颜色 或改变某物品位置 甾淞 图1 1 居室设计项目周期示意图 f i g 1 1l i f e c y c l eo fi n t e r i o rd e s i g np r o j e c t 有了协同的三维图形表现技术,各设计师可以直接将自己的设计意图以 三维图形表现,合作者便实时地理解,并介入分析与设计工作。 图1 ,2 室内居室设计实例 f i g 1 2e x a m p l eo f v i s u a lv i e wf o ri n t e r i o rd e s i g n 并且,这种协作方式可以扩展到设计者与客户之f 刚,让客户在设计过程 中就能介入,即时地给出分析,评估等反馈意见( 比如改变如图1 2 设计中 地毯的颜色) ,明显的提高工作效率。 而协同虚拟环境cve ( c o l l a b o r a t i v ev i r t u a le n v i r o n m e n t ) 正是c s c w 上海大学硕士学位论文 s h a n g h a iu n i v e r s i t ym a s t e r st h e s i s 与v r 相结合的产物,以它为核心构造的协同设计系统使得人们能以最形象 最自然的方式进行协作。 由于现有i n t e r n e t 软硬件的限制,我们不大可能在其上实现低成本的“沉 浸式”虚拟现实系统( 利用头盔,数据手套等外设提供真三维影像与触觉) 。 但实现基于虚拟现实的三维图形交互还是可能的。而在许多具体协同设计工 作中,比如室内居室设计,将仍然明显提高工作效率。 我们提出的基于空间可视化图形的协同设计系统的研究,旨在利用现有 i n t e r n e t 软硬件技术条件,实现一个提供虚拟现实交互方式的c s c w 系统,来 支持人们跨i n t e r n e t 协同的,基于图解思考( 即形象思维占主体的思考方式, 例如室内居室,建筑外观等设计工作中形象思维) 的分析与设计工作。 1 。5 本文的组织 本文给出了一个基于空间可视化图形的协同设计系统的设计与实现方 案,并在此基础上实现了家居协同设计的实例。 本文主要包含以下内容: 第一章介绍了现有图形c a d 与协同设计系统基本情况,引出所要研究的 课题及其特点。 第二章主要通过分析图形c a d 与协同设计系统的工作特点及其模型和 体系结构,给出了基于空间可视化图形的协同设计系统模型和体系结构。 第三章主要介绍在系统人机交互模块上,利用v r m l 结# j a v a 技术提供 给用户具有虚拟现实特征的交互方式,来使用户访问虚拟场景。 第四章介绍利用j a v a 的网络支持特性,采用r m i 的方式实现了系统支持 c s c w 特性的基础设施,并在其上实现了各客户端之间的实时协同交互。 第五章介绍了应用了x 3 d 的最新定义,采用x m l 技术实现了支持协同工 作环境的数据管理与保存。 第六章介绍了基于空间可视化图形的家居协同设计系统的原型,上述讨 论的主要技术在系统原型中得到了实现。 第七章对本文的内容作了总结,并讨论了进一步将要开展的工作。 上海大学硕士学位论文 兰塑竺堡坠! 型巴! 坚生坚苎! ! ! 空! :堡坐 第二章开发技术与系统结构 2 1 开发技术与运行环境 以虚拟现实造型语言( v r m l v i r t u a lr e a l i t ym o d e l i n gl a n g u a g e ) 为核心技术的第二代w w w 的到来,为虚拟现实与i n t e r n e t 的结合提供了一 条新思路,也为基于i n t e r n e t 的协同工作的发展提供了一种新的虚拟现实 的工作环境和交互技术【6 1 。 j a v a 是纯面向对象的语言而且具有良好的跨平台性,更重要的是它能 与v r m l 良好结合。因此我们平台的各种逻辑将由j a v a 来实现,具体的开 发工具选用j b u i l d e r ,以便快速方便地生成g u i ( g r a p h i c a lu s e ri n t e r f a c e : 图形用户界面) 。 最终系统的运行环境对客户端要求相当宽松,只需能运行b r o w e r 与 j v m ( j a v a v i r t u a lm a c h i n e :j a v a 虚拟机) 即可。 服务器端可采用w i n d o w s 2 0 0 0s e r v e r ,运行j v m ,再配备s q ls e r v e r 2 0 0 0 作为数据库。 在具体实现上,我们采用的是基于b r o w s e r s e r v e r 的结构,以保证系统 最广泛的适用性与灵活性。 2 2 系统结构与功能 根据我们系统所要实现的功能特点,结合所采用的技术手段,我们可以 大致得到基于空间可视化图形的协同设计系统的工作原理,如图2 1 所示。 首先,由一些成熟的三维建模软件( 如3 d sm a x ) 制作出设计初稿, 导入系统。我们的系统采用v r m l 表示三维世界,因此该导入过程得到了 广泛的支持( 3 d s m a x ,m a y a 等均能以v r m l 格式输出) 。原始场景导入 后,协同工作才真正开始。对于每一个参与者,可以通过一个g u i 的界面 或直接用鼠标与三维虚拟场景交互,来浏览或改变虚拟场景。这个过程通过 e a i ( e x t e r n a la u t h o r i n gi n t e r f a c e 外部编辑接口) 实现。这些操作将 通过调用服务器端定义的r m i 函数来通知服务器。服务器随后做两件工作; 用数据库记录用户操作与虚拟世界的改变;广播这个操作给所有在线用户。 在线的其他用户的客户端程序得到这个广播信息后,便相应的更新本地的虚 拟世界。通过这个过程,可视化协同设计系统中的各个客户机之间便联系起 上海大学硕士学位论文 ! ! 塑g 堕! 旦! 盟! 垡塑m ! ! ! ! 垒三! ! ! ! ! 来,达到进行协同设计工作的目的。这就是图中“虚拟连接”所指。 图2 1 系统的工作原理示意图 f i g 2 1s k e t c ho fs y s t e m a r c h i t e c t u r e 2 2 1 系统的体系结构 仔细分析系统的功能要求,进一步细化图2 i ,依照b r o w s e “s e r v e r 的结 构可以得到系统较为详细的组织结构,如图2 2 所示。其中服务器端包括 c s c w 管理服务器,w e b 服务器,配有管理数据库。客户端由用户通i s - b r o w s e r 来介入系统。 上海大学硕士学位论文 s h a n g h a iu n i v e r s i t ym a s t e r st h e s i s 客户机a 客户机b客户机n 图2 2 系统结构 f i g 2 2s y s t e ma r c h i t e c t u r e 其中客户机上的j a v aa p p l e t 部分完成用户与虚拟场景的交互,并将信息 传到位于c s c w 服务器端的j a v a 应用程序。服务器端的j a v a 应用程序根 据各客户机的信息来建立协同虚拟环境,维护各客户机场景的一致,并依照 功能要求,将某些数据保存到数据库中。这些过程就是前面所描述的工作原 理的工程实现。 2 2 2 服务器端结构 更进一步分析,服务器端的c s c w 服务器主要用来维护虚拟环境中各物 体的状态,从而来维持整个虚拟世界。管理数据库用来维护每个参与用户的 状态,包括增删用户,并纪录用户状态与操作的历史信息备查。 上海大学硕士学位论文 ! 燮型旦! ! ! ! ! 堡! 堡坚竺塑生! 塑! 生 服务器端将运行编制好的服务端j a v a 进程,提供服务接口,用户的操 作通过远程调用服务端的方法,来改变数据库状态。同时,系统通过广播的 消息来改变各客户端的状态,完成交互。其具体的结构如图2 3 所示: c s c w 服务器 j a v aa p p l ic a t io n c s c w 业务逻辑 交互信 息预处 理 协同工 作环境 服务 动态控 制信息 处理 3 d b c 在线用户群 d b m s 图2 3 服务器端结构 f i g 2 3a r c h i t e c t u r eo fs e r v e ra p p li c a t i o n s c s c w 服务器的业务逻辑j a v a 进程总体功能应至少包含c s c w 的基础通 讯设施一进行交互信息的预处理,动态控制信息处理一提供用户实时协同设 计的能力,以及协同工作环境的基本维护一包含用户管理,交谈管理( 提供 用户直接基于文本输入的交谈) 等模块。 考虑到现有i n t e r n e t 瓶颈,与实现的工作平台通用性,不妨建立一套 基础模型库。在室内设计系统中,其实质就是各种家具与饰物。这样,交互 就集中在小数据量的参数传递上,却可以完成相对庞大c a d 工作。 2 2 3 客户端结构 系统客户端主要完成用户与虚拟场景的交互,并与服务端通信。其更具 体的结构如图2 4 所示: i o 上海大学硕士学位论文 ! ! 竺鲤! ! 竺! 生! 望塑坚竺塑! ! ! ! ! 坐 图2 4 客户端结构 f i g 2 4a r c h i t e c t u r e o fc l i e n ta p p l i c a t i o n s 该客户端结构可以理解为由3 层构成: 消息控制层负责消息的收发控制,用以形成虚拟世界的最新状态,事实 上是通过与服务器端3 a v a 进程互通信息的j a v aa p p l e t 实现的。 虚拟实体层是虚拟环境的空间数据( 如建筑设计方案,城市规划方案, 室内居室设计方案等等) 在现实计算机上的结构化表示,我们主要采用v r m l 技术实现。 可视表示层功能是将结构化的空间数据以三维图形的方式呈现给用户。 主要由支持v r m l 的浏览器构成。 在我们的实验系统中,由于基于i n t e r n e t 带宽限制,我们将着重考虑 以三维图形显示为主的v r 输出,人机交互部分主要指客户端页面,它将有 三大部分组成,结构如图2 5 : 上海大学硕士学位论文 ! ! ! 堡! 型堕! ! ! ! 堡! 堕坚! ! 塑! ! ! 堕! 堕 图2 5 客户端人机交互部分结构 f ig 2 5c o m p o n e n t so fh u m a n m a c h i n e i n t e r f a c e 其中客户端的v r m l 视区是用户观察虚拟场景的窗! e l ,而右侧为用实现 操作的工具集界面,供用户完成各种操作,来与虚拟场景交互。顶端的j a v a a p p l e t 负责将用户端的工作信息与服务器交互,用以实现c s c w 特性【7 1 a 上海大学硕士学位论文 i ! ! ! 塑墅望! i 兰堡生望磐! 唑:! ! ! 坐 第三章三维图形编辑工具的设计与实现 3 1v r m l 技术的应用 一个协同环境必须提供个共享的空间供参与者在此工作与协作。在我 们这个系统中,这个空间即是一个跨i n t e r n e t 的三维虚拟环境。由于 i n t e r n e t 上流行的是t c p i p 网络协议,对于高质量的图像信息的传输也不 是非常令人满意,而对于三维造型虚拟场景的数据传输则更难以胜任。而且 目前i n t e r n e t 对于用户交互界面的支持也是有限的,h t m l 只能对静态的文 本和图像进行标记,在交互方式上明显达不到虚拟现实的要求。因此,如何 利用现有的i n t e r n e t 技术,来组建一个运行于i n t e r n e t 上的三维虚拟环境 是值得讨论的内容【6 】。 v r m l 被称为虚拟现实造型语言,是一种用来描述交互式3d 对象和场 景的文件格式,可以实现在i n t e r n e t 、i n t r a n e t 和本地客户系统上的交互 式三维多媒体虚拟场景。 在此,还有必要提到c u l t 3 d 。c u l t 3 d 是种有力的3 d 渲染技术,通过 利用这种技术可以向所有i n t e r n e t 用户传输具有空前质量和速度的实时交 互性物体。可以很容易的把m a y a ,3 d sm a x 等先进三维软件制作的模型输 出到各种数字媒介上。 c u l t 3 d 的内核是基于j a v a ,它可以嵌入客户自己开发的j a v a 类,具有 很强交互和扩展性能。 c u l t 3 d 虽不同于v r m l 已是国际标准,但它结合先进的压缩技术并支持 多重阴影效果,贴图和双线性滤镜,在图像质量居于领先地位。因此在某些 强调渲染质量的场合下,c u l t 3 d 也不失为另一可选方案。 本系统为了利用国际标准开放性,最终还是采用了v r m l 。v r m l 作为国 际标准,可被绝大多数的浏览器支持。有众多第三方插件,如c o r t o n a , b l a x x u n c o n t a c t 等,可强化v r m l 的可视化效果( 更好的材质,光照,阴影 表现) 。本系统采用v r m l 来实现虚拟世界,不仅使得在i n t e r n e t 上实现虚 拟世界较为方便,更重要的是可以利用v r m l 的开放性。基于空间可视化图 形协同设计系统之所以能方便的导入成熟建模工具( 如3 d sm a x 等) 产生的 场景,就是基于这一点。 以v r m l 建立起来的虚拟环境,经过浏览器的解释( 就是2 2 3 节中提 上海大学硕士学位论文 曼塾呈翌韭型望翌! 兰型塑丝竺堕塑塾型! 到的可视表示层的功能) ,表现给用户的便就是我们所关注的空间可视化图 形。它是系统人机交互部分的核心。 3 2 编辑对象的表示与实现 3 2 1 基于d a g 的对象场景图 v r m l 提供了一套基于节点描述方式,可以让开发者定义虚拟世界中物 体的各种属性( 包括外观的,与行为方面的) 。因此,用v r m l ,我们能比较 容易的在i n t e r n e t 上建立一个三维虚拟环境。其关于造型的节点结构如图 3 1 所示。 图3 1v r m l 关于造型的节点层次关系 f i g 3 1 v r m ln o d e ss t r u c t u r e 除了外观方面,v r m l 还有探测器( s e n s o r ) 节点。一个行为的发生, 例如我们按下键盘按键,在v r m l 程式中,必须要有s e n s o r 节点,如同人体 的感觉器官,才能知道使用者有行为发生。进而依据脚本( s c r i p t ) 节点中 的设定,产生预定的反应。由于脚本的运行可以通过路由的指定来激发其他 脚本的运行,虚拟世界中各物体的关系也就体现出来了。 对于图1 2 的虚拟环境,我们就有相应的模型结构如图3 2 上海大学硕士学位论文 ! ! 塑g 坠! 竺竺兰坚! 生坚竺! ! ! ! ! ! ! 坐 图3 2 设计图1 2 的v r m l 模型 f i g 3 2v r m lm o d e l f o rf i g 1 2 这完全就是以d a g ( d i r e c t e d a c y e l i cg r a p h 有向无环图) 的方式组 织的。这些图形物体及其各属性都将是图中的顶点。 对于实际应用中可能要求的节点类型,v r m l 内置的5 4 种内部节点类型 可能无法满足。v r m l 提供了实现节点类型扩充的基本机制节点类型,称为 原型( p r o t o t y p e ) 。新节点类型是根据已定义的( 内部的或原型的) 节点类 型定义的,一旦定义,原型节点类型就可以如同内部节点类型一样在场景图 中实例化。原型可以在当前文件中定义并使用,也可以在其它文件中定义, 即外部原型。外部原型提供了一种使节点类型能够跨越网络的机制。 原型定义分为接口声明与原型主体定义。接口声明之后是原型主体定 义。原型实际上是一个场景图,由一个或多个根节点、嵌入的p r o t o 语句和 r o u t e 语句构成,其中的第一个节点类型确定原型实例在v r m l 文件中的使 用方法。例如,如果原型定义中的第一个节点是m a t e r i a l 节点,则只要可 以使用m a t e r i a l 节点的地方,原型实例都可以使用。原型定义中定义的其 它节点及其附带的场景图都不进入原型实例所在的变换层系,但可以被原型 定义中的r o u t e 语句或s c r i p t 节点引用。 原型定义中节点的域、入事件、出事件可以通过i s 语句和接口声明中 上海大学硕士学位论文 一 ! ! 型篓型尘竖! 坚坚竺塑生! 堑! 堡 的域、入事件、出事件建立关联。关联实际上相当于把原型定义中的这些域 和事件公开作为原型的域和事件。关联的基本规则是域和域、入事件和入事 件、出事件和出事件对应关联,原型定义中的外露域可以和接口声明中的域、 入事件、出事件或外露域关联。 有了原型节点这个自定义的手段,我们便可方便地以d a g 的方式实现系 统中的虚拟场景图了。 3 2 2 利用原型节点实现对象场景图 我们的系统将以居室设计为想象工作实例,将着重考虑物体的外观特 性。同时,其对象的描述与编辑工具都将围绕这个方面。我们先来试想一下 图3 4 中最重要一类的节点的情况: 通常,这些节点代表着各种家居用品,可能是电器,家具。在家居设计 中,它们是设计工作的主要操作对象。因此系统中,它们着重表现出外貌的 属性。这就是说,在这里一台电视机没有电气性能的描述,但几何外观,颜 色,纹理却是最主要考虑的属性。 所以,作为该系统中的任一被操作的对象,它的原型定义应包含足够的 描述各个外观属性的域。比如椅子可以是: p r o t oc h a i r e x p o s e d f i e l dm f s t r i n gi d “” # 物体i d ,唯一标识对象 e x p o s e d f i e l dm f s t r i n gn a m e “” # 用户对其的命名,方便引用 e x p o s e d f i e l ds f c o l o rl e g c o l o r0 8 0 40 7 # 椅子腿的颜色 e x p o s e d f i e l ds f c o l o fb o d y c o l o f0 6 0 60 1 荐椅背与椅面的颜色 e x p o s e d f i e l ds f v e c 3 ft r a n s l a t i o n000 # 用于移动的向量值 e x p o s e d f i e l ds f r o t a t i o nr o t a t i o n000l # 用于旋转的向量值 e x p o s e d f i e l ds f b o o lv i s i b t et r u e# 可见属性 e x p o s e d f i e l ds f b o o ld r a g e n a b l e dt r u e # 属性标示是否可被鼠标拖拽 e x p o s e d f i e l ds f v e c 3 fs c a l e l1l# 缩放比例 e x p o s e d f i e l dm f n o d ee h i l d r e n # 子节点 e v e n t i nm f n o d ea d d c h i l d r e n # 入事件增加子节点 e v e n t i nm f n o d er e m o v e c h i l d r e n # 入事件删除子节点 e v e n t o u ts f b o o l is a c t i v e # 出事件标示是否为活跃状态 上海大学硕士学位论文 ! ! 堡驶生旦型兰! 苎生! 坚竺! ! 生里堡! ! ! e v e n t o u ts f v e c 3 ft r a n s l a t i o n c h a n g e d # 出事件标示是否有旋转或移动 f g e o m e t r yd a t a # 几何外形数据 ) 而桌子可能是: p r o t ot a b l e e x p o s e d f i e l dm f s t r i n gi d “” # 物体i d ,唯一标识对象 e x p o s e d f i e l dm f s t r i n gn a m e “” # 用户对其的命名,方便引用 e x p o s e d f i e l ds f c o l o rl e g c o l o r0 8 0 40 7 # 桌子腿的颜色 e x p o s e d f i e l ds f c o i o rt o p c o l o ro 6 0 60 1 # 桌面的颜色 e x p o s e d f i e l ds f v e c 3 ft r a n s l a t i o n0 00 # 用于移动的向量值 e x p o s e d f i e l ds f r o t a t i o nr o t a t i o n0 001 # 用于旋转的向量值 e x p o s e d f i e l ds f b o o l v i s i b l et r u e# 可见属性 e x p o s e d f i e l ds f b o o ld r a g e n a b l e dt r u e # 属性标示是否可被鼠标拖拽 e x p o s e d f i e l ds f v e c 3 fs c a l e1 11 # 缩放比例 e x p o s e d f i e l dm f n o d ec h i l d r e n # 子节点 e v e n t i nm f n o d ea d d c h i i d r e n # 入事件增加子节点 e v e n t i nm f n o d er e m o v e c h i l d r e n # 入事件删除子节点 e v e n t o u ts f b o o li s a c t i r e # 出事件标示是否为活跃状态 e v e n t o u ts f v e c 3 ft r a n s l a t i o n c h a n g e d # 出事件标示是否有旋转或移动 i - g e o m e t r yd a t a # 几何外形数据 1 其中关于颜色的属性域用关键字i s 关联到相应部件的材质节点漫反射 颜色上;t r a n s f a t i o n ,r o t a t i o n 用于移动、旋转的域用i s 关联到几何体 的位置坐标上。其他自定义属性域、入事件、出事件也用i s 关键字关联到 其表示的相应节点上。 可以看到,除了由于各自外形特征,两者的部分域定义有些差异,如: 椅子主体颜色e x p o s e d f i e l ds f c o l o rb o d y c o l o r 上海大学硕士学位论文 ! ! 磐g ! ! ! 竺! 坐! 堡盟坚! 壁型! ! 坐坐 与桌面颜色一e x p o s e d f i e l ds f c o l o rt o p c o l o r 当然还有各自的几何外形数据一g e o m e t r yd a t a ,而其它部分极为相似,都 用a d d c h i l d r e n ,r e m o v e c h i i d r e n 增删子节点;t r a n s l a t i o n ,r o t a t i o n 向 量分别用以移动与旋转等等。因此,可以较为方便以类似的方法来构造系统 中各类虚拟的家居用品。 除了表示对象的名称与该对象的几何数据外,还有许多域,分别表示当 前该对象的各个属性。这样的结构可以实时记录对象状态,同时为编辑工具 提供操作的数据接口

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论