成都领君科技基于ArcEngine10.0+C#开发完成的JLKEngine中间件平台

 

JLKEngine中间件平台是采用ArcEngine+C#开发完成,其目的是为GIS应用提供一个快速开发构建平台,缩短GIS业务应用系统开发周期,降低GIS应用集成的开发门槛。其特点是通过可视化的构件协同建模,提供基于事件驱动和构件化的GIS应用集成框架,采用可视化拖放构件进行组装、采用动态插件加载配置的方式来完成GIS应用集成,从而大大简化了应用集成的复杂性,有效提高了GIS应用系统的易用性和可操作性。因此,JLKEngine中间件平台不仅是解决企业综合GIS应用系统的信息互通、数据高度共享和应用快速整合的中间件产品,更是能够满足GIS各种应用需求的集成的、可伸缩的、全面的中间件产品。

JLKEngine中间件平台是一个易学易用、所见即所得的二次开发工具,具有高开发效率、统一的编程模型、高度集成的框架核心,支持VBVC.NET所支持的各种开发语言。该产品是按照AO接口规范,在AE下重写AO部分底层类库,并按照统一的编程接口进行归类分组,以DLL动态链接库的方式提供二次开发接口。另外,平台还增加了图层树管理控件、符号库管理控件等更多具有定制灵活、扩展性强的可视化用户控件,输入输出接口结合了对象结构的优点,使开发者更易于理解,并进一步简化了编程工作量。JLKEngine中间件平台提供的JLKEngine Framework框架类库为基于AE标准接口ICommandITool接口开发出的行业应用插件有机集成提供了一个统一框架运行时,通过平台提供的应用插件配置管理工具有机地整合到应用框架中,从而可快速搭建出不同行业的综合GIS应用系统。

一、JLKEngine中间件平台产品组成

JLKEngine的中间件平台主要由以下五大模块组成:中间件二次开发平台、数据管理平台 、数据采集与建库平台 、后台支撑服务平台及应用框架平台。

序号

名称

功能

1

中间件二次开发平台

  基于ArcEngine的中间件(简称JLKEngine)采用VS2005+C#+ArcEngine9.1/9.2进行开发,是按AE对象的处理为目的进行的AO底层类库的二次封装,JLKEngine中间件平台是以快速进行GIS应用系统开发为出发点进行设计开发的,他是一个易学易用的二次开发工具、支持多元化语种、高开发效率、具有统一编程模型,统一中间件运行库。该平台提供的JLKEngine Framework为基于ArcGIS Engine的桌面GIS应用程序提供了统一的开发规范和标准,框架中封装了从工具栏菜单到工具条按钮的动态创建操作、插件窗体的浮动及停靠控制、提供了图层树、鹰眼视图、符号库等标准的UI界面定制控件。此外,还设计了基于Service架构的服务器容器,提供了通用的插件命令池容器,使得应用系统开发人员只需要少量代码,并利用已有的命令和工具插件可快速构建起一个应用系统。

2

数据采集与建库平台

数据采集是GIS应用系统的基础,可进行绝大多数的ArcGIS格式和CAD格式的导入/导出,可以自定义数据集(图层)、数据字典,支持多人协作工作,通过数据合并功能将不同小组和人的工作合并的数字化工作、可进行导入数据的影像几何纠正、栅格数据矢量化、坐标系转化、投影转换、可以通过直接定点或GPS定点输入数据点信息,通过表格和图形方式输入地图要素信息点,还可以进行图形拼接。数据建库是对前端数据采集工作获得的矢量数据,完成入库前的数据编辑、拓扑检查以及提供各种常用GIS数据格式的转换处理功能;另外,提供空间数据的投影转换及坐标转换功能以及符号库的制作管理。

3

数据管理平台

数据管理模块采用多数据源,多比例尺度,多格式数据一库集成数据管理模式,实现了4DDLGDRGDEMDOM)与属性文本数据的一体化集成管理。该模块提供对矢量数据和栅格数据的图文一体化管理,具有属性数据以及数据字典管理表的编辑维护功能。数据管理提供类似ArcCatalog一样的数据组织、管理工具,可以实现SDE数据库、个人数据库等的综合管理。包括:要素集的管理,SDE图层的管理(表字段新增、删除功能)、版本注册管理、投影管理,数据导入导出管理、提供图层的检查规则功能、提供元数据管理功能,提供整个数据库的全量或增量式备份恢复、各种数据格式相互转换以及提供SDE空间数据库的分布式部署和管理。

