在ArcGIS中叠加操作会带来碎图斑或狭长面,而这些碎图斑或狭长面又会影响后续的判断。所以就需要消除。

例如:

具体操作有以下方式:

1、最简单的的方法就是使用ArcGIS提供的“消除工具”。在"数据管理工具"——“制图综合”——“消除”。

2、使用Python脚本

# -*-coding:gbk-*-

import arcpy

from arcpy import env

import time

# 融合指定条件的图斑

try:

source_gdb_path = "F:/gisData/"  # 原始图层工作空间

in_features = "subbasin.shp"   # 输入图层

expression = "SHAPE_AREA <50 or SHAPE_Area/ SHAPE_Length<0.2"  # 融合限制条件

env.workspace = source_gdb_path

time_begin = time.time()

print "消除指定条件下的要素{0}".format(expression)

tempLayer = "block_layer"

# SearchCursor

fcount = len([feature[0] for feature in arcpy.da.SearchCursor(in_features, "SHAPE_AREA", expression)])

while (fcount > 0):

print('fcount:{0}  Time : {1} s'.format(fcount, time.time() - time_begin))

tempLayer = "{0}_b".format(tempLayer)

# MakeFeatureLayer

arcpy.MakeFeatureLayer_management(in_features, tempLayer)

in_features = "{0}_E".format(in_features)

if arcpy.Exists(in_features):

arcpy.Delete_management(in_features)

# SelectLayerByAttribute to define feature to be eliminated

arcpy.SelectLayerByAttribute_management(tempLayer, "NEW_SELECTION", expression)

# Eliminate

arcpy.Eliminate_management(tempLayer, in_features, "AREA")

fcount2 = len([feature[0] for feature in arcpy.da.SearchCursor(in_features, "SHAPE_AREA", expression)])

if fcount2 == fcount:

break

else:

fcount = fcount2

print "Total Time {0}".format(time.time() - time_begin)

except Exception, e:

print e.message.decode("utf_8")

Arcgis中消除子流域划分时出现的零碎图斑或狭长面(Eliminate)相关推荐

  1. 【ArcGIS】05 流域提取

    文章目录 1 题目要求 2.1 计算流域面积 2.1.1 Hydrology方法 2.1.2 Arc Hydro Tools方法 2.1.3 ArcHydroTools和Hydrology方法对比 2 ...

  2. 【ArcGIS】10 流域水系提取

    所需工具 ArcGIS 10.x 版本: https://www.esri.com/en-us/arcgis/products/arcgis-desktop/overview Arc Hydro To ...

  3. ArcGIS的数字流域分析、山洪降水径流建模、Hec-RAS建模及洪水危险性评价

    气候变化背景下,极端天气导致的洪水事件将更加频发.快速城市化对流域下垫面的改变,及人类活动向洪泛区的扩张.二者共同使得全世界多数人类活动高度聚集区的洪水风险增加.洪水淹没危险性(各种年遇型洪水淹没)是 ...

  4. 在创建ArcGIS Server10.5的站点时,系统提示创建‘System/publishingToolsEX.GPServer’失败(转)...

    环境 操作系统:Win2008 R2 SP1 ArcGIS Server版本:ArcGIS Server10.5 浏览器版本:IE8,Chrome 问题 在创建ArcGIS Server10.5的站点 ...

  5. arcgis DEM 提取流域范围(详细教程)(空间分析--Hydrology)

    arcgis DEM 提取流域范围(详细教程)(空间分析–Hydrology) 1:洼地填充 Fill(生成无洼地的DEM) 2:计算流向 Flow Direction(基于无洼地的DEM 计算流向) ...

  6. ArcGIS制作旅游时间等时圈

    ArcGIS制作旅游时间等时圈 emmm-旅游时间等时圈,这不是写论文上面研究的嘛,不过软件在手,嘛都不愁,待我用ArcGIS鼓捣鼓捣. 这里呢,我对情有独钟的张掖市到甘肃其他地区的旅游时间进行等时圈 ...

  7. ArcGIS批量制图时只显示当前图斑方法

    需求:在利用ArcGIS批量制作现状图.竣工图.勘测定界图时,需要只显示当前图斑,隐藏相邻图斑. 方法:完成数据驱动界面设置后,通过页面定义实现. 示例: 图幅范围内有多个相邻图斑,批量制图时只显示当 ...

  8. ArcGIS消除叠加操作生成的碎图斑或狭长面

    在ArcGIS中叠加操作会带来碎图斑或狭长面,而这些碎图斑或狭长面又会影响后续的判断.所以就需要消除. 例如: 具体操作有以下方式: 1.最简单的的方法就是使用ArcGIS提供的"消除工具& ...

  9. ArcGIS中加载模块时dojo/domReady!和dojo/ready的区别

    我们在使用ArcGIS Javascript  API开发时,最开始要先加载模块: <script>require(["esri/map", "dojo/do ...

最新文章

  1. 又一位!26岁当上985博导,读博期间也曾两次想要退学......
  2. 为什么要引入模式概念来设计软件
  3. chap10 构建Web内容的技术
  4. React系列---Webpack环境搭建(二)不同环境不同配置
  5. js Blob对象介绍
  6. SQL Server死锁问题:事务(进程 ID x)与另一个进程被死锁在 锁 | 通信缓冲区资源上并且已被选作死锁牺牲品。请重新运行该事务。...
  7. bootstrap-模态框
  8. spring c3p0 mysql_spring boot整合mybatis使用c3p0数据源连接mysql
  9. pymongo访问数据前数据库名和集合名(表名)校验
  10. gsettings set org.gnome.desktop.interface scaling-factor 2无效果
  11. 一个白学家眼里的 WebAssembly
  12. AndroidSDK和ADT下载地址
  13. 周育如的音标口诀大全_音标记忆顺口溜(48个),快速记忆音标口诀!
  14. timestamp类型增加天、月、年后的时间
  15. 马上金三银四了,注意下面这几点,面试通过率高达85%
  16. word批注怎么删除计算机名字,Word批注怎样删掉用户名
  17. 2022年 maven配置阿里云仓库配置
  18. babel安装后无法使用:babel : 无法加载文件 C:\Users\DZG\AppData\Roaming\npm\babel.ps1
  19. 教你淘宝店铺如何做推广!
  20. 愿你在人生路上不踩别人的脚印,勇敢地寻找自己的方向。

热门文章

  1. 语文思维导图简单漂亮画法分享,助你快速绘制思维导图
  2. 华章计算机拍了拍你,并送来了8月书单(上)
  3. CSS控制文字的一些基本属性的使用
  4. java计算机毕业设计酒店订房系统源码+数据库+系统+lw文档+mybatis+运行部署
  5. python中define函数_Python中的函数
  6. “大数据应用场景”之隔壁老王(连载二)
  7. Asp.Net Newtonsoft.Json使用教程
  8. Blink SQL之创建数据结果表
  9. EndNote20中文版分享给大家。
  10. 一张图让你理清渗透思路