· 基于TerraExplorer Pro的校园三维浏览系统开发
李 佼 ,吴健平,姚申君
(华东师范大学 地理信息科学教育部重点实验室,上海,200062)
摘要:校园三维浏览系统基于三维可视化和地理信息系统等技术实现校园三维浏览,是校园三维地理信息系统的重要组成部分。TerraExplorer Pro是SkylineGlobe系列软件中的一个软件,在三维浏览、分析的应用和开发方面功能强大。message是TerraExplorer Pro中对象的基本属性之一,它提供为三维场景中所有对象添加信息的功能。利用TerraExplorer Pro在三维浏览等方面的优势,探究构建校园三维浏览系统的方法。本文重点研究TerraExplorer Pro中对象的message属性,并以上海华东师范大学校园为例,阐述基于TerraExplorer Pro,利用脚本语言定义message进行校园三维浏览系统开发的方法。
关键词:三维可视化;三维校园;校园浏览系统
The Development of Scanning System of Three-Dimensional Campus Using TerraExplorer Pro
LI Jiao(李佼) WU Jian-ping(吴健平) YAO Shen-jun(姚申君)
(Key Lab. of Geographic Information Science, Ministry of Education, EastChinaNormalUniversity, Shanghai, 200062)
Abstract: The scanning system of three-dimensional campus is an important part of three dimensional campus GIS based on integrated Technology of three dimensional visualization and geographic information system. TerraExplorer Pro which is a part of software series of SkylineGlobe, is powerful on application development of three-dimensional visualization and analysis. Message, one of general attributes of an object in TerraExplorer Pro development environment can add information to all the objects. The study of the common approach of designing the scanning system of three-dimensional campus relies on the advantages of the TerraExplorer Pro software. The article concentrates on discussing the usage of message. The common approach of designing the scanning system of three-dimensional campus by script languages based on TerraExplorer Pro software is put forward in this article after the application of the 3D campus of EastChinaNormalUniversity.
Key words: three dimensional visualization; three-dimensional campus; campus scanning system
1 引言
TerraExplorer Pro(以下简称TE Pro)是SkylineGlobe系列软件中的一个软件,用于创建、编辑、注记和发布具有实景效果的三维场景,并可以在上面添加二维或者三维的物体、路径、场所以及地理信息文件,建立三维地理信息系统,供用户浏览、分析空间数据。
目前,已有很多用户利用TE Pro建立三维地理信息系统,如泰瑞数创科技(北京)有限公司开发的基于三维地理信息系统的移动城市_NGCC ;北京时空信步科技有限公司实现的浙江苕溪流域网络三维地理信息系统等。TE Pro技术已在城市规划、环保应用、能源管理、地质勘探、房产应用等领域得到了广泛的应用:王爱国等利用Skyline的相关技术实现了3D GIS在国土资源信息管理(2007)[1];黄丽虹,朱大明等对SkylineGlobe中的TerraExplorer Pro在数字城市用地规划建设中的应用进行了研究,从而实现三维数字城市的模拟建设(2007)[2]。
校园三维浏览系统是以航空影像数据为基础,基于三维可视化和地理信息系统等技术建立三维校园景观模型,与校园地理信息和其他校园信息结合,从而真实地反映校园自然景观和人文建筑风格,充分展示美丽的校园风貌的信息系统,是校园三维地理信息系统的重要组成部分。本文重点讨论TE Pro中对象的message属性,介绍使用脚本语言设计定义的message开发校园三维浏览系统的方法,并以华东师范大学为例,阐述构建校园三维浏览系统的一般方法。
2 TE Pro中对象的message创建
message是TE Pro中对象的基本属性之一,它能为三维场景中所有对象添加信息,是利用脚本语言定制系统的途径之一。
message可以是一串文本字符、一个html网页、脚本语句编写的程序或者其他类型(如:图片、文档等)的文件,这些不同类型的文件都可通过message赋予某一对象,当点击此对象时在TE Pro窗口中的左上、左下或主容器(upper left, lower left, main containers)中的选项卡、消息栏(message bar)、默认浏览器(floating browser)和弹出窗口(floating popup)中显示或执行。message适用的范围很广,它可以添加到任何物件(objects)、视点(locations)、路径(routes)等对象的属性里,也可以直接在信息树中添加(Information Window message element),还可以作为启动(Startup) message在工程启动的时候显示。
一般而言,创建对象的message都是通过对象的属性窗口(properties sheet)(图1)进而打开创建message对话框(create message)(图2)。不同对象的message都有对应的message属性值,无message时,其message属性值为-1,即要清除已有的message可使用message编辑对话框中的重置按钮(Reset),也可将message的属性值设为-1。
message的类型有文本型(Text)、网页或图片型(HTML/Image)、文件型(File)、脚本型(Script)、链接型(Links)及属性型(Attributes)。在创建message对话框中,可根据需要设置各项参数:类型(type)、路径(path)、message显示的位置(client)、弹出窗口的属性参数(popup option)等。由于message类型的不同,创建message对话框中的参数也随之变化。
1)
文本型message是用户在系统开发过程中输入的文本信息,多用于总括性的介绍,其显示位置可以为消息栏、浮动的弹出窗口或窗口的选项卡中,创建此类型的message只需在文本输入框(图2)中输入相应的内容。
2) 网页或图片型(HTML/Image)message
网页型message是已有的html网页或图片中的信息,可以通过定义链接地址和路径来创建,在TE Pro的任何容器中以及以浮动窗口的的形式显示(图3)。
当message的显示形式为浮动窗口(floating popup)时,可对此窗口进行添加标题(caption),控制此message显示后持续的时间(timeout)、显示位置(position)和尺寸(size)等设置。
3) 文件型(File)message
文件型message是已有的文件中的信息,可以是包括图片在内的任意类型的文件,创建方法与网页型message类似,也是定义文件的路径或链接地址。需要指出的是,所引用的文件信息都通过网页浏览器打开,当引用浏览器支持的文件类型时,message可以显示在TE Pro中的任何容器中;但出于信息安全的考虑,当浏览器不支持所引用的文件格式或存在信息安全的限制时,浏览器将提示出错或警告。
4) 属性型(Attributes)message
属性型message包含图、文、表多种信息, 其message创建窗口为用户提供了标题(title)、图片(image)、详细描述(description)、属性表(attributes)等组成的属性模板(图4),用户只需在相应的位置添加信息即可。属性表中包括标题、描述、工具提示(tooltip)等内容。
在此需要注意图片的访问形式,可以是有效的链接地址或路径,如果是通过路径的方式访问本地图片,则最终对系统进行打包输出时此处的图片将不能被复制到数据包中,即如果系统有远程使用或网络发布的需求时图片将无法显示。
5) 链接型(Links)message
链接型message的创建对话框格式与属性型的类似,它提供标题(title)、图片(image)、详细描述(description)、链接列表(links)等信息模板,用户可自定义链接标题和关于此链接的提示。
6) 利用脚本语言定义的message
利用脚本语言定义的message可以向TE Pro界面中添加自定义格式、内容的信息,开发自己的三维可视化应用系统,实现用户、系统与三维世界的交互操作。
TE Pro API提供一系列COM接口,可控制三维场景中所有的对象及其动作。可用于客户化定制TE Pro应用系统,提供扩展功能用于访问外部数据,例如数据库、GIS文件和实时数据。所有COM提供的接口既可以通过脚本语言(如javascript),也可以通过C++或Visual Basic访问。
利用脚本语言定义的message可以使用JavaScript或者VBScript脚本语言[3]进行编程,或者两者相互调用来完善分析功能,创建方法有两种,一是在创建脚本型(Script)message时,直接在代码栏中输入Script代码;二是使用网页或图片型(HTML/Image)message显示基于脚本语言制作的html网页。
3 华东师范大学校园三维浏览系统开发
华东师范大学校园三维浏览系统作为学校的一个展示平台,旨在直观展示校园风貌,帮助浏览者从各方面了解学校的整体情况,并对校园游览进行直观导航[4]。
3.1系统设计
本系统以华东师范大学为例,在TE Pro环境下实现三维校园的建设,包括校园地形、主要建筑、绿化景观及设施等;并着重围绕message来设计系统功能(图5):
1) 校园信息浏览
该模块通过为校园主要建筑添加message,结合三维窗口的显示,实现校园信息的可视化浏览。
2) 校园景点展示
该模块通过设置校园景点标示,并为这些标示添加message,实现了校园景点的展示,用户可以直接在三维窗口中点击感兴趣的景点标示进行浏览。
3) 校园游览路线
该模块的设计主要结合脚本语言定义的message来实现校园基本游览和用户自定义游览路线的查询。
3.2校园三维场景的构建
三维场景包含三维地形平台、空间对象以及相关专题信息等,本文基于SkylineGlobe系列软件构建校园三维场景。SkylineGlobe软件包括TerraBuilder、TerraExplorer Pro以及TerraGate主要软件,其中TerraBuilder用于建立三维地形数据库平台,TerraExplorer Pro用于添加或者导入专题信息,构建三维场景。
TerraBuilder 是用于融合大量的影像、高程和矢量数据,以此来创建精确三维地形模型,能迅速创建、编辑和维护三维地形数据库的3D 平台构造器。在TerraBuilder下建立三维地形数据库的步骤如下:
1)获取影像或者航片数据和DEM 数据;
2)将影像或者航片数据和DEM 数据甚至矢量数据添加到TerraBuilder 中,并且利用其提供的数据处理工具对原始数据进行裁剪、调色等处理;
3)将影像或者航片数据和DEM 数据进行融合;
4)最后生成地形数据库( *. mpt )。
在TE Pro中融入三维地形数据(*.mpt)、三维景观数据[5]以及二维GIS数据,创建*.fly文件,打包后形成场景图。至此,基于TE Pro的三维场景就搭建完成了,接下来可以利用TE Pro提供的工具进行二次开发,在实现基本功能(如显示控制、空间量算)的基础上可以加入高级分析功能,以适应各个不同行业的需求。
本文借助TerraBuilder将上海市遥感影像数据与DEM数据进行裁剪和融合,创建华东师范大学三维地形数据库(*.mpt),然后在TE Pro中导入此地形数据,并在此基础上添加已有校园典型建筑模型及其他专题数据等,从而完成华东师范大学三维场景的创建。
3.3 message创建
为了进一步阐述应用message构建校园三维浏览系统的方法,以华东师范大学为例,按照message的类型进行介绍:
1) 文本型(Text)message
学校简介、游览过程中所经景点、院系建筑等的文字介绍可通过定义文本型(Text)message实现。以为游览过程中添加具有解说作用的文本型(Text)message为例:游览路线的设计是通过设置多个关键视点(waypoints)来创建游览路径(Route)完成,关键视点(waypoints)的属性中具有message选项,将相应的文字介绍输入创建message的对话框中的文本(Text)栏。由于游览路径的设计中对每个视点显示的时间不同,可根据实际情况设置message的popup Option中的timeout参数来控制message的显示时间(图5)。
2) 网页或图片型(HTML/Image) message
本系统针对HTML/Image message的应用之一是将学校logo、欢迎问候语和制作单位等内容制作成图片,将其定义为启动(Startup)message于系统启动时在message bar中显示(图6)。
3) 文件型(File)message
校园景点模块中为校训碑设置的message为WAV格式的音频文件,当用户经过时将自动播放华东师大校歌。
4) 属性型(Attributes)message
校园信息浏览模块中图书馆的信息通过定义属性型(Attributes)message来实现查询。其中属性表中的内容有图书馆的楼层分布及其功能等(图7)。
5) 链接型(Links)message
校园信息浏览模块中主要建筑物中院系或职能部门设置情况可用链接型(Links)message反映。如系统中华东师大标志性建筑——理科大楼,其message定义为:① message的标题为“理科大楼”;② 图片和详细描述均可利用华东师范大学主页中的资源;③链接列表中包括大楼中的各院系、机构如生命科学学院、化学系的主页链接,实现便捷的访问(图8)。
6) 利用脚本语言定义的message
校园游览路线模块中游览导航的功能是通过利用脚本语言定义的message来实现的。其中HTML网页使用VBScript语言[6]在Dreamweaver[7]中制作,通过创建网页型message将其直接植入TE Pro中作为系统的一个组成部分。
游览导航模块其中一部分是供浏览者选择游览路线,这个路线一部分是预设的,一部分是用户自己定义的,例如从校门至校园对外服务较频繁的建筑等常用的的行走路线的查询和展示,此功能的实现需要在HTML网页中添加下拉列表和按钮,列表用于放置预先设计行走路线,按钮实现显示行走路径、途经地标以及路线展示的功能(图9)。
3.4系统输出打包处理
系统设计完成后,需进行打包处理,输出所有用户能通过Skyline公司提供的通用浏览器TerraExplorer Viewer进行浏览的三维校园浏览系统。
4 结语
在全球数字化的趋势下,三维数字信息丰富、真实、具体的表现力以及可视化的优势逐渐成为应用的主流,随着三维可视化技术的发展和完善,三维地理信息系统将是地理信息技术发展的一个必然趋势。本文结合实践,经过对message应用的不断思索和尝试,以华东师范大学为例介绍基于TE Pro的校园三维浏览系统开发的方法,系统具有一定的对外展示作用和实用价值,同时突出message在浏览系统设计中应用的广泛性和重要性,为建立校园三维地理信息系统起到了铺垫作用。由于基于message的浏览系统开发尚处在实验阶段,系统功能以及校园三维场景模型的建立还存在很多不足,今后将进一步完善。
参考文献:
[1] 王爱国等.3D GIS 技术在国土资源信息管理中的应用[J].现代测绘.2007,30(2):44~46.
[2] 黄丽虹,朱大明等.TerraSuite在数字城市中的应用研究[J].地矿测绘. 2007, 23(4): 27~29.
[3] 王萍萍,赵俊莉,孙强. JavaScript基础与实践教程[M]. 北京:电子工业出版社,2007.
[4] 范力铭.基于ArcGIS Engine的三维GIS系统开发与应用[D].上海:华东师范大学地理系2007.
[5] 孟晓梅,刘文庆. MultiGen Creator教程[M].北京:国防工业出版社,2005.
[6] 清汉计算机工作室.VBScript开发实例[M].北京:机械工业出版社, 2000.
[7] 张培编.Dreamweaver8入门与提高实例教程[M].北京:机械工业出版社, 2007.