4

后台支撑服务平台

后台服务模块是基于ArcEngine的中间件的核心,具有较高的开放性和二次开发能力。后台服务模块具有地图服务、属性服务、空间分析服务、元数据服务和专题图服务等,还提供强大的开发组件库,为ArcServerArcIMS Web应用提供强大的二次开发接口。

5

应用框架平台(应用系统集成框架)

JLKEngine中间件提供基于ArcEngine开发应用系统所必需的基础应用模块。该应用框架主要包括地图浏览、地图编辑、信息查询、空间分析、专题图制作和数据共享等应用模块。该应用框架平台通过XML配置文件来动态生成系统菜单及工具栏,任何应用插件只要满足AE的标准接口ICommandITool接口就能自动集成到该应用扩展框架,引用平台提供的框架类JLKEngine FrameWork就能完成应用插件与框架地图的交互操作、数据信息的传递。另外提供应用系统运行参数配置工具以及系统菜单、工具栏配置管理工具以及数据上载到SDE数据库的初始化管理工具。

二、JLKEngine中间件平台产品功能

功能模块

功能项

说明

数据管理

数据库扩充管理

提供数据库扩展功能,使用户能够根据需要或新的数据规范增加、删除或修改地理信息数据库的逻辑组织结构。具体包括对要素集、要素类的增加、删除,对要素类中字段的增加、删除和修改。还包括新建拓扑、网络、关系类等与数据扩充管理相关功能。

元数据管理

提供对入库地理信息元数据的集中管理,具体包括对元数据字段的增加和删除,修改元数据字段的描述及数据类型。

版本管理

由于空间数据具有时间的特性,不同时期具有不同的形状和属性,因此需要将过去的数据保留于历史库中,方便用户对历史情况的查询。该模块在整个数据库中以时间为主线记录了空间数据的变化情况,使用户能够自由浏览各时期数据,将不同时期的数据进行对比,并能将数据库回溯到以前的某个状态。

历史数据管理

该模块实现对SDE空间历史数据的回溯、跟踪管理,可实现对特定空间要素的时间戳进行查询以及历史信息的对比分析。

数据编辑

该模块实现对点、线、面、注记的编辑,提供类似于CAD的图形编辑操作模式,让用户通过简单的交互实现对数据库要素的增加和删除以及修改要素的图形特征和属性。

数据查询

数据信息查询包括空间查询、属性查询以及二者联合查询。查询结果一方面在地图上加亮显示,另外一方面提供一个结果列表,点击列表可以查看更详细的属性信息。

数据浏览

该模块使用户能够对地理信息数据进行图形浏览,完成从图形和属性间的双向查询与检索,并根据用户的要求对数据进行简单的汇总统计。

数据维护

提供常用的图形编辑工具:包括图形数据编辑和属性数据编辑。还提供离线编辑功能,即实现将用户所定的区域数据进行临时分离,用户将此分离的数据进行局部范围内的更新,同时,将更新的数据进行恢复、还原,达到局部更新的离线编辑。

安全管理

它是系统能够持续稳定运行的重要保障,用户管理功能将用户划分为不同的组,并为各组分配相应的权限,使其只能使用特定功能或操作特定范围的空间数据; 日志管理功能记录登录用户对数据库的各项操作;数据库的备份与恢复功能,以便在数据库崩溃时能够重建。

符号库管理

利用所提供的类似ArcMap的符号管理器对应用系统所需符号库文件进行统一配置管理,可方便地浏览符号库中的所有符号,增加或删除*.Style格式文件以及*.ServerStyle格式符号文件,并提供符号的增加、删除以及对各符号的基本属性的修改设置,制作复杂的二维及三维地图符号。

数据处理

数据整理

数据整理主要完成空间数据图层的图层结构标准化处理,分幅数据的无缝拼接处理、空间图层的合并处理以及接边处理。

地图投影与坐标转换

提供各种地图间投影变换和坐标转换功能,实现各种数据源的无缝链接。用户可根据参数新建地理坐标系统和投影坐标系统,在框架平台中可实现地图动态投影浏览操作。

