Existen diferentes implementaciones posibles, pero la mayoría de los procedimientos comenzarán desde una cuadrícula y no desde un TIN.
El más simple es el procedimiento D8: se calcula la dirección por la que fluiría el agua. Hay 8 posibilidades, las 8 celdas que están al lado de una celda de cuadrícula central. Primero puede calcular estas direcciones, que cómo están conectadas las celdas, y finalmente puede dibujar las líneas). Se encuentra una implementación fácil en SAGA, casi se lee como pseudocódigo:
http://saga-gis.svn.sourceforge.net/viewvc/saga-gis/trunk/saga-gis/src/modules_terrain_analysis/terrain_analysis/ta_channels/D8_Flow_Analysis. cpp? revision = 911 & view = marcado
Aunque es muy fácil, esto no es muy realista: no tendrá una transmisión que comience en cada celda. Los algoritmos más avanzados generalmente primero cierran los pozos (especialmente si tiene un DEM detallado), luego calculan el área de captación por celda, es decir, el número de celdas que aportan agua a una celda en particular, y luego usan un umbral para determinar si una corriente está presente.
SAGA GIS implementa muchos de estos métodos de áreas de captación, puede encontrar una descripción de ellos en este manual http://sourceforge.net/settings/mirror_choices?projectname=saga-gis&filename=SAGA%20-%20Documentation/SAGA%20Documents/ SagaManual.pdf
Fue escrito para una versión anterior de SAGA GIS, pero la descripción de los algoritmos aún es bastante precisa, y la copiaré aquí para una referencia rápida (esto es alrededor de la página 120), ya que es de código abierto, puede verificar el detalles de implementación mirando el código.
- Determinista 8 (D8): El clásico. El flujo va del centro de una celda al centro de una (y solo una) de las celdas circundantes. Las direcciones de flujo están, por lo tanto, restringidas a múltiplos de 45o, que es la razón principal de la mayoría de los inconvenientes del método. (O'Callaghan y Mark 1984).
- Rho8: Igual que el anterior pero con un componente estocástico que debería mejorarlo. La dirección del flujo está determinada por un argumento aleatorio que depende de la diferencia entre el aspecto y la dirección de las dos celdas vecinas adyacentes. No muy útil . . (Fairfield y Leymarie 1991).
- Infinito determinista (D∞): el flujo va de una celda a dos celdas adyacentes contiguas, considerando así un flujo bidimensional y superando los inconvenientes del método D8. (Tarboton 1998).
- Braunschweiger Digitales Reliefmodell: otro algoritmo de dirección de flujo múltiple. El flujo se divide entre la celda circundante cuya orientación es más cercana al aspecto de la celda central y sus dos celdas adyacentes. (Bauer, Bork y Rohdenburg 1985).
- FD8 (que se encuentra en SAGA simplemente como Dirección de flujo múltiple): un algoritmo de enrutamiento de flujo bidimensional derivado de D8. (Quinn y cols. 1991).
- Algoritmo de enrutamiento cinemático (KRA). Un algoritmo de rastreo de flujo unidimensional. El flujo se comporta como una bola rodando por el DEM, sin restringir su posición al centro de las celdas. (Lea 1992).
- Red de modelo de elevación digital (DEMON): la más compleja. Un algoritmo de seguimiento de flujo bidimensional. Bastante tiempo. (Costa-Cabral y Burgess 1994).
Incluso se han agregado más modelos recientemente:
- Dirección de flujo múltiple triangular: Seibert, J. / McGlynn, B. (2007): 'Un nuevo algoritmo de dirección de flujo múltiple triangular para calcular áreas de pendiente ascendente a partir de modelos de elevación digital en cuadrícula', Water Resources Research, vol. 43, W04501. Esto puede ser interesante para usted porque también podría funcionar directamente en un TIN
- El método de flujo de masa (MFM) para el cálculo basado en DEM de la acumulación de flujo propuesto por Gruber y Peckham (2008). Gruber, S., Peckham, S. (2008): Parámetros y objetos de superficie terrestre en hidrología. En: Hengl, T. y Reuter, HI [Eds.]: Geomorfometría: Conceptos, Software, Aplicaciones. Desarrollos en la ciencia del suelo, Elsevier, Bd.33, S.293-308.
- El algoritmo lateral: http://watershed.montana.edu/Hydrology/Home_files/2010WR009296.pdf y su código también está en su sitio web: http://thomasgrabs.com/side-algorithm/
Si tiene acceso a Spatial Analyst en ArcGIS, entonces tiene una serie de herramientas para calcular rutas de ruta. Se proporciona un flujo de trabajo completo en la referencia de ESRI, pero el flujo de trabajo típico incluye:
Por supuesto, hay numerosos trabajos académicos que describen diferentes métodos, pero este método es fácil para todos los que tienen acceso a Spatial Analyst.
fuente
En los modelos de elevación digital basados en cuadrícula, el método D8-LTD proporciona determinaciones confiables de las líneas de pendiente:
Orlandini, S. y G. Moretti (2009), Determinación de rutas de flujo de superficie a partir de datos de elevación cuadriculados, Water Resour. Res., 45 (3), W03417, doi: 10.1029 / 2008WR007099.
Orlandini, S., G. Moretti, M. Franchini, B. Aldighieri y B. Testa (2003), Métodos basados en caminos para la determinación de direcciones de drenaje no dispersivas en modelos de elevación digital basados en cuadrículas, Water Resour. Res., 39 (6), 1144, doi: 10.1029 / 2002WR001639.
En los modelos de elevación digital basados en contornos, las líneas de pendiente se pueden determinar automáticamente resolviendo estructuras topográficas complejas utilizando el modelo (complejo) descrito en el siguiente documento:
Moretti, G. y S. Orlandini (2008), Delineación automática de cuencas de drenaje a partir de datos de elevación de contorno utilizando técnicas de construcción de esqueleto, Water Resour. Res., 44 (5), W05403, doi: 10.1029 / 2007WR006309.
fuente
Parece que este será un buen trabajo para escribir una herramienta desde cero. ESRI ha estado en eso durante décadas y todavía no tienen derecho.
AutoCAD (Civil 3D) puede hacer esto usando un TIN. No estoy al tanto de lo que está sucediendo detrás de escena, pero en ArcGIS la identificación de las redes de transmisión se maneja a través del análisis de ráster.
En pocas palabras, se utiliza un ráster DEM de entrada (donde cada celda tiene valores X, Y, Z) como entrada y un algoritmo calcula la cotización del "flujo acumulado (como el peso acumulado) de todas las celdas que fluyen hacia cada celda descendente en el ráster de entrada. " El producto es un ráster donde cada celda tiene un valor de acumulación de flujo. Para identificar la red de flujo, aísle las celdas de alto flujo que son las áreas de "flujo concentrado". Hay otras consideraciones como el factor de peso opcional, el DEM de entrada hidrológicamente correcto, etc.
Solo agregaré algunas ideas: en términos de la "mecánica" de dicho algoritmo, supongo que podría ser bastante sencillo; de forma recursiva y para cada celda, determine la ubicación y la elevación de todas las celdas circundantes y, en función de su elevación, sume el número de celdas que fluyen hacia ella. En cuanto a TIN, probablemente podría construir una línea a partir de dos puntos en cada triángulo (vértice más alto y más bajo) y luego unir todos estos en una red.
fuente