城市建筑三维形态分析系统的设计与开发
2019-10-08王俊夫侯英姿王方雄
王俊夫 侯英姿 王方雄
摘 要: 城市三维形态分析系统使用.Net框架为基础,基于C/S的程序设计架构,结合Supermap提供的二次开发接口iObjects .NET 8C来实现相关量化分析计算功能,同时结合supermap SDX+空间数据库引擎实现数据的高速存储与调用,在界面方面使用DevComponents提供的DotNetBar 对界面进行优化,实现了对城市建筑物三维形态进行量化分析可视化分析结果的Windows桌面端GIS分析系统。
关键词: .Net;Supermap;GIS;建筑物三维形态
【Abstract】: Based on the. Net framework and C/S programming framework, the urban three-dimensional morpho logical analysis system combines iObjects. NET 8C, a secondary development interface provided by Supermap, to realize the function of quantitative analysis and calculation. Meanwhile, it combines Supermap SDX+ spatial data base engine to realize high-speed storage and invocation of data and uses DotNetBar provided by DevComponents to optimize the interface. A Windows desktop GIS analysis system for quantitative analysis and visualization of three-dimensional shape of urban buildings is realized.
【Key words】: .Net; Supermap; GIS; Three-dimensional morphology of buildings
0 引言
近些年来随着我国城市化进程的加速推进,相关统计数据显示,截至2017年底我国的城镇化率已达57.35%,建筑物作为承载城市发展的重要部分,人们建造出多种形态大小的建筑物,以满足在工作、学习、生活、娱乐、休闲等各方面的需求,与此同时一些在城市空间上相互影响的问题也随之产生,例如:建筑物过于密集造成互相的采光透风性下降,建筑物互相过于孤立造成使用者的步行成本上升等问題。为了能够有效的解决这类问题,并从宏观的角度来分析城市建筑物形态在相应量化参数具体表
现出什么样的差异性、人口宜居的阈值是多少等。本文使用计算机技术与城市三维形态分析参数相结合的方法开发出一套专用的分析软件,本软件通过从建筑物基本属性、建筑物起伏特征、组成特征三个维度来量化分析城市建筑物的三维形态特征。其中核心功能三维形态分析模块操作直观、分析速度稳定快速、分析结果准确可靠,整体上实现了一款界面友好、操作便捷、结果清晰明了的软件系统。
1 系统设计
1.1 系统结构设计
城市三维形态分析系统基于Supermap提供的二次开发接口iObjects .NET 8C进行设计及开发,通过这套二次开发接口可以高效率、低成本的开发出具有多种复合地理分析功能的桌面端地理信息系统应用。本系统的总体结构采用层次化设计思想,便于实现系统中各层次之间的逻辑独立性以及系统的可扩展性。同时在设计模式方面本系统采用组件式与C/S架构相结合的模式。系统总体结构如图一所示。1. 表现层:是用户与系统交互的前端图形界面,使用DotNetBar提供的用户功能组件进行开发,采用Ribbon界面风格使得界面更为美观实用;2. 业务逻辑层:是进行可视化当前待分析地理数据以及进行分析计算再可视化结果输出数据的重要结构,通过调度各个相关分析接口,诸如:SpatialAnalyst、Analyst传入分析数据,得到结果数据来实现该系统的各类分析功能,同时完成本系统分析内容中特有的一些计算功能。它与表现层共同构成了用户使用的前端客户端部分;3. 数据层:由supermap的空间数据库引擎SDX+与文件型数据源来构成了本系统的数据层,将建筑物位置、平面形状、UDEM、DEM等基础地理数据统一的组织起来进行存储以及集成化的管理,其中空间数据库的读写访问过程全部由数据访问组件(SuperMap.Data)中的各个相关函数负责完成。
1.2 系统功能设计
城市建筑物三维形态分析系统可以为用户提供快速便捷准确的城市建筑物三维形态参数的计算包括:平均高度、错落度、起伏度、占空度、规模指数、密度指数六大类,同时将计算的结果通过分层设色的方式生成相应的专题地图,可视化的表达分析的结果,便于用户直观的比较、分析特定研究城市的建筑物三维形态特征,为城市新增建筑物的规划建设、城市空间形态的设计、城市人居环境的优化等相关决策的制定提供重要准确的支持,具体功能模块如图2所示。
(1)基础功能模块:包括加载已有的工作空间、导出当前的工作空间、可视化操作工作空间中指定的数据、放大缩小平移地图;(2)形态分析模块:一键分析六大形态指标,可视化显示各指标分析结果。
2 系统功能开发
城市建筑物三维形态分析系统基于Supermap iObjects.Net 8C二次开发接口使用C#编程语言采用.Net框架进行设计开发,同时使用了DEVC omponents的DotNetBar来优化软件交互界面,通过Microsoft VS2010作为集成开发环境来完成整个系统的开发工作。核心功能部分实现城市建筑三维形态参数分析(具体参数定义见表1),其它功能部分实现专题地图生成及输出与城市三维地理空间数据管理。
2.1 数据管理
此功能模块的开发过程中主要采用了Supermap.data接口来实现数据的加载、选择、导出等管理功能,同时使用由Supermap SDX+空间数据库引擎驱动的文件型数据库,来驱动数据的存储与调用。具体为:首先使用Supermap.data接口中的Dataset()函数来实现工作空间中指向各类数据的连接功能,其次使用Supermap.UI接口中的 mapControl.Map.Layers.Add()函数实现将工作空间中的数据加载到当前地图显示窗口中来的功能,这样就
2.2 三维形态分析
通过使用Supermap iObjects.Net 8C中的空间分析接口Spatial Analyst结合目前最认可用于刻画城市建筑物三维形态六大参数[3]的定义,使用C#为编程语言通过编码的方式使得城市建筑物三维形态量化分析可以一键完成,并自动生成相应的专题地图。具体为:在数据的加载与处理上,先使用工作空间文件的方式将进行,将城市建筑物三维形态分析的相关矢量栅格数据一并读取到软件中来,然后以UDEM栅格数据作为城市三维形态分析的基础数
据,街区的矢量面数据作为分析中的局部单位范围数据,通过Supermap.Analyst.SpatialAnalyst接口中的RasterClip.Clip()函数裁剪研究区的UDEM数据,以匹配相应的单位研究区,为下一步三维形态分析公式的带入运算铺垫。接下来本系统根据不同的公式定义与Supermap.Analyst接口中对应的分析函数以及上一步处理好的UDEM数据计算出各个参数的值,最后通过Supermap.Mapping接口中的Layer SettingGrid()函数对计算出的结果进行分层设色,通过不同的色彩清晰地将计算结果可视化到当前地图上,形成相应的城市建筑物三维形态分析专题地图。分析效果图见下图4(以密度指数分析结果为例)。
3 结论
城市三维形态分析系统基于Supermap提供的地理分析功能接口加上城市三维形态刻画主要参数的计算方法使用C#为开发语言设计开发而成。本系统采用组件式与C/S架构相结合的设计模式,由表現层、业务逻辑层和数据层构成。城市三维形态分析的基础数据由UDEM栅格数据与建筑物面状矢量数据构成。使用Supermap相关分析接口中提供的各类地理分析函数与DotNetBar来实现客户端界面的搭建与优化显示。总的来说本系统具有以下三大特点:(1)城市宏观三维形态量化:使用UDEM栅格数据为基础来对城市的三维形态进行分析,通过对栅格数据进行分割归纳为不同的分析街区,然后对各个区的栅格数据进行提取运算来得出该区域此研究指标的值,并且通过对其进行统一作色,分级设色来直观的展示这个区域的值在整个城市中是属于怎样的一个水平,从而为软件使用者提供一个直观的城市建筑物三维形态发展状态的参考。(2)分析迅速:通过使用并行多线程计算来实现快速分析以及统一分层设色,提高了软件的运行效率。(3)功能简便实用化:在打开相应的工作空间并且设置好要进行分析的城市的UDEM栅格数据以及用于确定城市分析区域的分区矢量数据后只需一键即可快速分析得出结果无需过多的繁琐设 置,且结果准确可靠。
参考文献
[1]葛珊珊. 基于UrbanDEM的城市三维形态研究[D]. 南京师范大学, 2009.
[2]张培峰, 胡远满, 熊在平, 刘淼.基于QuickBird的城市建筑景观格局梯度分析[J]. 生态学报, 2011, 31(23): 266-275.
[3]王方雄, 温爱博. 城市三维形态与热环境的相关关系研究——以大连市金普新区为例[J]. 国土与自然资源研究, 2016(04): 70-72.
[4]何文文, 侯英姿, 王方雄. 城市建筑三维形态研究——以大连市金普新区为例[J]. 国土与自然资源研究, 2017(05): 36-38.
[5]王云. 互联网+时代泰州智慧城市创新发展探讨[J].软件, 2015, 36(11): 09-11.
[6]季菁苇. 计算机数据库技术在信息管理中的应用研究探讨[J]. 软件, 2018, 39(6): 160-163.
[7]庾佳. 浅谈OOP在软件开发中的应用与优势[J]. 软件, 2018, 39(6): 58-60.
[8]艾嘉豪, 朱大明. 无人机倾斜摄影测量在三维建模中的应用[J]. 软件, 2018, 39(6): 192-195.
[9]张思佳. 基于RS/GIS的长沙市土地利用和稳定性分析[J]. 软件, 2018, 39(7): 124-129.
[10]徐文祥, 李金良, 杨焱, 等. 关于地理信息系统在土地资源管理中的实践应用探讨[J]. 软件, 2018, 39(7): 199-201.