1
我試圖在一組座標上繪製完整的座標圖(邊上的權重等於它們的長度),然後找到兩個特定點之間的最短路徑。有沒有辦法在運行dijkstra_shortest_paths()
期間計算邊緣的權重?BGL。最短路徑計算邊上的重量?
我可以在構建圖形時計算它們,但我希望能夠更改點的座標並重新計算最短路徑而不重建圖形。
我試圖在一組座標上繪製完整的座標圖(邊上的權重等於它們的長度),然後找到兩個特定點之間的最短路徑。有沒有辦法在運行dijkstra_shortest_paths()
期間計算邊緣的權重?BGL。最短路徑計算邊上的重量?
我可以在構建圖形時計算它們,但我希望能夠更改點的座標並重新計算最短路徑而不重建圖形。
用於邊緣權重的屬性圖可以是任意的,因此特別可以是以任意方式計算權重的function_property_map
(documentation)。您還可以查看libs/graph/example/implicit_graph.cpp
瞭解如何手動創建重量圖;但是,您不需要自定義圖表類就可以將自定義屬性圖傳遞給算法。