影像配准

提供对栅格图层的校正、定位、拉伸等功能。支持多种格式图像文件,并能根据现有坐标文件进行影像自动配准。

数据检查

主要依据数据库建库标准以及相应的国家标准和行业规范,对空间数据的位置精度、拓扑关系以及属性数据的完整性和逻辑一致性进行检查,生成检查报告,从而严格控制数据质量,确保数据达到入库的要求。

数据转换

提供ArcGIS支持的各种数据格式与MapInfo的标准格式(TabMIF),AutoCAD的标准格式(DWGDXF, 以及南方Cass格式文件间的相互转换。

数据入库

将检验合格的空间数据导人空间数据库,在导入过程中自动完成要素接边, 并将被更新的数据作为历史记录加以保留。

数据更新

提供类似ArcMap一样的对SDE图层、Shape文件等数据编辑工具,添加点、线、面,编辑点、线、面的节点,移动,复制,删除,多次取消编辑,多次返回编辑,线和面的打断等等功能。另外,可以实现类似Arcmap的地图高级编辑功能,包括点、线、面要素的合并、裁剪、平滑、延伸、镜像、按比例细分、倒角、缓冲等。

排版打印

提供页面视图进行布局排版打印的功能。可根据制图需要在当前页面视图插入图名、图例、指北针、公理格网、经纬网、页面打印设置以及插入接图表、Excel任务表格、背景图片、设置图框样式,对加载到布局视图的图层进行专题渲染、图层的显示控制、图层透明度设置等制图相关功能。

数据导入/导出

平台提供以下数据格式的导入/导出支持,即实现文本文件、Excel文件以及dbase数据格式文件所提供的坐标数据列表自动创建图层,还可对图层文件的属性数据(包括图形局部区域要素)输出到Excel后进行进一步编辑处理。

应用框架

系统配置管理

平台提供应用系统参数配置管理工具:包括各类编码配置、菜单配置、工具条配制、数据字典配置与管理、数据库连接配置、图层渲染字段配制、捕捉方式配制、数据库备份、恢复路径配置。

图层配置

平台提供图层树管理控件,包括类似Toc的图层树管理操作控件、图层数据源管理控件以及根据应用需要动态配置所需加载的数据图层,对图层的属性信息、专题渲染信息、以及数据图层来源信息进行统一配置管理。通过对数据源、数据集、地图、排版来组织,按数据结构及数据源方式进行集成管理(通过自定义格式XML文件将数据按有序的空间逻辑组织进行管理)。

权限管理

平台提供基于角色的权限管理机制,将权限分为两大类:可操作功能的权限,主要是控制用户可以进行什么操作,即对系统功能菜单及用户工具条等插件的操作权限;可操作数据的权限,主要是控制用户可以操作那些数据,操作的权限有多大(可写或只读),即对系统的空间图层的浏览、编辑权限。

日志管理

平台提供对GIS的各种应用操作,尤其是对地图的编辑处理操作提供了详细的日志记录操作,另外,对系统的误操作或异常操作也进行了日志记录,便于系统管理员对错误的查找与定位。

浏览

视图浏览功能主要提供对当前地图的视图显示控制,进行放大、缩小、平移、前一视图、后一视图、固定比例放大、固定比例缩小、全屏以及对视图标签进行创建以及维护管理。

选择

主要提供了根据位置和属性选择要素、根据图形选择、缩放到选择要素、漫游到选择要素、切换选中要素等常用的对图层要素进行选择的功能。还提供通过Shift快捷键进行选中要素的追加及移出操作,还提供了通过属性综合查询以及空间位置叠加查询来选择所需图形要素。

查询

通过查询生成器定义用户查询条件,完成对地图图层的空间定位查询及属性显示、空间图层间的空间叠加查询及属性表的属性信息查询。

编辑

提供对点、线、面及注记图层的编辑功能,主要包括撤销、重做、剪切、复制、粘贴、添加节点、删除节点、修改节点等基础编辑功能。在地图编辑过程中,可开启捕捉功能设置捕捉半径进行鼠标的精确定位控制、还可启动跟踪功能完成对当前要素的矢量化跟踪处理。

统计

提供一套统计图表工具,该统计图表可对时时动态分析的业务数据或专题分析数据进行汇总统计,以形象直观的专题统计图表方式输出。

分析

包含空间分析、网络分析、及缓冲区分析。空间分析提供基于表面模型的空间分析功能,提供基于栅格模型的单元格统计、领域统计、分区统计、重分类等操作。网络分析主要包括:静态求最佳路径、N条最佳路径分析、最短路径、动态最佳路径分析等。缓冲区分析是针对点、线、面实体,自动建立其周围一定宽度范围以内的缓冲区多边形。

报表

提供一套通用的报表自定义工具,用户可根据业务应用需要定义自己所需数据报表,进行报表模板的动态维护。为查询统计结果提供即时打印输出的功能,便于查询统计结果的存档和流动。

专题

专题图制作模块通过调用专题图服务,来生成实际的专题图,如生成等值线图、等值面、彩色渲染图、饼图、柱状图、点密度等专题图。通过专题图制作功能,编制不同的图件,可根据属性,迅速配色,设置填充花纹、线型、符号,完成各种类型的专题图成图工作。

制图输出

该模块向用户提供以标准图幅或自定义的方式打印地图数据的工具,用户可选择预先定制好的打印模板,对输出图形进行地图整饰,并根据地理数据库中的数据制作各种专题图,包括点密度图、柱状图等。

工具箱

工具箱是为扩展平台为集成各类应用插件或构件所提供的一个集成容器,主要提供那些非可视化操作的应用功能。目前提供了shpGeodatabasedwg(dxf) mif(tab)Cass等几种常用数据格式的相互转换,还提供了数据库的压缩、整理以及备份、恢复、分离等功能。

3D分析及Globe分析

三维视图

平台可利用等高线数据或者DEM数据构建三维模型、提供预警分析、纵剖面分析、横剖面分析等专用分析工具。完成插值分析、生成等高线、建立TIN、生成坡度/坡向图,以及实现栅格与矢量间的相互转换。

构建三维模型

表面分析

数据格式转换

内插成栅格

与应用框架有机集成

1、添加3D浏览工具,工具放在MainFrame.exe的视图菜单下面,该工具通过鼠标画框可以查看所选区域的3维视图。

2、提供对应用系统的拖拽支持,可以从Windows中拖动文件放到MapControl上实现对文件的打开,支持mxd文档、shp格式数据、lyr数据的拖拽。

3TOCDisplay可支持点击修该标签功能

4、可实现从TOCDisplay拖拽到MapControl中实现该图层的在加载5、图层属性提供RasteLayer3种渲染模式支持(对不同类型的栅格数据有不同的渲染方式)

6、图层属性提供对图层的三维扩展属性设置,该功能在Scence中有效

7、提供了Scence的属性设置功能。

三维编辑

1、提供保存功能,可以实现三维文档的保存(不是ArcScenesxd文档格式)

2、提供基本的编辑操作,包括编辑要素、创建要素、要素属性编辑等。

  在创建要素工具中,提供如下键盘操作:

l         C:线要素闭合,并结束草图工具。对线要素有效

l         上下左右键可控制视图的上下左右移动

l         F: 并结束草图工具

l         Esc:取消操作工具

编辑工具可通过双击显示一个选中要素的所有节点,编辑工具键盘操作:

l         Delete 删除选择要素

l         使用上下左右键可以对选中要进行移动操作

编辑工具同时提供一个右键菜单

要素属性编辑工具、几何信息工具、创建矩形、创建圆工具和以前的相类似

3、在Scence中进行鼠标移动时需要注意在某些区域会出现有无效坐标点位提示的情况(这是对应的屏幕坐标无法映射到地理坐标点上的情况),此时鼠标位置的点位不被系统接受。

4、使用鼠标滚轮可实现视图的放大缩小

 

http://www.ljlk.net/,成都领君科技有限公司,基于ASP.NET的superflow工作流平台免费下载试用!

http://www.ljjlk.com/,成都领君科技有限公司,基于ArcGIS的JLKEngine中间件平台免费下载试用!

 

联系电话:13982071140,黄

QQ:26326507

 

你可能感兴趣的:(成都领君科技基于ArcEngine10.0+C#开发完成的JLKEngine中间件平台)