基于SuperMap Objects组件技术的征地资料管理系统的设计与实现

2014-03-22 00:15:06王海侠
城市勘测 2014年3期
关键词:数据源征地组件

王海侠

(蚌埠市勘测设计研究院,安徽蚌埠 233000)

1 引言

很多测绘单位在生产过程中都积累了大量的CAD资料,这些资料不但数目比较庞大,而且比较分散,难于查找和更新,随着时间的积累,会越来越不方便于管理。这些现实需求迫切需要使用信息化的管理方法来管理这些资料。GIS技术[1]是近年来得到快速发展的新技术,在许多行业都得到了大量应用。超图软件作为一家专业从事地理信息开发的公司,在地理信息产品的开发方面具有很强的技术优势,形成了多个GIS开发平台,包括组件式GIS开发平台、服务式GIS开发平台、嵌入式GIS开发平台、桌面GIS平台、导航应用开发平台以及相关的空间数据生产、加工和管理工具[2]。Super Objects.NET就是其中应用最为广泛的一种。本文就是基于SuperMap Objects组件技术,采用3层体系架构[3],通过二次开发来实现蚌埠市征地资料管理系统。

2 系统框架设计

系统采用3层架构设计,从下至上分别为:数据访问层、业务逻辑层、表示层。

数据访问层(DAL):有时也称为持久层,其主要功能是负责数据库的访问,可以访问数据库系统、二进制文件、文本文档或XML文档,具体来说就是实现对数据表的增加、删除、修改、查找等操作。该层为业务逻辑层或表示层提供数据服务。

业务逻辑层(BLL):针对具体问题的操作,也可以说是对数据层的操作,对数据业务进行逻辑处理。业务逻辑层是3层体系架构中的核心部分,它处于数据访问层和表示层之间,在数据交换中起到承上启下的作用。业务逻辑层的关注点主要集中在业务规则的制定、业务流程的实现等与业务需求有关的系统设计。业务逻辑层设计的好坏直接关系到软件的质量。

表示层(UI):通俗地讲就是展现给用户的界面,用于显示数据和接收用户输入的数据,为用户提供一种交互式操作的界面。可以表示成Web方式,也可以表示成Winform方式。

在本系统中,数据访问层是通过将征地图形数据、属性数据转换为SuperMap SDX+支持的空间数据,在SQL Server 2008中通过调用SQL语句来实现征地数据的增、删、改、查等操作,为业务逻辑层的调用提供或预留接口;业务逻辑层是对征地数据的具体操作,它根据表示层的业务需求以及数据层的功能数据操作接口来实现具体的功能。具体来说就是通过调用.NET组件、SuperMap Objects组件、数据层提供的接口来实现数据源管理、地图操作、数据转换操作、数据查询操作、坐标转换操作、空间分析操作,为表示层的具体功能展现提供或预留接口;表示层是根据业务逻辑层提供的接口,将征地管理系统实现的功能呈现给用户的界面。

在3层体系架构中,系统主要功能和业务逻辑都在业务逻辑层处理。通过3层架构设计将各层的开发分离开,提高了各层内的高类聚和层间的低耦合,大大缩短了系统的开发周期。同时各层之间的数据得到了很好的封装,降低了层与层之间的依赖,有利于标准化和各层之间的逻辑复用,开发人员可以集中于某一层进行设计,极大地提高了工作效率。 本系统的具体系统架构如图1所示:

图1 系统总体框架设计

3 系统开发关键技术

3.1 面向对象技术(Objected-Oriented Technology)

面向对象技术强调在软件开发过程中面向客观世界或问题域中的事物,采用人类在认识客观世界的过程中普遍运用的思维方法,直观、自然地描述客观世界中的有关事物。

面向对象技术的基本特征主要有抽象性、封装性、继承性和多态性[4]。

系统采用组件技术进行二次开发,由于组件技术本身就具有良好的抽象性、封装性、继承性和多态性,是面向对象的,因此体现了面向对象设计的思想。本系统正是运用面向对象技术,利用.NET组件、Super-Map组件进行二次开发,对组件或接口再次封装,开发出系统需要的功能。

3.2 SuperMap Objects组件技术

SuperMap Objects组件[5]由若干个 ActiveX控件[6]和数量众多的自动化对(Automation Objects)构成,因此可以方便地嵌入到流行的可视化高级开发语言环境中进行二次开发。开发人员可以充分发挥Visual Basic、Visual C++、Visual Basic.Net、Visual C#.Net和Delphi等高级开发工具在面向对象编程、可视化程序设计等方面的优势,结合各种第三方ActiveX控件件,轻松开发出各种GIS系统。

SuperMap Objects共有12个组件,包括工作空间组件,地图组件,用于排版输出地图的布局组件,用于三维模型分析处理的三维组件,用于数据拓扑处理的拓扑组件,用于图层显示的图层组件以及用于图例显示、属性数据显示、加密信息控制的辅助性组件[7]。利用SuperMap Objeccts组件和.NET组件可以快捷的开发出各种GIS系统。

