标题 | 基于SketchUp与CityEngine的校园标志性建筑物三维建模方法 |
范文 | 张丽莹+段平+姚永祥+李佳![]() ![]() ![]() 摘 要:校园标志性建筑物在学校对外宣传和文化交流中起到重要作用,三维建筑物模型以多视角最直观的方式呈现,具有全面、立体、详尽的优点。利用SketchUp与CityEngine三维建模软件,以云南师范大学呈贡校区图书馆为例,介绍了一种三维模型制作方法。首先,采用ArcGIS软件提取遥感影像中建筑物对象的底面边界、屋顶类型等数据,再利用拍摄影像获取纹理等信息;然后,基于SketchUp软件进行总体建模、拉伸、拆分、结构细化、纹理映射;最后,利用CityEngine进行地形添加、场景构建、模型发布。实验表明:该方法能够充分发挥两款软件的优点,规避其不足,显著提高建模效率,对三维校园建设具有借鉴意义。 关键词:标志性建筑物;三维建模;SketchUp;CityEngine DOIDOI:10.11907/rjdk.172260 中图分类号:TP317.4 文献标识码:A 文章编号文章编号:1672-7800(2017)008-0199-03 0 引言 校园数字化宣传系统中一般包含校园典型建筑物、校园地图等,目前多数系统是基于二维平面地图开发出来的,尽管能够详细地描述地理空间信息,但难以满足学校对外招生宣传、校园管理、导航等多方面的需求[1]。而校园标志性建筑物三维模型是采用三维立体化的方法生成逼真的校园实景图,能够将校园信息详尽展示出来,增强校园文化竞争力,提高学校对外宣传能力和文化交流。 SketchUp 是一款面向方案设计的三维建模软件,它提供灵活、便捷的手绘功能,用户不需掌握其它知识就可直接进行建模,易上手、操作方便,单个实体建模速度快[2,3];而CityEngine 的建模功能和场景构建功能强大,建模速度快[4],地形数据建立方便,而且作为一个三维展示平台场景发布途径多。将两者与GIS平台相结合,既弥补了GIS平台在三维建模和编辑功能上的不足,充分利用现有GIS 数据,提高三维建模效率,又可以将建筑物三维模型与GIS平台进行无缝集成[5],在发挥CityEngine与SketchUp在建模方面优势的同时,能很好地规避其不足之处。 本文采用SketchUp和CityEngine构建校园标志性建筑物三维模型。 1 三维建模思路与方法 本文研究对象为云南师范大学呈贡校区图书馆,其建筑涵盖了规则建筑、不规则建筑以及对称建筑,具有典型性。三维建模的整体思路是先进行总体建模,然后分层建模、分块建模,最后再对每个层次、每一模块进行细化,按“从大到小,从粗糙到精细,从整体到局部”的原则[6]。基于SketchUp和CityEngine 的三维建模和发布流程见图1。 1.1 數据获取及处理 模型构建需要获取对象所在区域的遥感影像、数字高程模型(Digital Elevation Model,DEM)、建筑底面矢量数据、建筑物表面纹理信息、建筑物高度信息[7,8]。 1.1.1 建筑底面数据获取 建筑底面数据是首先获取空间分辨率为0.27m的研究区域遥感影像数据,然后采用ArcGIS软件对其矢量化获取底面矢量数据,结果如图2所示。 1.1.2 地形数据获取 地形数据体现了建模区域的地貌起伏情况[9],从Google Earth下载的空间分辨率为8.67m的 DEM数据,整理后的研究区域DEM如图3所示。 1.1.3 高度信息获取 在三维建模过程中,高度信息是必不可少的属性。高度信息获取的是采用测距仪获取某一层的高度,然后乘以楼层数计算得来,用这种方法得到的高度信息存在一定的误差,但是对于一般的可视化三维模型而言已经足够,而且速度快,工作量小。 1.1.4 表面纹理信息获取 利用手工和规则建模,所建立的三维模型都只起到形体模拟的作用,这种没有纹理的三维模型被称作为裸模,不能从视觉上感受真实的实景三维效果,因此需要对已经构建好的三维模型进行纹理映射[10]。表面纹理信息主要包括建筑、道路、植被等类型的图片。采用Photoshop对拍摄的照片纹理进行透视裁剪得到需要的部分,然后进行亮度调整、图像纠正,最后进行数据压缩,以得到清晰美观、数据量小的纹理信息。 1.2 三维建模方法 在获取建筑物基础数据的基础上构建三维模型。借鉴结构实体几何模型(Constructive Solid Geometry,CSG)的建模思想,将建筑物分解为主体、屋顶、附属结构等构件,然后逐步构建各个构件。 1.2.1 建筑物主体三维建模与细化 在ArcSence中将图书馆底面二维矢量数据依据height属性将其转为3D要素,即Multipatch格式[11],通过转换工具“Conversion Tools-To Coverage-Feature Class To Coverage”将Multipatch数据转为SketchUp可以识别处理的Collada数据格式,最后在SketchUp软件里面导入Collada数据。由于在ArcSence中转换而来的数据高度都是一致的,要利用push_pull拉伸工具,将各个楼房垂直拉伸到实际高度,通过拉伸处理生成图书馆建筑主体,如图4(a)所示。 根据楼层数与教室数,采用Spilt拆分工具对各墙面进行拆分,生成各侧墙面格网,生成墙体、门和窗原始结构,如图4(b)所示,再次采用push_pull工具对门、窗进行推移或拉伸,生成门、窗体,如图4(c)所示。 1.2.2 建筑物屋顶建模 建筑物一般包含屋顶,屋顶按结构类型的不同一般分为平屋顶、坡屋顶和曲面屋顶。本文研究对象屋顶类型主要是平屋顶和坡屋顶中的四坡式。建立坡屋顶模型首先构建屋顶,然后利用推移translate工具绘出屋顶支撑结构底面,再通过拉伸操作生成屋顶支撑结构,接着选中支撑结构顶面,最后利用推移工具向外扩展生成屋顶结构面,拉伸至屋顶实际高度,选中顶面,利用缩放工具对4个角进行比例缩放,生成四坡屋顶,如图5(a)所示。而平屋顶的建立比较简单,首先确定屋顶高度,利用push_pull操作将屋顶拉伸,接着选中屋顶,用推移工具绘出天台外围,再利用push_pull生成屋顶,如图5(b)所示。 1.2.3 建筑物附属构建 在构建建筑主题后,需要构建建筑物的附属结构,其主要包括走廊、阳台、楼梯、台阶以及屋梁柱等,附属结构看似简单,但是在增强模型真实感方面起着重要作用。 图书馆四面台阶众多,台阶的生成可采用加法或减法来生成。以4个台阶为例,用减法生成台阶,首先根据台阶的最高、最长和最宽3个参数,生成一个原始的最大四面体,然后将其平均分割,根据实际台阶平面,一阶一阶往里推移,逐个生成台阶。加法生成台阶,是先根据台阶的长、宽、高绘制第一级台阶,利用拉伸工具提升到台阶高度,接着利用缩放工具,将第一级台阶顶面往里缩放一个台阶平面,再拉伸到实际高度,重复以上操作,直至完成台阶的操作。两种方法建模结果如图6所示。 屋梁柱的构建,主要是用拉伸工具来实现,根据实际建筑物的信息,先绘制出梁柱所在位置、大小、形状,再根据拉伸、推移工具来实现,最后加以纹理贴图。 图书馆相邻两个建筑之間是通过走廊相连接的,可先在一个建筑面上绘出走廊形状,在矢量图上测量出两个建筑之间的距离,直接利用拉伸工具,输入长度,走廊主体形成。走廊是由底下均匀分布的四根梁柱支撑,梁柱的生成也可直接利用拉伸工具,依据实际测量绘出的梁柱底面数据拉伸而成,如图7所示为走路底面及其三维模型。 在构建了所有模型的基础上,根据实际各模型最小单元大小生成相应的纹理图片,利用材质工具进行贴图,生成整个建筑模型,为了使其三维模型具有较强的真实感,可以对其进行光线模拟、阴影渲染,进一步增强三维景观的真实感和可视化效果,最终三维模型如图8所示,将其导出为KML格式便于利用CityEngine进行三维模型的发布。 2 基于CityEngine的三维模型场景构建与发布 在CityEngine中导入基于SketchUp构建的KML格式三维模型,并建立对应的地形及相应的三维场景进行优化并发布。 2.1 场景构建 CityEngine的场景内容以图层的方式来组织,主要包括光线控制图层、场景背景图层、地图图层以及静态模型图层。光线控制图层和场景背景图层随着场景的创建而自动生成且不能删除,静态模型图层是随着第三方三维模型的导入而自动生成,而地图图层是通过手动设置生成。 地图图层的常用类型是地形和纹理。地形图层是以创建地表真实起伏形态作为场景的高程基础,可用于对地形的展示或地形建模;纹理图层是用来在场景中创建一个平面背景底图。首先是建立地形数据,直接利用现有的空间分辨率为8.67m的DEM数据,在ArcGIS软件中裁剪出合适的研究区域,生成三维起伏地形数据,将影像及地形数据保存为TIFF格式;然后在CityEngine中将地形数据与影像数据叠加,生成真实地表。将KML模型加载进来,通过平移、旋转、缩放工具将模型放置到合适的位置。 2.2 模型发布 CityEngine可以作为一个三维展示平台,将场景直接导出为CityEngine Web Scene在网络端直接提供浏览,为三维建模提供了一个有效的场景发布途径。具体发布步骤如下: (1)导出生成的模型数据。选择“文件—导出模型—CityEngine Web Scene”,进行模型参数设置,输出的所有对象可以作为一个实体导出,则单个对象不可以被选择,也可以将每个对象作为单个实体导出,则每个对象都可以被选择,本文选择作为一个实体导出。 (2)对导出图层进行设置。包括图层贴图的转换质量、是否带有贴图、图层是否可见。 (3)浏览器中预览。在文件导航窗口中选择导出的场景文件,选择“Open With”,通过浏览器打开场景(见图9)。浏览器的选择是有限制的,浏览器必须支持WebGL,常用的有Google Chrome、Firefox等。 (4)共享场景数据。可将其发布到ArcGIS Online、Google Earth、网站等多种平台上进行共享。 3 结论 本文采用SketchUp、CityEngine与GIS专业软件相结合的方式创建校园三维模型。在模型建立的过程中能够充分利用现有的GIS 数据,快速、简便地构建三维模型,减少人工干预,缩短建模周期,且在结合过程中充分发挥各自的优势,可以达到比较理想的效果,能够为数字校园三维空间可视化建设提供借鉴。 参考文献: [1] 唐华林,周丽芳,范冲.基于Google Earth 与Sketchup 的3 维数字校园[J].测绘与空间地理信息,2011,34(5):182-184. [2] 万宝林.3DSMAX与SketchUp的三维城市建模技术实验对比分析[J].测绘地理信息,2015,40(2):23-25. [3] 曹兆峰,何燕兰,李胜才.基于Sketchup和ArcGIS的数字城市三维建模技术[J].地理空间信息,2014,12(5):46-47. [4] 李宏旭,杨李东.基于CityEngine的三维城市规划设计与研究[J].测绘与空间地理信息,2016,39(5):55-57. [5] 张晖,刘超,李妍,等.基于CityEngine的建筑物三维建模技术研究[J].测绘通报,2014,52(11):108-112. [6] 佘忠伦.基于Google Sketchup的校园三维地图的制作[J].北京测绘,2016,23(3):78 - 84. [7] 兰玉芳,付金霞,徐霞,等.基于SketchUp与ArcGIS的校园3DGIS的设计与实现[J].遥感技术与应用,2013,28(2):346-352. [8] 赵雨琪,牟乃夏,张灵先.利用CityEngine进行三维校园参数化精细建模[J].测绘通报,2017,55(1):83-86. [9] 柴贵海,廖邦洪,胡庭兴.基于SketchUp和ArcGIS对虚拟校园的设计与实现[J].测绘科学,2009,34(6):270-272. [10] 郑仕雄,李佳.校园典型建筑物点云数据三维建模方法[J].软件导刊,2017,16(1):137-139. [11] 贺军亮,张兵,孙中伟,等.基于三维GIS的虚拟场景制作与发布[J].测绘科学,2013,38(4):176-178. |
随便看 |
|
科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。