近年来, 全国很多城市都在进行数字城市建设, 推进城市信息化进程[。数字城市是运用3S、遥测、仿真-虚拟等技术,以计算机技术、多媒体技术和大规模存储技术为基础,以宽带网络为纽带,实现对城市多尺度、多时空、多分辨率以及多种类的三维描述[。城市三维描述的核心是构建建筑物三维模型,数字城市建设对城市建筑物三维建模有两方面的要求:一是模型的精细化,构建的三维建筑物模型越精细,效果越逼真; 二是建模过程的自动化,自动化程度越高,操作越简单,效率越高。
在建筑物三维建模方面,娄启业等研究了基于AutoCAD和3DS Max进行建筑物三维建模的方法[; 张习科等利用Skyline和3DS Max构建湖南城市学院校园主要建筑物三维模型[; 吴森等基于Skyline生成地形模型,并构建了西南科技大学三维数字校园[; 王新志等研究了基于SketchUp的校园三维建模方法[; 万宝林将SketchUp和3DS Max分别与ArcGIS结合,研究了一体化建模流程,并进行了对比分析[; 朱安峰等基于CityEngine实现了河南大学三维数字校园系统[; 张晖等研究了基于CityEngine的室内三维建模的方法[。
传统的三维建模软件(如3DS Max等)采用手工建模的方法,建模过程费时、费力[,且模型重用度低。作为新的三维建模软件,CityEngine支持基于CGA规则的建模方法,建模速度快,模型重用度高,既可以读取ArcGIS中的shapefile数据,也可以导出多种格式(包括ArcGIS支持的Multipatch格式)的三维模型。
本文主要介绍在CityEngine中基于CGA规则的建筑物建模方法,并介绍基于Python脚本实现建筑物自动化建模的过程。
1 创建CGA规则文件
CGA规则文件一般存放在工程文件的rules文件夹下,