1

我是 GRASS 的初学者,但我想在两个多边形之间获得成本最低的路径。更确切地说,我想从位于一个多边形(多边形 A)边缘的任何点到位于另一个多边形(多边形 B)边缘的任何点获得最小的成本。

到目前为止,我通过使用成本栅格来使用 ArcGIS 的功能CostDistanceCostPath其中每个像元都有一个成本值,第一个多边形的 shapefile 和第二个多边形的 shapefile。我想对 GRASS 做同样的事情。我认为功能r.cost允许这样做。但我不知道如何在参数中指定 GRASS 中的两个多边形?

你有一个例子说明如何r.cost在 R 中使用两个多边形和 packagespgrass6吗?

非常感谢您的帮助。

4

1 回答 1

3

如果不强制使用 GRASS 并且坚持使用 R 就足够了,则应检查marmap包。小插图 ( ) 的第 2.4 节vignette("marmap")标题为:

2.4 使用测深数据进行最低成本路径分析

marmap 包允许计算限制在任意数量点之间的深度/高度范围内的最低成本路径。这里的两个关键功能是trans.mat()创建一个类似于您提到的成本栅格的转换矩阵。然后,lc.dist()计算最小成本距离并允许绘制点之间的路径。

marmap 小插图中提供了详细的示例。

于 2014-09-07T16:25:11.950 回答