APP下载

基于SketchUp和ArcGIS的三维数字校园

2018-02-03刘鹏坤樊大为朱甲领

电脑知识与技术 2018年2期

刘鹏坤+樊大为+朱甲领

摘要:为了更好的实现校园全景预览和3D 漫游导航,该文设计并实现了一个基于Web的三维数字校园系统。该系统首先采集并处理校园卫星投影图、实景纹理贴图、基础测绘数据,将二维矢量数据导入SketchUp进行三维实体建模,然后将模型进行格式转换后导入ArcGIS,最后通过CityEngine在Web服务器上发布。该系统一方面能够为校园资源规划提供决策支持,另一方面也可以为GIS应用提供平台支持。

关键词:三维数字校园;SketchUp;ArcGIS;CityEngine

中图分类号:TP37 文献标识码:A 文章编号:1009-3044(2018)02-0180-02

全球定位系统、遥感技术、地理信息系统技术是地球空间技术的核心内容,这三方面的高速发展同样会促进地球空间技术的发展。三维地理信息系统(3DGIS)就是在地球空间技术日益普遍和发展的背景下产生的概念。三维空间数据信息较之二维空间数据信息,它可以将抽象的空间数据可视化,人们通过直接观察即可理解空间数据信息,从而做出较为准确的判断。因此,三维维地理信息系统在可视化方面有着二维地理信息系统难以比拟的优势。本文采用三维地理空间技术,针对一个面向Web的三维数字校园系统的设计与实现流程展开讨论,该系统一方面能够为校园资源规划提供决策支持,另一方面也可以为GIS应用提供平台支持。

1 系统总体设计

系统总体框架如图1所示。首先通过实地测量,并综合其他数据,采用sketchup构建三维校园模型;然后将三维校园模型导入CityEngine中,发布模型到ArcGIS Server,并创建相应的三维地图服务;最后在客户端实现三维地图的访问与基本地图操作。

2 创建三维模型和场景

2.1 数据的采集和处理

空间数据的采集是通过卫星投影获取数据,导入ArcGIS中处理,制作缩放比例1:500地形图。纹理影响主要利用相机进行实地拍摄,在整个拍摄过程中分类拍摄,分别拍摄树木、地面、窗户、标志性建筑物等。模型属性数据采集采用实地测量和卫星测量相结合的方式。

对于采集的空间、纹理数据不能直接构建模型,需要统一数据高程,对纹理数据进行缩小,防止建立的模型占用内存过大。

2.2 校园模型的构建

2.2.1 地上建筑构建

实景贴图建模。运用图像纠正、影像拼接、影像裁剪、色彩调整、大小调整等六方面技术处理图像纹理,然后使用涂料桶将处理过后的纹理影像贴到对应模型上。例如S楼,如图2所示。

虚拟线画建模。用画笔工具画出门窗和墙面的其他部件,使用推拉工具进行三维构建。建筑表面一般都是相同的单元,我们构建其中一个单元,然后将这个单元复制,粘贴到其他单元的位置。例如音乐楼,如图3所示。

2.2.2 地面景观建模

模型总图构建是以地面场景和地形图为基础,将分别构建的多个教学楼模型移动到地面场景图上,与地形图做对比,确保模型的正确性。效果如图4所示。

3 发布3D Web Scene

3.1 实现方式对比

发布3D WEB scence 有两种方法,一种方法是利用ArcMap扩展模块中ArcGIS 3D Analyst工具直接导入3D文件,而后通过CityEngine工具将3D文件发布为3D Web场景,最后登录到ArcGis online上传发布*.3ws文件;另一种方法则是将SketchUp中的三维模型转换成CityEngine支持的格式,导入到CityEngine中,然后导出成*.3ws文件,最后直接在软件中共享为CityEngine Web Scence Package。

由于第一种方法在导入和导出时有版本不兼容的情况发生,所以我们最后选择了第二种方式,并且成功发布了3D WEB scence。以下将详细介绍第二种方式。

3.2 模型的轉换