SuperMap Objects的组件如图2所示。

图2 SuperMap Objects组件

3.3 SuperMap SDX+引擎技术

SuperMap SDX+[8],是SuperMap GIS平台中的空间数据库引擎,是SuperMap GIS软件的重要组成部分,它采用先进的空间数据库存储技术、索引技术和查询技术,具有“空间-属性数据一体化”、“矢量-栅格数据一体化”和“空间信息-业务信息一体化”的集成式空间数据库管理能力,是GIS大型工程应用的理想选择。

SuperMap SDX+具有一些几个特点:

(1)充分结合数据库技术,全面支持主流商用关系数据库平台。SuperMap SDX+可以全面支持目前的主流商用关系数据库平台,除了支持全球市场前列的Oracle、Oracle Spatial、SQL Server和DB2外,还支持国产的具有自主知识产权的达梦多媒体数据库DM和人大金仓数据库Kingbase。SuperMap SDX+对于这些数据库提供全面的支持,为客户端提供全透明的访问。

(2)采用混合多级索引技术,实现海量空间数据管理能力。SuperMap GIS提出了混合多级索引技术,在数据库引擎中采用了四叉树索引、R树索引、动态索引(或称多级网格索引)和图库索引(原称三级索引)4种索引,充分发挥每一种索引的优势,提高数据访问和查询效率。

(3)全面支持各种空间对象类型。SuperMap SDX +提供了全面的空间对象类型的支持,既支持点、线、面、文本等简单的空间对象,也支持多点、多线、湖中岛、宗地等复合对象以及支持Network(网络模型)、Route(路由模型)、TIN(三角格网模型)、DEM(数字高程模型)、GRID(格网数据)和Image(影像数据)等复杂数据模型。

(4)具备长事务处理能力。SuperMap长事务面向GIS应用的事务处理机制,具有短事务的主要优势,而尽量避免了短事务的局限性。

4 系统功能设计

4.1 系统功能设计

系统功能设计包括以下几个部分:系统登录界面设计、数据源管理设计、数据处理设计、数据查询设计、坐标转换设计及空间分析设计。

(1)登录界面设计

为了增强系统的安全性,避免非法登陆,需要给系统设置一定的登录权限。通过设置用户名和密码,来确认登陆者的身份是否合法。

(2)数据源管理设计

数据源可分为文件型数据源和数据库型数据源。文件型数据源支持只要系统支持,即可直接被系统直接读取;数据库型数据源是在数据库引擎支持下的数据源。

(3)数据处理模块设计

数据处理主要是指矢量/栅格数据的导入、导出和数据转换。支持udb、dwg、shp等矢量格式以及jpg、tif等栅格数据数据格式的数据导入与导出。

(4)查询设计

查询设计主要是指由地图查询地图数据的属性查询和根据条件来查询地图的条件查询。

(5)坐标转换设计

由于CAD图情况,因此本系统的坐标转换主要是北京54坐标系和西安80坐标系之间的坐标转换。

(6)空间分析设计

空间分析设计主要是指地块之间的合并设计、超出或减少范围的缓冲区分析、各不同地块使用类型的统计查询设计。

系统总体功能设计如图3所示:

图3 征地资料管理系统总体功能结构设计

4.2 征地资料数据库设计

征地资料地籍数据库分为勘测定界数据库和面积计算数据库。其中,勘测定界数据库又包括征地数据库和赔付数据库,面积计算数据库又包括供地数据库、面积测算数据库和宗地数据库。

征地资料各数据库的设计对于征地资料的分类、查询和检索和分析都起着至关重要的作用。因此系统开发前必须认真设计好征地资料各地籍数据库。

通过研究和分析征地资料各地籍数据库的特征和实际应用需求,可以得出以下结论:

(1)各征地资料地籍数据库都应包含以下字段:国标码(Code)、Cass码(CassCode)、资料编号(ZL-BH)、任务书编号(RWSBH)、资料名称(ZLMC)、电子文件名称(DZWJMC)、委托单位(WTDW)、委托日期(WTRQ)、勘测日期(KCRQ)、面积(MJ)和备注(BZ)。

(2)不同的字段名根据需要赋予不同的字段类型。

(3)Cass码必须唯一,并设为关键字。

(4)征地资料资料的Cass码采用名称加年份的方法进行分类。其中,不同征地资料地籍数据库之间的Cass码按名称加以区分,名称采用转义编码;同一征地资料地籍数据库的Cass码加名称后按年份进行分类。

(5)各征地资料地籍数据库之间的命名不能出现重名;

根据对征地资料地籍数据库设计的分析,将CAD图中的征地地籍数据库加以分类,将各征地地籍数据库中的不同地块赋予不同的Cass码,完成各征地地籍数据库在Cass中的初步分类。然后将这些地籍数据库,通过数据库转换工具加入到SuperMap SDX+空间数据库中,实现对这些征地地籍数据库的操作管理及进一步的查询分析。

