De topo a ráster (Spatial Analyst)
Resumen
Interpola una superficie hidrológicamente correcta a partir de datos de punto, línea y polígono.
Uso
-
Los mejores resultados se obtendrán si se almacenan todos los datos de entrada en el mismo sistema de coordenadas planas y tienen las mismas ZUnits. Los datos no proyectados (latitud-longitud) se pueden utilizar; sin embargo, los resultados pueden no ser exactos, en particular en latitudes altas.
-
De topo a ráster sólo utilizará cuatro puntos de datos de entrada para la interpolación de cada celda de salida. Se ignoran todos los puntos adicionales. Si se encuentran demasiados puntos mediante el algoritmo, se puede producir un error que indica que el dataset de punto tiene demasiados puntos. La cantidad máxima de puntos que se puede utilizar es NRows * NCols, donde NRows es la cantidad de filas en el ráster de salida y NCols es la cantidad de columnas.
-
Cuando el tipo de entidad de entrada es CONTOUR, el algoritmo primero genera una morfología generalizada de la superficie basada en la curvatura de las curvas de nivel. El algoritmo entonces implementa las curvas de nivel como fuente de la información de elevación. Las curvas de nivel se adaptan mejor a los datos de gran escala donde las curvas de nivel y las esquinas son fiables indicadores de arroyos y cordones montañosos. En escalas más pequeñas puede ser igual de efectivo, y menos costoso, digitalizar puntos de esquina de curvas de nivel y utilizarlos como clase de entidad de punto de entrada.
-
Representar arroyos trenzados o utilizar arcos para representar dos lados de un arroyo puede no producir resultados fiables. Los datos de los arroyos siempre tienen prioridad sobre los datos de punto o de curvas de nivel, los datos de puntos de elevación que presentan conflictos con el descenso de cada arroyo se ignoran. Los datos de los arroyos son una forma poderosa de agregar información topográfica a la interpolación, lo que asegura aún más la calidad del DEM de salida.
-
Los valores típicos para la configuración de Tolerancia 1 y Tolerancia 2 son:
- Para los datos de punto a una escala 1:100.000, utilice 5,0 y 200,0.
- Para los datos de punto con menos densidad a una escala de hasta 1:500.000, utilice 10,0 y 400,0.
- Para los datos de curvas de nivel con un espaciado de curvas de nivel de 10, utilice 5,0 y 100,0.
-
Para experimentar más fácilmente con las entradas y los parámetros, utilice el cuadro de diálogo De topo a ráster para crear un archivo de parámetros de salida, que pueda modificarse en cualquier editor de texto y utilizarse como entrada para la herramienta De topo a ráster por un archivo.
De topo a ráster es una aplicación que puede consumir muchos recursos de la memoria y, por lo tanto, no es posible crear rásteres de salida grandes. Cuando se requiere una salida grande, utilice el parámetro MARGIN.
Sintaxis
Parámetro | Explicación | Tipo de datos |
in_topo_features topo_input |
La clase Topo especifica las entidades de entrada que contienen los valores z que se interpolarán en un ráster de superficie. Hay seis tipos de entrada de datos aceptados para la clase Topo: TopoPointElevation, TopoContour, TopoStream, TopoSink, TopoBoundary, TopoLake.
Los tipos PointElevation, Contour y Sink de entrada de entidades pueden tener un campo especificado que contiene los valores z. No hay opción de campo para los tipos de entrada Boundary, Lake o Stream. | TopoInput |
cell_size (Opcional) |
El tamaño de celda con el que se creará el ráster de salida. Este será el valor del entorno si se establece explícitamente; de lo contrario, será el valor más bajo del ancho o de la altura de la extensión de las entidades de punto de entrada, en la referencia espacial de entrada, dividido por 250. | Analysis Cell Size |
extent (Opcional) |
La clase Extensión determina la extensión para el dataset ráster de salida. La interpolación se producirá hasta los límites x e y, y las celdas fuera de esa extensión serán NoData. Para obtener mejores resultados de interpolación a lo largo de los bordes del ráster de salida, los límites x e y deben ser más pequeños que la extensión de los datos de entrada en al menos 10 celdas de cada lado. El formato de la clase Extensión es:
La extensión predeterminada es la más pequeña de todas las extensiones de los datos de entidad de entrada. | Extent |
Margin margin (Opcional) |
Distancia en celdas para interpolar más allá de la extensión de salida especificada y el límite. El valor debe ser mayor o igual que 0 (cero). El valor predeterminado es 20. Si los datasets de entidades de Extent y TopoBoundary son los mismos que el límite de los datos de entrada (predeterminado), los valores interpolados a lo largo del borde del DEM no coincidirán bien con los datos DEM adyacentes. Esto se debe a que han sido interpolados utilizando la mitad de los datos que utilizan los puntos dentro del ráster, los cuales están circundados en todos los lados por datos de entrada. La opción Margin permite que se utilicen datos de entrada más allá de estos límites en la interpolación. | Long |
minimum_z_value (Opcional) |
El valor z mínimo que se utilizará en la interpolación. El valor predeterminado es 20 por ciento por debajo del valor más pequeño de todos los valores de entrada. | Double |
maximum_z_value (Opcional) |
El valor z máximo que se utilizará en la interpolación. El valor predeterminado es 20 por ciento por encima del valor más grande de todos los valores de entrada. | Double |
enforce (Opcional) |
El tipo de aplicación de drenaje que se utilizará. La opción de aplicación de drenaje se puede establecer para quitar todos todos los sumideros o depresiones de manera que pueda crearse un DEM hidrológicamente correcto. Si se han identificado explícitamente puntos de sumidero en los datos de entidad de entrada, estas depresiones no se completarán.
| String |
data_type (Opcional) |
El tipo de datos de elevación principal de los datos de entidad de entrada.
Especificar la selección relevante optimiza el método de búsqueda utilizado durante la generación de arroyos y cordones montañosos. | String |
maximum_iterations (Opcional) |
La cantidad máxima de iteraciones de interpolación. La cantidad de iteraciones debe ser mayor que cero. Un valor predeterminado de 40 es adecuado, por lo general, para los datos de curvas de nivel y de línea. Un valor de 30 eliminará menos sumideros. Rara vez, los valores más altos (45–50) pueden ser útiles para eliminar más sumideros o para establecer más cordones montañosos y arroyos. La iteración se detiene para cada resolución de cuadrícula cuando se ha alcanzado la cantidad máxima de iteraciones. | Long |
roughness_penalty (Opcional) |
Derivada segunda cuadrada integrada como medida de rugosidad. La penalización por rugosidad debe ser mayor o igual que cero. Si el tipo primario de datos de entrada es CONTOUR, el valor predeterminado es cero. Si el tipo primario de datos es SPOT, el valor predeterminado es 0,5. Por lo general, no se recomiendan los valores más grandes. | Double |
discrete_error_factor (Opcional) |
El factor de error discreto se utiliza para ajustar la cantidad de alisado al convertir los datos de entrada en un ráster. El valor debe ser mayor que cero. El rango normal de ajuste es de 0,5 a 2 y el valor predeterminado es 1. Un valor más pequeño resulta en un suavizado de datos menor; un valor más grande provoca un suavizado mayor. | Double |
vertical_standard_error (Opcional) |
La cantidad de errores aleatorios en los valores z de los datos de entrada. El valor debe ser mayor o igual que cero. El valor predeterminado es cero. El error estándar vertical puede establecerse en un valor positivo pequeño si los datos tienen errores verticales (no sistemáticos) aleatorios significativos con varianza uniforme. En este caso, establezca el error estándar vertical en la desviación estándar de estos errores. Para la mayoría de los datasets de elevación, el error vertical debe establecerse en cero pero puede establecerse en un valor positivo pequeño para estabilizar la convergencia cuando se rasterizan los datos de punto con los datos de línea de corriente. | Double |
tolerance_1 (Opcional) |
Esta tolerancia refleja la precisión y la densidad de los puntos de elevación en relación con el drenaje de la superficie. Para los datasets de punto, establezca la tolerancia en el error estándar de las alturas de los datos. Para los datasets de curvas de nivel, utilice la mitad del intervalo de curvas de nivel promedio. El valor debe ser mayor o igual que cero. El valor predeterminado es 2,5 si el tipo de datos es CONTOUR y cero si el tipo de datos es SPOT. | Double |
tolerance_2 (Opcional) |
Esta tolerancia impide el espacio de drenaje a través de barreras altas poco realistas. El valor debe ser mayor que cero. El valor predeterminado es 100 si el tipo de datos es CONTOUR y 200 si el tipo de datos es SPOT. | Double |
out_stream_features (Opcional) |
La clase de entidad de línea de salida de las entidades de polilínea de arroyo y de las entidades de línea de cresta. Las entidades de línea se crean al comienzo del proceso de interpolación. Proporciona la morfología general de la superficie para la interpolación. Se puede utilizar para verificar el drenaje y la morfología correctos al comparar los datos conocidos del arroyo y del cordón montañoso. | Feature Class |
out_sink_features (Opcional) |
La clase de entidad de punto de salida de las entidades de punto de sumidero restantes. Estos son los sumideros que no se especificaron en los datos de entidad de entrada de sumidero y que no se limpiaron durante la aplicación de drenaje. Ajustar los valores de las tolerancias, tolerance_1 y tolerance_2, puede reducir la cantidad de sumideros restantes. A menudo, los sumideros restantes indican errores en los datos de entrada que no se pudieron resolver con el algoritmo de aplicación de drenaje. Esta puede ser una forma eficiente de detectar errores de elevación sutiles. | Feature Class |
out_diagnostic_file (Opcional) |
El archivo de diagnóstico de salida que incluye todas las entradas y los parámetros utilizados y la cantidad de sumideros eliminados en cada resolución e iteración. | File |
out_parameter_file (Opcional) |
El archivo de parámetros de salida que incluye todas las entradas y los parámetros utilizados, que se pueden utilizar con De topo a ráster por un archivo para ejecutar la interpolación nuevamente. | File |
Valor de retorno
Nombre | Explicación | Tipo de datos |
out_surface_raster |
Ráster de superficie interpolado de salida. | Raster |
Ejemplo de código
En este ejemplo se crea un ráster de superficie TIFF hidrológicamente correcta a partir de datos de punto, línea y polígono.
import arcpy from arcpy import env from arcpy.sa import * env.workspace = "C:/sapyexamples/data" outTTR = TopoToRaster([TopoPointElevation([['spots.shp', 'spot_meter']]), TopoContour([['contours.shp', 'spot_meter']])], 60, "#", "#", "#", "#", "NO_ENFORCE") outTTR.save("C:/sapyexamples/output/ttrout.tif")
En este ejemplo se crea un ráster de superficie de cuadrícula hidrológicamente correcta de datos de punto, línea y polígono.
# Name: TopoToRaster_Ex_02.py # Description: Interpolates a hydrologically correct surface # from point, line, and polygon data. # Requirements: Spatial Analyst Extension # Import system modules import arcpy from arcpy import env from arcpy.sa import * # Set environment settings env.workspace = "C:/sapyexamples/data" # Set local variables inPointElevations = TopoPointElevation([['spots.shp', 'spot_meter'], ['spots2.shp', 'elev']]) inBoundary = TopoBoundary(['boundary.shp']) inContours = TopoContour([['contours.shp', 'spot_meter']]) inLake = TopoLake(['lakes.shp']) inSinks = TopoSink([['sink1.shp', 'elevation'], ['sink2.shp', 'none']]) inStream = TopoStream(['streams.shp']) inFeatures = ([inPointElevations, inContours, inLake, inBoundary, inSinks]) # Check out the ArcGIS Spatial Analyst extension license arcpy.CheckOutExtension("Spatial") # Execute TopoToRaster outTTR = TopoToRaster(inFeatures) # Save the output outTTR.save("C:/sapyexamples/output/ttrout03")