找回密码
 立即注册

QQ登录

只需一步,快速开始

随着MapGIS平台产品不断迭代,作为GIS软件基础的数据组织也在同步更新,其中最主要的是从MapGIS 6X到MapGIS 10数据格式的升级。想必熟悉MapGIS的用户在学习或工作过程中,经常会遇到6X数据和MapGIS 10数据之间的升级和转换操作。
那么如何实现MapGIS 6X数据的无损升级呢?本篇将从MapGIS桌面二次开发角度为大家详解一键升级秘方。
6X数据升级包含哪些内容?
在进行6X数据升级时需进行两部分操作,即数据升级与系统库升级。

0cts5v5t3ib69.png

0cts5v5t3ib69.png

其中,数据升级保障了数据中空间信息、属性信息的完整。系统库升级保障了空间数据中几何要素的图形显示、注记文本样式的无损转换。
6X数据与MapGIS 10对应关系
在进行数据升级之前,还需简单了解6X数据与MapGIS 10数据格式之间的对应关系。因为不同数据类型之间进行转换往往会转换失败,比如将点数据强行转换为线或区数据。
6X数据一般以wt、wp、wl为后缀名的文件形式存在(中间带字母“a“表示明码文件),分别表示点&注记、线、区数据,并可以通过mpj格式的工程文件进行组织。
MapGIS 10数据是以要素类、注记类的形式保存在MapGIS数据库中,其中数据类型分别以Pnt(点)、Lin(线)、Reg(区)、Ann(注记)进行区分。

dcubspsiybh70.png

dcubspsiybh70.png

特别注意:6X数据的点数据与注记数据都保存在wt或wat文件中,如数据中同时包含点数据与注记数据,需要分别将wt数据转换为点要素类和注记类(即转换两次)。
6X系统库升级
若将6X系统库升级至MapGIS 10版本,可通过MapGIS 10 Desktop操作完成。
操作步骤:打开MapGIS 10 Desktop,点击“设置“→”系统库管理”→”导入6x系统库“。

lff4pnbywiz71.png

lff4pnbywiz71.png

MapGIS系统库包含符号颜色库(Slib)和字体库(Clib)两部分,选择对应系统库文件夹即可。

3p1ofg2hvnb72.png

3p1ofg2hvnb72.png

升级完成后会在MapGIS安装目录生成对应系统库文件夹,并且在系统库管理界面能够看到升级后的6X系统库。

lyjvwbmror173.png

lyjvwbmror173.png

0vuank5fanz74.png

0vuank5fanz74.png

二次开发快速实现数据升级
通过二次开发实现MapGIS 6X数据升级其实十分简单,因为在MapGISObjects SDK中所有二维矢量数据转换操作都通过DataConvert类中封装的Convert()方法实现。其中针对不同的数据类型,只需根据需要设置对应的转换类型即可。
例:本次6X数据升级使用的是ConvertOptionType.OPT_6TO7类型。
MapGIS平台二次开发中大部分数据转换操作都可以通过三板斧完成,即:

初始化数据转换对象DataConvert;

设置转换参数SetOption();

执行数据转换Convert()。

b1yfosgbxnt75.png

b1yfosgbxnt75.png

其中,系统库路径即前文中提到的6X系统库文件夹路径(Slib和Clib)。整个转换过程中,转换参数具体如何设置可参考如下代码(注:示例中对wt数据进行了两次转换,分别转换为点数据和注记):

jxrn153fwsd80.png

jxrn153fwsd80.png

此外,若6X数据为明码格式(wat、wal、wap)需先将6X明码数据转换为6X格式,转换时只要设置源数据与目的数据即可,无需设置转换类型。
转换前后对比

4uuabh0oafd84.png

4uuabh0oafd84.png

转换前MapGIS6X数据

zp0ebkpfy3t86.png

zp0ebkpfy3t86.png

转换后MapGIS10数据
分享至 : QQ空间
收藏

0 个回复

您需要登录后才可以回帖 登录 | 立即注册