5 系统开发与实现

5.1 系统开发

系统开发所使用的语言为C#。系统框架搭建完成之后,根据面向对象的思想,利用.NET组件、Super-Map Objects组件、SuperMap SDX+空间数据库技术,在业务逻辑层实现对各功能模块进行二次封装,为表示层的功能显示提供功能功能操作和接口,在表示层通过调用业务逻辑层的功能操作和接口,实现需要的功能。

5.2 系统功能的实现

通过二次开发实现了以下功能:实现了SuperMap工作空间的打开、新建和关闭功能;实现了地图的放大、缩小、平移、全幅显示、自由缩放、刷新功能;实现了文件型数据源和数据库型数据源的打开和新建功能;实现了矢量数据和栅格数据的导入和导出功能;实现了有地图查询地图属性的功能。实现了根据查询条件(如地块的Cass码、资料编号、任务书编号、委托日期、勘测日期、面积等)查询关联图形的功能;实现了54坐标和西安80坐标之间的相互转换功能;实现了部分空间分析功能。如缓冲区分析、叠置分析、统计分析、图层合并功能。

系统主体界面如图4所示:

图4 征地资料管理系统主界面功能实现

6 结论

本文以Mirosoft Visual Studio.NET为平台,通过运用面向对象技术、SuperMap Objects组件技术、Super-Map SDX+空间数据库技术,采用3层体系架构,实现了蚌埠市征地资料管理系统的开发与应用。通过二次开发,系统实现了工作空间管理、数据源管理、数据导入导出、地图的缩放、属性查询、条件查询、坐标转换、空间分析等功能,使征地资料的管理更加方便快捷,提高了生产效率,有力地促进了单位档案、资料的信息化建设。

系统具有具有以下几个方面的优点:

(1)采用3层架构体系开发,使系统开发简洁明了,并缩短了开发周期。

(2)采用了面向对象设计思想,利用SuperMap Objects组件技术,对各功能模块进行二次封装,实现了同一模块的高内聚,不同模块的低耦合,体现了软件工程设计的思想。

(3)充分利用SuperMap Objects提供的组件功能,减少了开发的难度,缩短了开发的周期。

(4)充分利用SuperMap SDX+空间数据库技术,方便了对征地资料地籍数据库的管理和操作,也有利于程序对征地资料地籍数据库的调用和分析。

(5)方面了征地资料的管理,有利于实现信息化办公,同时推动单位信息化建设。

但是,系统也有以下几个方面的不足之处:

①只是对征地资料的信息化管理进行开发,没有对征地系统的整体管理进行设计开发,使系统功能有限,无法使用户对征地管理的整体流程有清醒的认识。

②系统没有实现进一步的网络化,还没有真正实现信息化办公,有待于进一步研究实现。

③系统对征地资料管理系统的知识和认识还有所不足,有待于进一步的学习和加强。

[1] 陈述彭.地理信息系统导论[M].北京:科学出版社,1999:11~13.

[2] 北京超图地理信息技术有限公司.SuperMap Objects开发教程(中级篇)[R].北京:2007:4~6.

[3] 熊斌.基于B/S三层架构OA系统的设计与实现[D].四川:电子科技大学,2011.

[4] Avinash C.Kak.Programming with Objects a Comparative Presentation of Object Oriented Programming with C++and Java[M].New Jersey:John Wiley&Sons,2003:62~73.

[5] 王春娇,程培峰.基于SuperMap Objects二次开发的城市道路规划设计管理系统[J].东北林业大学学报,2008,36(10):80~82.

[6] 宋哲琛.基于组件式GIS技术的气象信息系统设计与开发[J].浙江水利水电专科学校学报,2010,22(4):47~48.

[7] 杨秋霞.基于组件式GIS_SuperMap Objects的地理信息系统二次开发[J].哈尔滨师范大学·自然科学学报,2005,21(6):95~97.

[8] 北京超图地理信息技术有限公司.SuperMap SDX+技术白皮书[R].北京:2003:3~9.

猜你喜欢
数据源征地组件
无人机智能巡检在光伏电站组件诊断中的应用
能源工程(2022年2期)2022-05-23 13:51:50
新型碎边剪刀盘组件
重型机械(2020年2期)2020-07-24 08:16:16
U盾外壳组件注塑模具设计
基于GIS+BIM的高速公路征地拆迁管理系统
Web 大数据系统数据源选择*
基于不同网络数据源的期刊评价研究
南方CASS结合Excel在茅坡水库征地量算与统计中的应用
基于真值发现的冲突数据源质量评价算法
风起新一代光伏组件膜层:SSG纳米自清洁膜层
太阳能(2015年11期)2015-04-10 12:53:04
分布式异构数据源标准化查询设计与实现