Arcpy は水の流れの方向を描画します

Arcpy の水文ツールを使用すると、調査地域内のベクトル フィーチャ属性に従って水の流れの方向を描画できます。調査地域の境界のベクター フィーチャ レイヤーと標高を表すラスター データセットがあるとします。


インポート arcpy

# 入力データ パスを設定します
boundary_layer = r"C:\data\study_area.shp" # 調査領域の境界のベクター フィーチャ レイヤー
elevation_raster = r"C:\data\elevation.tif" # を表すラスター データセット標高

# 水で満たされた DEM を作成
filled_dem = arcpy.sa.Fill(elevation_raster)

# 流れ方向ラスターを作成
flow_direction_raster = arcpy.sa.FlowDirection(filled_dem)

# 調査領域を抽出
arcpy.env.extent = Boundary_layer

# 流れ方向ラスターを調査領域に制限します
Clipped_flow_direction_raster = arcpy.sa.ExtractByMask(flow_direction_raster, Boundary_layer)

# 保存结果
output_flow_direction_raster = r"C:\data\flow_direction.tif"
clipped_flow_direction_raster.save(output_flow_direction_raster)
 

上記のコードでは、水域を満たした後、最初に `Fill` 関数を使用して DEM (数値標高モデル) を作成します。次に、「FlowDirection」関数を使用して流れ方向グリッドを計算しました。次に、環境を調査領域の境界層として設定し、`ExtractByMask` 関数を使用して、その領域で実際に必要な流れ方向ラスターを抽出します。最後に、結果を出力流れ方向ラスターとして保存します。

コード内のパスとレイヤー名は、独自のデータに応じて変更する必要があることに注意してください。

おすすめ

転載: blog.csdn.net/weixin_58851039/article/details/131240099