CityEngine是一款三维城市建模与规划设计软件,主要应用于数字城市、城市规划、模拟仿真、游戏开发和电影制作等领域,以其逼真的三维模型效果和快速的建模效率著称。并且在2011年被ESRI收购后大大增强了对ArcGis软件的支持,在发布CityEngine2012时,支持将场景发布为3D WEB scence,供用户在ArcGis online上浏览。

CityEngine可以直接导入三维模型,所支持格式如图5所示。

由于SketchUp中的模型不能直接导入到CityEngine中,因此需要在SketchUp中将所建好的三维模型转换成CityEngine所支持的格式,SketchUp中可以导出的格式如图6所示。

经过测试,发现DAE文件和OBJ文件导入到CityEngine之后都会出现纹理丢失的问题,KMZ文件由于坐标系的问题不能直接导入到CityEngine中。经查阅相应资料可知,SketchUp导出的dae数据存在问题,以致无法正常读取纹理。因此需要在 SketchUp 中将模型另存为 KMZ 格式文件,而后将KMZ格式文件后缀改为zip,将该文件解压,得到dae文件,dae文件正确,导入到CityEngine中即可。效果如图7所示。

3.3 WebSence离线浏览

将导入到CityEngine中的模型导出成web场景,即可在web浏览器(需要支持 WebGL ,WebGL 是用于渲染 3D 图形的 web 技术标准。常见桌面浏览器的最新版本都内置有 WebGL)下直接查看,实现了多种平台之间的跨越。

通过浏览器打开 webviewer的离线程序,浏览本地文件,选择CityEngine导出的3Dweb场景后点击确定即可在本地在浏览器中与 3D 校园进行交互,从而执行以下操作:endprint

1) 执行平移、缩放、改变视角功能;2)选择要查看的特定图层;3)切换场景;4)模型时间滑块功能。

3.4 WebSence在线浏览

CityEngine导出的校园3D Web 场景通过上传到ArcGis的云端服务器,可以实现在线浏览等功能,并且支持多人共享,设置查看人权限等。

4 结束语

本文主要讨论了一个面向Web的三维数字校园系统的设计与实现流程。论文首先介绍了基于SketchUp的建模关键技术、场景的管理发布和浏览;其次,在构建的校园场景的基础上,基于CityEngine和ArcGIS Sever实现了三维地图Web服务的发布。本系统的实现,为三维GIS开发以及虚拟现实仿真系统的实现提供了一条新思路,利用该方法创建的三维GIS系统能够更好地满足不同领域的一些特定需求,对其他三维可视化研究具有一定参考借鉴意义。

参考文献:

[1] 赵雨琪,牟乃夏,张灵先.利用CityEngine进行三维校园参数化精细建模[J].测绘通报,2017(1):83-86.

[2] 齐文平,吕宜平,薛盼盼,等.基于SketchUp的三维数字校园构建 [J].矿山测量,2016,44(5):79-82.

[3] 汪浩,田丰,张文俊. 基于WebGL的交互平台设计与实现[J]. 电子测量技术,2015,38(8):119-122.

[4] 朱安峰,王海鹰,高金顶.基于CityEngine的三维数字校园系统[J].计算机系统应用,2015,24(2):112-115.

[5] 朱丽萍,李洪奇,杜萌萌,等.基于WebGL的三维WebGIS场景实现[J].计算机工程与设计,2014,35(10):3645-3650.

[6] 花利忠,王赵兵,邹丽妹,等.基于CityEngine与ArcGIS Flex API的校园WebGIS系统——以厦门理工学院为例[J].厦门理工学院学报,2013,21(4):57-61.

[7] 刘爱华,韩勇,张小垒,等.基于WebGL技术的网络三維可视化研究与实现[J].地理空间信息,2012,10(05):79-81.

[8] 单楠. 基于SketchUp和ArcGIS的三维GIS开发技术研究[D].重庆:西南大学,2009.

[9] 康玲,傅俊锋,王怀清,等.基于ArcGIS Server的WebGIS应用系统开发[J].水电能源科学,2007(1):26-29.endprint