常规GIS应用主要通过GIS桌面软件或基于GIS组件开发的行业桌面软件,通常以文件或数据库形式存储和管理基础地理信息和业务数据。可直接通过C/S架构开发应用系统,该应用系统直接与数据存储进行读写交互;也可通过B/S架构将数据发布为REST服务,供前端Web应用调用。同时随着技术进步和用户对效率的需求,地图瓦片技术逐渐被采用,以提升地图服务的访问效率。
基于ArcGIS平台的常规GIS应用,主要是通过ArcGIS Desktop(ArcMap)提供数据处理能力,地理空间数据通过 Geodatabase 进行存储管理,用户可以通过ArcObjects或者ArcGIS Engine开发桌面应用系统直接读取Geodatabase数据实现 C/S 架构的行业应用。也可以将 Geodatabase 数据按照行业规范要求进行制图,生成地图文档(MXD),将这些地图文档通过ArcGIS Server发布为ArcGIS REST服务,然后基于ArcGIS提供的Javascript API开发Web应用调用地图服务来实现B/S架构的行业应用。同时也支持通过ArcMap提供的切图工具生成地图瓦片,发布基于缓存的地图服务以提升Web应用的访问效率。
综上所述,如果要进行ArcGIS的平台替代,我们需要从数据管理、地图文档、地图瓦片和地图服务几个方面对ArcGIS平台数据进行替换迁移。
- 数据管理:一般情况下数据是基于ArcGIS的 Geodatabase数据模型进行存储管理,而Geodatabase模型又包含比较多的具体子数据模型如面、网络、镶嵌数据集等;所以需要将 Geodatabase 所支持的数据模型替换为超图相应的数据模型;另一方面这些数据是以个人、文件或者企业级Geodatabase的方式进行实际存储,所以需要将这些物理存储形态转换为SuperMap相应的物理存储形态。
- 地图文档:ArcGIS通过MXD文件存储大量的地图信息,这里面涉及颜色、符号、样式、标注、不同类型的专题图等等,所以需要将原来在MXD里面存储涉及不同行业制图要求规范的相关对象信息通过SuperMap的制图元素进行转译表达,并以SuperMap地图文档的文件格式进行存储。
- 地图瓦片:SuperMap提供读取ArcGIS地图瓦片包的能力,对地图瓦片进行解析和显示。
- 地图服务:在上层的Web应用中,主要是调用了ArcGIS Server发布的REST服务,而这些服务又包含了很多不同的服务类型,如地图服务、要素服务、分析服务等,同时考虑到平台替换成本要小于上层应用替换,所以在基于上层应用(以ArcGIS API开发)不变的情况下,需要实现通过SuperMap GIS服务器发布具备ArcGIS相应的REST服务类型,支持上层应用的调用。
在使用ArcGIS迁移模块的功能时,SuperMap iDesktopX会自动验证计算机中是否有需要的ArcMap许可,并对迁移的数据类型和图层类型进行检查。
SuperMap支持迁移的数据和图层类型如下:
支持导入 ArcGIS 数据类型与 SuperMap 数据类型的对应关系:
ArcGIS数据类型 | SuperMap数据类型 |
esriDTFeatureDataset | 二三维点线面文本数据集 |
esriDTFeatureClass | 二三维点线面文本数据集 |
esriDTTable | 属性表 |
esriDTRasterDataset | 影像数据集 |
esriDTNetworkDataset | 网络数据集 |
esriDTMosaicDataset | 镶嵌数据集 |
支持导入 ArcGIS 矢量图层类型与 SuperMap 图层类型的对应关系:
ArcGIS矢量图层 | SuperMap矢量图层 |
SimpleRenderer | 普通矢量图层 |
UniqueValueRenderer | 单值专题图 |
ChartRenderer | 统计专题图 |
ClassBreaksRenderer | 分段专题图 |
FDOGraphicsLayer | 普通文本图层 |
支持导入 ArcGIS 栅格图层类型与 SuperMap 图层类型的对应关系:
ArcGIS栅格图层 | SuperMap栅格图层 |
RasterUniqueValueRenderer | 栅格单值专题图 |
RasterClassifyColorRampRenderer | 栅格分段专题图 |
IRasterStretchColorRampRenderer | 普通栅格图层 |
注意:下表为暂不支持导入的 ArcGIS 数据类型和图层类型:
不支持导入的ArcGIS数据类型 |
esriDTAny |
esriDTContainer |
esriDTGeo |
esriDTGeometricNetwork |
esriDTTopology |
esriDTText |
esriDTRelationshipClass |
esriDTRasterBand |
esriDTTin |
esriDTCadDrawing |
esriDTRasterCatalog |
esriDTToolbox |
esriDTTool |
esriDTTerrain |
esriDTRepresentationClass |
esriDTCadastralFabric |
esriDTSchematicDataset |
esriDTLocator |
esriDTMap |
esriDTLayer |
esriDTStyle |
esriDTLasDataset |
不支持导入的ArcGIS矢量图层 |
DotDensityRenderer |
ProportionalSymbolRenderer |
ScaleDependentRenderer |
RepresentationRenderer |
BiUniqueValueRenderer |
不支持导入的ArcGIS栅格图层 |
RasterColormapRenderer |
RasterDiscreteColorRenderer |
RasterRGBRenderer |
本章将为您介绍以下内容:
- 环境配置:介绍如何配置ArcGIS迁移所需环境。
- 数据库迁移:介绍如何将ArcGIS Geodatabase数据类型转换为SuperMap对应的数据类型。
- 地图迁移:介绍如何将ArcGIS的地图文档、符号等迁移至SuperMap。
- 服务迁移:介绍如何将ArcGIS服务迁移为SuperMap服务。
- 瓦片迁移:介绍如何将ArcGIS的TPK切片缓存文件迁移为SuperMap的瓦片格式。
- ArcGIS Pro迁移:介绍如何将ArcGIS Pro中的工程文件(*.arpx)迁移为SuperMap iDesktopX的工作空间文件(*.smwu)。