根据流向栅格计算累积汇水量。可应用权重数据集计算加权累积汇水量。
命名空间:
SuperMap.Analyst.TerrainAnalyst程序集: SuperMap.Analyst.TerrainAnalyst (in SuperMap.Analyst.TerrainAnalyst)
版本: dll
语法
C# |
---|
public static DatasetGrid FlowAccumulation( DatasetGrid directionGrid, DatasetGrid weightGrid, Datasource targetDatasource, string resultGridName ) |
参数
- directionGrid
- Type: SuperMap.Data..::.DatasetGrid
指定的流向栅格数据。
- weightGrid
- Type: SuperMap.Data..::.DatasetGrid
指定的权重栅格数据。设置为 null 表示不使用权重数据集。
- targetDatasource
- Type: SuperMap.Data..::.Datasource
指定的用于存储结果数据集的数据源。如果设置为 null,则结果数据集将自动存储到 directionGrid 所在的数据源中。
- resultGridName
- Type: System..::.String
指定的结果数据集的名称。
返回值
结果累积汇水量栅格数据集。如果生成失败,则返回 null。备注
累积汇水量是指流向某个单元格的所有上游单元格的水流累积量,是基于流向数据计算得出的。
累积汇水量的值可以帮助我们识别河谷和分水岭。单元格的累积汇水量较高,说明该地地势较低,可视为河谷;为0说明该地地势较高,可能为分水岭。因此,累积汇水量是提取流域的各种特征参数(如流域面积、周长、排水密度等)的基础。
计算累积汇水量的基本思路是:假定栅格数据中的每个单元格处有一个单位的水量,依据水流方向图顺次计算每个单元格所能累积到的水量(不包括当前单元格的水量)。
下图显示了由水流方向计算累积汇水量的过程。
下图为流向栅格和基于其生成的累积汇水量栅格。
在实际应用中,每个单元格的水量不一定相同,往往需要指定权重数据来获取符合需求的累积汇水量。使用了权重数据后,累积汇水量的计算过程中,每个单元格的水量不再是一个单位,而是乘以权重(权重数据集的栅格值)后的值。例如,将某时期的平均降雨量作为权重数据,计算所得的累积汇水量就是该时期的流经每个单元格的雨量。
注意,权重栅格必须与流向栅格具有相同的范围和分辨率。