1. 工具帮助
2. 实例
2.1 单个掩膜提取多个栅格
import arcpy
from arcpy.sa import *
#设置工作路径,TIF存放位置
arcpy.env.workspace = r"E:\02-BigDataWork\02-RainTIF_P"
rasterlist = arcpy.ListRasters("*","tif")
#查看TIF列表
print(rasterlist)
#设置掩膜
inMaskData = r"E:\02-BigDataWork\01-DongSHP\DongThree_P.shp"
#提取
for raster in rasterlist:
print raster
inRaster = raster
outExtractByMask = ExtractByMask(inRaster, inMaskData)
#输出
out = r"E:\02-BigDataWork\02-DongTIF\{}".format(raster)
outExtractByMask.save(out)
print("Mask done!")
print("Well done!")
2.2 多个掩膜提取单个栅格
import arcpy
from arcpy.sa import *
import os
#设定栅格、掩膜、输出路径
raster_path = r"E:\World\\world.tif"
folder_path = r"E:\cutpart_test\SHP"
out_path = r'E:\cutpart_test\MaskTIF'
arcpy.env.workspace = folder_path
shp_files = arcpy.ListFeatureClasses("*.shp")
#循环多个矢量
for shp_file in shp_files:
shp_name = os.path.splitext(shp_file)[0]
out_raster = os.path.join(out_path, shp_name + "_mask.tif")#输出路径+名称
mask = os.path.join(folder_path, shp_file)
outExtractByMask = ExtractByMask(raster_path, mask)
outExtractByMask.save(out_raster)
print("Mask extracted for " + shp_file)