我試圖找到pgRouting中shortest_path()的實現是如何工作的。最短路徑在pgrouting中如何工作?
這是函數的定義:
CREATE OR REPLACE FUNCTION shortest_path(sql text, source_id integer,target_id integer, directed boolean, has_reverse_cost boolean)
RETURNS SETOF path_result AS '$libdir/librouting', 'shortest_path'
LANGUAGE c IMMUTABLE STRICT
COST 1
ROWS 1000;
ALTER FUNCTION shortest_path(text, integer, integer, boolean, boolean) OWNER TO postgres;
我的問題是:
- 它是如何調用.c文件,以及它如何傳遞參數給它(我相信這是dijkstra.c文件,是否正確?)
- 如何獲得該.c文件並使用它所具有的調試信息進行編譯,以便了解它是如何工作的,以便我能更好地理解它?
你想使用pgRouting來計算最短路徑,或者你想了解代碼的工作原理嗎? – underdark 2012-02-08 19:38:16
我想了解代碼如何工作,我想知道如何編譯.c文件,以便從代碼中獲取更大的圖片 – 2012-02-09 12:22:21
我真的需要知道它是如何工作的,因此有人可以幫助我.. – 2012-02-12 19:16:16