MapGIS Desktop如何将txt导入为区数据

前言

通过txt、csv、excel等文本文件记录和共享地理信息数据,在实际业务场景中非常常见,本文将结合客户具体需求,介绍如何将记录在文本中的四至坐标数据导入至MapGIS中形式区数据。

场景

客户的数据如下图所示,表中记录了地物东西南北的极值坐标和一些属性,现在需要将记录了坐标信息的表导入为区图层。

在这里插入图片描述

实现思路

1、参考MapGIS Desktop操作手册中对txt数据导入的说明,支持将txt导入为点、线数据。这里可以先将其导入为线数据,然后通过“线拓扑造区”工具将其转为区数据。

实现步骤

要将第一张表中的数据导入为线,首先要参考文档中的要求,将其整理为标准格式:

 ID,Name,Type <-- (1) 属性字段名称 
 100.0,20.0,0 <-- (2) 线段1上的点坐标[x,y,z],每个点一行 
 100.1,20.1,0 
 100.1,20.2,0
 P1,农用地,水田 <-- (3) 线段1的属性值 
 ; <-- (4) 线段1结束标志

其中第一行是属性字段名称,第二行开始是线段1的点坐标(xyz),每行是一个点。最后一行是分号,用于和下一条线做分隔,倒数第二行是属性值,属性值应与属性字段名称一一对应。以此类推,每条线段都是这种格式。最终形成的格式如下:
在这里插入图片描述

如果数据量比较大的话,可以结合AI工具,写一个脚本,自动将数据整理成这种格式。比如本文使用如下提示词,让AI帮我写了一个JS脚本自动化的完成了这个工作:

帮我写一个JS脚本,用于格式化处理csv中的文件,具体要求如下:
1、遍历指定文件夹中的csv文件;
2、根据列号提取数据四至坐标minx、miny、maxx、maxy;
3、生成四个角点坐标;
4、将度分秒坐标转换为小数点形式;
5、将结果输出到新的txt文件中,表头从第一行中获取,格式如下:
ID,Name,Type <-- (1) 属性字段名称 
100.0,20.0,0 <-- (2) 线段1上的点坐标[x,y,z],每个点一行 
100.1,20.1,0 
100.1,20.2,0
P1,农用地,水田 <-- (3) 线段1的属性值 
; <-- (4) 线段1结束标志
其中第一行是属性字段名称,第二行开始是线段1的点坐标(xyz),每行是一个点。最后一行是分号,用于和下一条线做分隔,倒数第二行是属性值,属性值应与属性字段名称一一对应。以此类推,每条线段都是这种格式。
6、现有的数据格式如下:
xxxx
7、线要首尾相连,形成闭合的线。

至此,我们得到了一个标准格式的txt文件,接下来就可以按照文档中的说明,将其导入为线数据了。

  • 在数据库上右键导入-其他数据
    在这里插入图片描述
  • 设置导入参数
    在这里插入图片描述

这样就可以将txt文件中的数据导入为线数据了。

接下来,将线数据转为区数据。在MapGIS Desktop中,线数据可以通过“线拓扑造区”工具转为区数据。在MapGIS Desktop中,线拓扑造区工具位于头部“线编辑”菜单中。将上一步生成的线数据拖拽到中间的地图视图中,然后在左侧工作空间中选择该数据-右键-当前编辑,让线处于编辑状态,此时可以看到“线编辑”菜单中的“线拓扑造区”功能已经可用。点击该工具即可将线转换为区转换。
在这里插入图片描述

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值