arcgis-拓扑检查-model
文章目录
- 前言
- 一、拓扑检查的方法
- 二、必要步骤
- 三、在arcmap中使用model创建一个简单的拓扑检查
前言
对于使用arcgis的人来说,拓扑检查是必不可少的,下面介绍一种使用model的方式来进行拓扑检查
一、拓扑检查的方法
1. 在数据集上右键按照向导建立拓扑;
2. 使用拓扑工具的一系列工具分布建立;
3. 创建模型工具,制作专门的拓扑工具;
4. 利用arcpy灵活定制拓扑检查jio本;
5. 使用AE中ITopologyContainer等接口二次开发。
二、必要步骤
无论使用哪种方式,拓扑检查都离不开以下的步骤:
- 创建拓扑:在数据基上新建一个用于拓扑的容器;
- 添加要素类:必须将需要参与拓扑检查的要素添加到同意数据集的拓扑容器中;
- 设置容差:根据情况设置,若不设置有默认值;
- 添加拓扑规则:根据要检查要素添加点、线、面的拓扑规则;
- 验证拓扑:如果前面步骤没有报错,表示拓扑完成,可以开始验证了;
- 查看结果:,可能通过拓扑工具条查看拓扑结果,也可以导出为错误要素记录;
- 修改错误:拓扑检查的目的就是修改拓扑错误,不同的错误有相应的修改方式。
三、在arcmap中使用model创建一个简单的拓扑检查
创建文件数据库–>创建要素数据集–>导入需要参与拓扑检查的要素,这里做的测试数据,有三处面重合的拓扑错误,自己创建的时候可以添加一个有面缝隙的错误进行测试多个拓扑规则的添加
打开model工具进行建模,使用到的工具主要在,数据管理工具箱中的拓扑工具箱。
创建拓扑:
添加参与拓扑检查的要素
设置容差
添加拓扑检查规则
验证拓扑
按照上诉步骤将工具拖入model进行设置输入输出即可得到下面的model:
点击model中的右上角运行得到的拓扑如图:
上述步骤需要注意的是:model需要保存在工具箱中,不能保存在文件夹中,建立好的拓扑检查model也可以导出为python脚本,在python中运行也可。
里面有些变量重复了,稍微修改即可。
# -*- coding: utf-8 -*-
# ---------------------------------------------------------------------------
# topotest3.py
# Created on: 2020-10-26 14:34:31.00000
# (generated by ArcGIS/ModelBuilder)
# Description:
# ---------------------------------------------------------------------------# Set the necessary product code
import arceditor# Import arcpy module
import arcpy# Local variables:
data = "C:\\Users\\curse\\Desktop\\tptest\\tptest.gdb\\data"
test = "C:\\Users\\curse\\Desktop\\tptest\\tptest.gdb\\data\\test"
test__2_ = "C:\\Users\\curse\\Desktop\\tptest\\tptest.gdb\\data\\test"
test__3_ = "C:\\Users\\curse\\Desktop\\tptest\\tptest.gdb\\data\\test"
toporesult = "C:\\Users\\curse\\Desktop\\tptest\\tptest.gdb\\data\\toporesult"
toporesult__2_ = "C:\\Users\\curse\\Desktop\\tptest\\tptest.gdb\\data\\toporesult"
toporesult__3_ = "C:\\Users\\curse\\Desktop\\tptest\\tptest.gdb\\data\\toporesult"
toporesult__4_ = "C:\\Users\\curse\\Desktop\\tptest\\tptest.gdb\\data\\toporesult"
toporesult__6_ = "C:\\Users\\curse\\Desktop\\tptest\\tptest.gdb\\data\\toporesult"# Process: 创建拓扑
arcpy.CreateTopology_management(data, "toporesult", "")# Process: 向拓扑中添加要素类
arcpy.AddFeatureClassToTopology_management(toporesult, test, "1", "1")# Process: 设置拓扑容差
arcpy.SetClusterTolerance_management(toporesult__2_, ".001")# Process: 添加拓扑规则
arcpy.AddRuleToTopology_management(toporesult__3_, "Must Not Overlap (Area)", test__2_, "", "", "")# Process: 添加拓扑规则 (2)
arcpy.AddRuleToTopology_management(toporesult__4_, "Must Not Have Gaps (Area)", test__3_, "", "", "")# Process: 拓扑验证
arcpy.ValidateTopology_management(toporesult__6_, "Full_Extent")
参考文章:https://www.cnblogs.com/liweis/p/11639498.html
http://www.360doc.com/content/17/0925/09/25010725_689862935.shtml
https://blog.csdn.net/Sdnu08gis/article/details/106329939#%E6%A0%B7%E4%BE%8B%E6%95%B0%E6%8D%AE%E5%87%86%E5%A4%87
arcgis-拓扑检查-model相关推荐
- 《转》收集最完整的arcgis拓扑处理
收集最完整的arcgis拓扑处理 (2011-10-16 20:07:00) 标签: 杂谈 分类: 3S ArcGIS中的拓扑 [第一部分] Arcgis中topolopy说明: 在arcgis中 ...
- 使用ArcGIS进行拓扑检查
使用ArcGIS进行拓扑检查 最近在项目中碰到一个问题:道路中心线如果有多部分组成,例如是MultiLineString的时候,由于数据采集处理的原因经常会造成,MultiLineString的各个部 ...
- ArcGIS Engine - 拓扑检查
1.窗体界面 2.构建拓扑数据集 using Com.XXW.NTSL.Base; using Com.XXW.NTSL.FileManagement; using Com.XXW.NTSL.Fram ...
- ArcGIS矢量化并进行拓扑检查
土地利用数据每年都在发生变化,故每年都要根据去年的数据进行修改.请根据以下要求,修改A区域的数据并对B区域已做好的数据进行拓扑检查. 01 数据说明 1. 地类图斑A.shp:A区域需要编辑修改的图斑 ...
- AE开发 创建Feature后,需要进行拓扑检查
在创建完Feature并赋予Geometry后,需要对当前的Feature.shape进行拓扑检查.利用 ITopologicalOperator接口中的IsSimple属性进行拓扑检查. 检查失败后 ...
- ARCGIS 拓扑规则阐述
ARCGIS 拓扑规则阐述 [第一部分] Arcgis中topolopy说明: 在arcgis中有关topolopy操作,,有两个地方,一个是在arccatalog中,一个是在arcmap中.通常我们 ...
- FME数据处理04:面自相交拓扑检查
在ArcGIS中仅提供了线要素的自相交拓扑检查,并未找到关于面要素自相交的相关表述:本文结合FME2019.列举了几种面自相交的情形,并介绍了FME中三个转换器及其设置方法. 关于ArcEngine的 ...
- ArcMap 小知识(5):拓扑检查及修改
点赞和关注是我创作的最大动力~~ 拓扑检查前的准备工作 因为拓扑检查需要在要素数据集中进行,所以要将需要拓扑检查的数据导入要素数据集. 新建个人地理数据库 新建要素数据集 导入要素类 新建拓扑 在新建 ...
- 基于ArcPy的GDB地理数据库拓扑检查
ArcPy实现拓扑检查,输出结果 ArcPy 是一个以成功的 arcgisscripting 模块为基础并继承了 arcgisscripting 功能进而构建而成的站点包.目的是为以实用高效的方式通过 ...
- 拓扑检查C++(ArcObject)
bool ArcmapDataBase::checkLayerTopology(dan::Object<iDataPlugin::IPGLayer> layer, const dan::D ...
最新文章
- zynq学习06 zynq的PL中加入的AXI_GPIO IP核来控制GPIO操作
- Github continuous deployment (CD) 最佳实践
- 牛客题霸 [ 最长递增子序列] C++题解/答案
- ajax无刷新评论的思路,ajax学习——ajax版无刷新评论(数据库)
- [css] css中Scroll-behavior属性有什么应用场景?
- div css入门教程,更简洁CSS清理浮动方式:clearfix
- SQL Relay 0.49 发布,SQL 中间层
- C++中#和##的特殊使用
- 在源文件(.c)和头文件(.h)中声明和定义的区别——C语言
- Windows Phone SDK 7.1 RTM 发布
- 【电机测速】一文搞懂M法、T法测速原理
- 那些年用过的机械键盘
- 时间管理——帕累托法则(二八定律)
- 使用vue扫描扫描仪图像
- 悟以往之不谏,知来者之可追~
- STM32使用外部中断控制led灯亮灭
- Fallback class must implement the interface annotated by @FeignClient
- 如何才能从英语视频转换文字呢?
- 榕树贷款利用AI人工智能技术发送非常迅速(榕树贷款)
- ImageView组件的应用:图片浏览器