ArcGIS小知识(三)——矢量面转点、点转面(arcgis),面矢量转点矢量

本文介绍如何将面矢量数据转换为散点图,并重新整合为面矢量的过程。包括将面转为点,整理点数据,再将点数据转回面矢量的详细步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

有时需要把面矢量打散成散点图,有时又需要合并有序点生成一个完整的面矢量,就是这篇的主要内容了。

我用这个功能是先将面转点,而后在转回面。因为点转面时必须导入某一格式的txt才能识别并将相同图斑的点聚集在一起。因此,在面转点时需要分两步进行:首先将面矢量打散得到折点,并导出其相应的属性和序号信息;然后将点矢量导出为特殊格式的txt,然后利用Excel进行分块。

一、面转点

1.1、打散得到折点属性以及序号等信息:利用下图进行折点转点得到折点矢量(点矢量文件),然后在得到的点矢量中计算每个点的地理坐标(以度为单位的,下图中,得到的结果是116.12345;39.12345这种的),再导出点的属性表到Excel中,然后进行下一步

1.2、利用下图samples工具(其中samples工具默认是隐藏的,打开方法请参考这篇博客)将点导出到txt文件中,注意,导出时的文件名需要带上.txt(下图只写899不可以,899.txt才行),导出来的文件中只有序号和坐标,没有其他属性了【只有这种格式的才能导入arcgis再次生成面】

 

1.3、将面矢量的属性导出到Excel中备用,后面恢复面文件后需要没有属性,只有靠它进行链接添加。

二、点转面

2.1、将步骤1.2中导出的txt文件分块:

步骤1.1中折点导出的Excel表格中的ORIG_FID的序号是该点对应图斑的编号,同一编号表示是同一图斑上的点。使用这个编号可以将1.2中得到的txt按照图斑分类,即:在同一个图斑点的后面回车得到下一行并添加一个END。

把所有的点按照图斑分类后,把最前边的Point改成Polygon。(此步骤有便捷加END的方法,参见第三章)

 

2.2,然后再利用samples的工具转回到面矢量

对话框设置如下:

a.其中的Input Decimal Separator填写“12345678.12345”或者“11111111.11111”。

b.最后一行的Spatial Refreence选择:地理坐标系(Geographic Coordinate Systems)>亚洲(Asia)>beijing1954【因为:这些坐标点的坐标是在地理坐标系下计算的(经纬度,不是6位的那种),所以再生成面时就要用地理坐标系,而地理坐标系的图斑矢量不能计算面积,故而需要用“Project”工具转成投影坐标。。。如果这些点是用投影坐标计算的坐标(6位数的那种),那么再生成面时就要用相应的投影坐标)】

2.3将面矢量属性链接1.3中得到属性表,就可以得到和未拆开成点之前的面矢量一样的了。

三、统一加END

3.1、新建Excel,点击“数据”>“自文本”读入1.2的txt文件,勾选下列分隔符:

3.2、把1.1折点的属性表中的的ORIG_FID列复制到目前的表中。

3.3、选中ORIG_FID列,点击Excel工具栏“数据”>“分类汇总”,可以把不同的图斑序号分开。然后使用通配符对“0计数,1计数……”这一列进行替换,即:“*计数”替换为“END”。然后再新建一个列,使它等于point列(point列指第一行是point,下面几行是序号0/1/2/3/4……的那一列)和END列的组合,因为END最终要插入到序号列中才能将不同序号但相同图斑的点分开。公式为:=A1&B1。

3.4、恢复成txt样式:接着对存放坐标的那两列设置格式,选中相应的那两列,然后右击选择“设置单元格格式”,将小数点后设为9位(不一定是9,目的是为了将其全部位数显示出来,因为Excel默认只显示两位小数)。在旁边的空白列中,将前边的所有列都链接放在这一个列中,并在每一个中间加一个空格,公式为: =A1&" "&B1&" "&C1&" "&D1&" "&E1。得到和1.2中txt数据完全类似的格式。再把这一列复制到新建的.txt中,并且别忘了把第一行的Point改成Polygon。

ArcGIS 中,将线矢量数据换为面矢量数据是常见的空间数据处理任务,尤其适用于将相邻线要素闭合为多边形的情况。以下是几种常用的方法和工具,可用于实现线操作: ### 方法一:使用“Create Features From Text File”工具 此方法适用于手动输入坐标生成要素的情况。通过将线要素的坐标导出为文本文件,然后使用此文件创建要素。该方法适用于需要对坐标进行编辑或调整后再生成的情况。 ### 方法二:使用“Feature To Polygon”工具 这是最常用的方法之一,位于 ArcToolbox 的 **Data Management Tools → Features → Feature To Polygon** 中。该工具可以将闭合的线要素直接换为要素,前提是线要素必须构成闭合的环。该工具支持多个线要素之间的相交和连接,适用于处理复杂线网络的情况[^1]。 示例代码(Python 脚本示例): ```python import arcpy # 设置工作空间 arcpy.env.workspace = "C:/data" # 输入线要素类 in_lines = "rivers.shp" # 输出要素类 out_polygons = "rivers_polygon.shp" # 执行换 arcpy.FeatureToPolygon_management(in_lines, out_polygons) ``` ### 方法:使用“Construct Polygons”工具 在 ArcGIS 的编辑环境中,可以使用 **Construct Polygons** 工具将选中的线要素自动构造成要素。该工具适用于交互式编辑操作,尤其适合处理少量线要素的场景。此方法要求线要素必须形成闭合路径,否则无法构造出完整的多边形。 ### 方法四:使用“Topo To Region”工具(适用于旧版本) 在某些旧版本的 ArcGIS 中,提供了 **Topo To Region** 工具,可以将拓扑线要素换为要素。该工具通常用于处理基于拓扑结构的线数据,但该功能在较新版本中已被逐步淘汰。 ### 注意事项 - **线要素必须闭合**:无论使用哪种方法,线要素必须构成闭合的环,否则无法正确生成要素。 - **重叠与交叉处理**:线要素之间的交叉或重叠可能会影响生成的拓扑关系,建议在换前进行数据清理。 - **属性继承**:部分工具支持将线要素的属性传递到生成的要素中,需在工具参数中设置字段映射。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值