基于.Net和ArcGIS Engine房产信息系统设计与实现
王磊, 丁圣陶, 熊伟, 孙庆华
(中国矿业大学环境与测绘,江苏省资源环境信息工程重点实验室,江苏徐州221008)
摘要: 对房产信息的科学管理和有效发布是实现"数字房产"的前提基础之一,建立基于.Net和ArcGIS Engine房产信息系统,着重研究系统的总体结构、空间数据组织形式以及系统的功能设计,实现地图的浏览、切换、房产信息查询、最近设施点查找、最佳路径分析、房产信息统计分析等空间分析功能,为服务大众和管理决策提供直观的可视化工具,将有效地促进"数字房产"的建设。
关键字:ArcGIS Engine;房产信息;.Net;空间分析
Design and Implementation of .Net and ArcGIS Engine Based House Property Information System
Wang Lei, Ding Sheng-tao, Xiong Wei, Sun Qing-hua
(School of Environment and Spatial Informatics , China University of Mining and Technology , Jiangsu Key Laboratory of Resources and Environmental Information Engineering,Jiangsu Xuzhou 221008,China)
Abstract: Science management and effective publish of information on house property is one of the bases and preconditions to achieve digital house property .The establishment of house property information system has been proposed based on .Net and ArcGIS Engine by focusing on the overall structure ,spatial data organization and the system function design .The system is capable of browsing map ,searching house property information ,the best path analysis ,seeking recent facilities and information statistics analysis, which can be used as the visual tools for the public of the service and the decision-making, promoting the construction of digital house property availably.
Key words:ArcGIS Engine; House Property Information; .Net; spatial analysis
1 引言
地理信息系统(GIS)在的计算机硬件、软件系统支持下,对整个或部分地球表层空间中的地理分布数据进行采集、存贮、管理、运算、模拟、分析、显示和描述的技术系统。它处理、管理的对象是多种地理空间实体数据及其关系,并适时提供多种空间和动态的地理信息,为地理研究和地理决策服务[1]。经过几十年的发展,GIS已在众多领域得到应用,产生效益。房地产行业的各种信息均与空间位置有关,在房地产中引入地理信息系统,它可以快速、准确、及时地反映城市房地产分类、分布和房产信息,为城市建设和管理决策提供准确可靠的依据,从而有效提高城市房产管理水平,同时购房者能够直观的了解房源的空间信息。随着"数字地球","数字城市"的提出,"数字房地产"也成为房地产领域的一大课题,也是房地产信息化发展的必然趋势。
2组件技术与开发平台选择
ArcGIS Engine是一套用应于构建应用的嵌入式GIS程序的组件库,是一个创建GIS桌面应用程序的开发产品。ArcGIS Engine包括构建ArcGIS产品ArcView、ArcEditor、ArcInfo和ArcGIS Server的所有核心组件[2]。这个新产品为开发人员提供了一种新的部署策略和资源,它是由一组核心ArcObjects包组成,其对象是平台无关的,其提供了com、.net和c++的应用程序编程接口(API),及ArcGIS Engine的平台无关性极其强大的工具包,开发人员能够通过它提供的强大的工具构建定制的GIS和制图应用。ArcGIS Engine既适合构建基本的制图应用,也可以构建高级的GIS应用。
Visual Studio.NET是一套完整的开发工具,用于生成ASP Web应用程序、XML Web services、桌面应用程序和移动应用程序。Visual c#.NET、Visual Basic.NET等使用相同的集成开发环境(IDE),该环境允许他们共享工具并有助于创建混合语言解决方案。而C#语言是微软公司针对.NET平台推出的一种新型编程语言,作为.NE平台的第一语言,它几乎集中了所有关于软件开发和软件工程研究的最新成果,且与ArcGIS Engine有很好的兼容性[4,5],实现了一系列组件的无逢高效有机组合。
本系统的设计采用 C#.NET+ArcGIS Engine+SQL Server集成的二次开发模式,既可以充分利用 ArcGIS软件对房产空间数据的管理、显示、分析功能,又可以利用C#.NE可视化开发语言的高效、方便等编程的优点,提高了系统的开发效率,易于移植和维护。
3系统体系结构与功能设计
3.1 房产信息系统的体系结构
在综合分析了C/S模式和B/S模式的优缺点后,结合系统的需求和建设目标,根据低耦合,高内聚的原则,依照现有成熟模式设计方法,将房产信息系统框架分为3个部分,即房产信息数据层、业务功能层、系统表示层。数据层主要是存储管理房产信息各种空间数据、属性数据、多媒体数据,空间数据库和属性数据库采用内在的连接方式。空间数据库中每一个可以操作的对象都对应一个唯一的OID属性,在属性库中建立包含某个对象OID的一条属性数据,就可以根据OID进行对象的属性数据的查询和管理。采用了GeoDatabase的数据模型,使得空间数据与属性数据的访问更加方便快捷。业务功能层根据提供的基础组件和ArcGIS Engine功能组件实现数据的管理、分析、表示功能。表示层定位于客户和系统的交互,采用基于From窗体的客户端,实现桌面应用。其三层系统构架见图1。
地图显示、信息查询、路径分析 、统计分析等 表示层
系统 组件
基础 集成 业务功
框架 能层
数据层
图 1 房产信息系统三层架构图
3.2 系统的功能设计
房产信息系统主要解决房产数据的获取、存储、管理、显示、分析等问题,从而建立起相应的功能模型,根据需求分析,系统目标是开发一个徐州市房产信息系统,本系统需要具体实现以下主要的基本功能:1)数据的管理与维护;2)房产信息的查询浏览与空间定位,包括房产的户型、面积、价格等信息,另外该系统中加入了多媒体属性;3)多种方式的信息查询,如多条件查询、一定距离内的缓冲区查询;4)最近设施点的查找,距离楼盘最近的医院、、超市等;5)最短路径分析,楼盘所在地到指定地点的最短距离与乘车路线;6)统计分析,根据房产信息,如:户型,房价等,生成不同直方图、饼状图、三维图,依据统计结果分析徐州市房产发展的现状;7) 打印输出,用于地图的输出,或以不同的图片形式保存。其系统的主要功能模块结构图2.
图2 系统功能模块
4 系统的开发实现
系统的开发实现以徐州市部分新房信息为开发数据,其重心在于根据房产信息业务的需要开发空间分析的核心功能组件库。对于房产数据而言,地图工具操作、数据的显示、信息查询、输出打印等这些基础功能组件可以在 ArcGIS Engine组件基础上进行组装集成或二次开发。对于房产信息的多条件查询可编写一个多条件查询窗体组件实现,运用comboBox、listbox、textBox等控件设计选择工作图层和查询方法、显示属性字段与属性值、输入SQL查询语句,通过后台的IQueryFilter和IFeatureCursor接口实现多条件查询功能。
(1)最短路径分析是系统的核心功能之一,首先在Geodatabase中建立一个Geometric Network道路网络要素层,其次,设计窗体组件时运用自定义的OpenFeatureDatasetNetwork方法加载节点与图层,最后,依据不同的节点的空间位置,通过ITraceFlowSolerGEN接口和FindPath方法实现最短路径分析。
(2)统计分析功能是利用存贮在SQL Server数据库中的非空间数据,如房产信息的户型、面积、价格等属性字段,结合C#.NET提供G
上一篇:
基于net三层架构的软件学院科研管理信息系统
下一篇:
马原:环境保护与可持续发展论文(word)