首页 > 其他分享 >【ArcPy】使用面要素类分割影像

【ArcPy】使用面要素类分割影像

时间:2023-02-12 11:36:01浏览次数:35  
标签:__ 分割 val lyr format ArcPy recordCount arcpy 影像

Python工具代码,非Python窗口脚本,可以自行编辑处理一下。

# coding=gbk
import arcpy
from arcpy import da as da
    
def getFieldUniqueValue(inTable,inField):
        rows=arcpy.da.SearchCursor(inTable,inField)
        value_lst=[row[0] for row in rows]
        return set(value_lst)


def main():
    lyr=arcpy.GetParameter(0)
    fld=arcpy.GetParameterAsText(1)
    isUseShape=arcpy.GetParameterAsText(2)
    rst=arcpy.GetParameter(3)
    out_folder=arcpy.GetParameterAsText(4)
    clipping_geometry='ClippingGeometry' if isUseShape else 'NONE'
    uniqueValues=getFieldUniqueValue(lyr,fld)
    recordCount=len(uniqueValues)
    # arcpy.AddMessage(recordCount)
    arcpy.SetProgressor("step","存在 {} 个影像待输出。".format(recordCount),0,recordCount,1)
    for val in uniqueValues:
        arcpy.SetProgressorLabel("{} 正在输出……".format(val))
        arcpy.SetProgressorPosition()
        arcpy.SelectLayerByAttribute_management(lyr,"NEW_SELECTION",u"{0}='{1}'".format(fld,val)) 
        arcpy.Clip_management(rst,'#',u'{}\{}.tif'.format(out_folder,val),lyr,0,clipping_geometry)
    arcpy.SelectLayerByAttribute_management(lyr,'CLEAR_SELECTION')


if __name__ == '__main__':
    main()

 

标签:__,分割,val,lyr,format,ArcPy,recordCount,arcpy,影像
From: https://www.cnblogs.com/yzhyingcool/p/17113498.html

相关文章

  • 代码随想录算法训练营第二十六天 | 39. 组合总和,40.组合总和II,131.分割回文串
    一、参考资料组合总和题目链接/文章讲解:https://programmercarl.com/0039.%E7%BB%84%E5%90%88%E6%80%BB%E5%92%8C.html视频讲解:https://www.bilibili.com/video/BV1......
  • YACS 2023年1月月赛 甲组 T2 分割数列(二) 题解
    题目链接继上个月的分割数列(一)又出了这道题。首先还是考虑$n^2DP$,设$f[i]$为分到$i$个的最小权重之和。转移枚举上一个在哪里分就行了。显然时间会超限,我们考虑......
  • 关于语义分割的亿点思考
    前言本文为大家重点剖析现有的语义分割框架,带领大家一步步探讨。本文转载自CVHub作者丨派派星欢迎关注公众号CV技术指南,专注于计算机视觉的技术总结、最新技术跟踪......
  • [SA记录] P6095 [JSOI2015]串分割
    题目首先考虑到题目要求分割出的$k$个数中最大值尽量小,所以我们分割出的$k$个数的长度尽量相同。我们令$m=\lceil\frac{n}{k}\rceil$,那么这$k$个数中,有的长度为$m......
  • 【算法训练营day42】01背包问题基础 LeetCode416. 分割等和子集
    LeetCode416.分割等和子集题目链接:416.分割等和子集独上高楼,望尽天涯路一开始没有想到怎么转化成01背包问题,所以直接看题解找思路慕然回首,灯火阑珊处背包的体积为......
  • Python numpy数组操作(分割数组) 
    分割数组函数数组及操作split将一个数组分割为多个子数组hsplit将一个数组水平分割为多个子数组(按列)vsplit将一个数组垂直分割为多个子数......
  • Linux指大文件按照日期分割
    前提:平时工作中经常需要到Linux系统上下载文件,查看日志,当文件较大时下载比较耗时,可以使用命令分割要查看日期的文件1、sed命令   sed-n'/开始时间/,/结束时间/p'......
  • 一个大数组根据特定大小分割为多个小数组
    1.Using Skip() and Take()的普通方法usingSystem;usingSystem.Linq;usingSystem.Collections.Generic;publicstaticclassExtensions{publicstat......
  • 使用ArcPy将WKT点串转面
    在部分应用中,矢量数据是用WKT格式存储的。​WKT,是一种文本标记语言,用于表示矢量几何对象、空间参照系统及空间参照系统之间的转换。矢量数据的表示示例如下图:来源:https://le......
  • 【LeeCode】131. 分割回文串
    【题目描述】给你一个字符串 ​​s​​,请你将 ​​s​​ 分割成一些子串,使每个子串都是 回文串 。返回 ​​s​​ 所有可能的分割方案。回文串 是正着读和反着读都......