Me gustaría recortar un DEM usando una cuadrícula de polígonos. Probablemente sea más fácil usar múltiples polígonos en un archivo de forma, pero no lo he logrado, así que estoy tratando de usar un bucle for para poder recorrer cada conjunto de datos en un gdb (cada uno contiene solo un polígono).
Aquí está mi código (haciéndolo en la ventana de Python).
#creating a workspace and a list of feature classes
arcpy.env.workspace = "C:/data/lidar/lidar.gdb"
fcs = arcpy.ListFeatureClasses()
#looping through each feature class and creating a raster based on the extent of
#feature class
for fc in fcs:
arcpy.Clip_management("perth", "#", "C:/data/lidar", fc, "", "ClippingGeometry")
Sin embargo, mi código no se ejecuta, simplemente se queda allí, esperando algo más ... pero ¿qué? Puedo hacer que funcione para un clip, pero no con el bucle.
Estoy seguro de que debería hacer algo más para la salida, para nombrar cada nuevo ráster por clase de entidad o algo así ... pero de nuevo, no sé cómo. Avíseme si debo agregar más información.
arcgis-desktop
arcpy
Rosie Bell
fuente
fuente
Respuestas:
Una cosa que noté es que su tercer parámetro es una salida codificada (C: / data / lidar). La forma en que está escrito ahora recorrerá cada una de sus características y sobrescribirá la salida cada vez, pero dado que es posible que no haya permitido la sobrescritura automática de archivos, esto podría ser el problema. Intente crear un nombre de salida único para cada iteración:
Además, no estoy seguro de que tuviera la intención de colocar las salidas en la carpeta C: / data llamada lidar ... tenga en cuenta que el tercer parámetro en el clip es la ruta completa de su ráster de salida, no una carpeta que se colocará in. Si no especifica una extensión en el nombre de la ruta de salida y la coloca en una carpeta estándar, será una cuadrícula, por lo que ahora su programa está intentando crear un nuevo conjunto de datos de cuadrícula llamado 'lidar' en C: / carpeta de datos.
fuente
para futuros buscadores: Aquí hay una versión modificada del script de la herramienta de división de ráster USGS que no requiere nada por encima del nivel de licencia de ArcGIS Basic (ArcView):
fuente
Algunas ideas
Código fuente de la herramienta USGS Raster Split:
fuente