回答:
さまざまな実装方法がありますが、ほとんどの手順はTINではなくグリッドから開始されます。
最も単純な方法は、おそらくD8手順です。水が流れる方向を計算します。中央のグリッドセルの隣にある8つのセルの8つの可能性があります。セルの接続方法よりも、最初にこれらの方向を計算し、最後に線を引くことができます)。SAGAには簡単な実装があり、ほとんど擬似コードとして読み取られます: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 = markup
非常に簡単ですが、これはあまり現実的ではありません。すべてのセルで開始するストリームはありません。より高度なアルゴリズムは通常、最初にピットを閉じ(特に詳細なDEMがある場合)、セルごとの集水域、つまり特定のセルに水を供給するセルの数を計算し、次にしきい値を使用してストリームを決定します存在します。
SAGA GISはこれらの集水域メソッドの多くを実装しています。これらの説明は、このマニュアルhttp://sourceforge.net/settings/mirror_choices?projectname=saga-gis&filename=SAGA%20-%20Documentation/SAGA%20Documents/に記載されています。SagaManual.pdf
古いバージョンのSAGA GIS向けに作成されましたが、アルゴリズムの説明はまだかなり正確です。クイックリファレンス(これは120ページ前後です)のためにここにコピーします。コードを見て実装の詳細を確認します。
さらに多くのモデルが最近追加されました:
ArcGISのSpatial Analystにアクセスできる場合、ストリームパスを計算するための一連のツールがあります。完全なワークフローは、 ESRI基準に設けられた、典型的なワークフローが含まれます。
もちろん、さまざまな方法を説明する多数の学術論文がありますが、この方法はSpatial Analystにアクセスできるすべての人にとって簡単です。
グリッドベースのデジタル標高モデルでは、D8-LTDメソッドにより、勾配線の信頼できる決定が提供されます。
Orlandini、S。、およびG. Moretti(2009)、グリッド付き標高データからの表面流路の決定、Water Resour。Res。、45(3)、W03417、doi:10.1029 / 2008WR007099。
Orlandini、S.、G。Moretti、M。Franchini、B。Aldighieri、およびB. Testa(2003)、グリッドベースのデジタル標高モデルにおける非分散排水方向を決定するための経路ベースの方法、Water Resour。Res。、39(6)、1144、doi:10.1029 / 2002WR001639。
等高線ベースのデジタル標高モデルでは、次のペーパーで説明する(複雑な)モデルを使用して複雑な地形構造を解くことにより、傾斜線を自動的に決定できます。
Moretti、G。、およびS. Orlandini(2008)、スケルトン構築技術を使用した輪郭標高データからの流域の自動描写、Water Resour。Res。、44(5)、W05403、doi:10.1029 / 2007WR006309。
これは、ツールをゼロから作成するのに非常に役立つと思われます。ESRIは何十年もの間これに取り組んできましたが、まだ正しくありません。
AutoCAD(Civil 3D)は、TINを使用してこれを実行できます。舞台裏で何が起こっているのかは知りませんが、ArcGISでは、ストリームネットワークの識別はラスター解析によって処理されます。
簡単に言えば、入力DEMラスター(各セルにX、Y、Z値がある)が入力として使用され、アルゴリズムは、入力ラスターの各下り坂セルに流入するすべてのセルの「累積流量(累積重量として)」の引用を 計算します。 」 製品は、各セルにフロー累積値があるラスタです。ストリームネットワークを特定するには、「集中フロー」の領域である高フローのセルを分離します。オプションの重み係数、水文学的に正しい入力DEMなど、その他の考慮事項があります。
このようなアルゴリズムの「メカニズム」に関しては、かなり単純なものになると思います。再帰的に各セルについて、周囲のすべてのセルの位置と標高を決定し、その標高に基づいてセルに流入するセルの数を合計します。TINについては、おそらく各三角形の2つのポイント(最高および最低の頂点)から線を構築し、これらすべてをネットワークに結合できます。