基於關係表格儲存體的拓撲網路資料建立地圖匹配工作空間,後續道路匹配在工作空間中進行。
文法
boolean ST_CreateWorkspace(text wsname, text sql);參數
參數名稱 | 描述 |
wsname | 工作空間名稱,具有唯一性。 |
sql | 查詢SQL語句,用於構建工作空間中的拓撲網路記憶體形態。 |
傳回值
傳回值 | 描述 |
t | 建立成功。 |
f | 建立失敗。 |
描述
地圖匹配工作空間包括一系列記憶體狀態的地圖拓撲網路資料,需要建立或載入後才可執行道路匹配。
工作空間名稱需唯一,可通過
mapmatching_workspace表查看已有的工作空間。用於構建工作空間的SQL查詢結果必須包含4個欄位:
id:Edge唯一標識,類型為SMALLINT、INTEGER、BIGINT。
source:Edge的源節點標識,類型為SMALLINT、INTEGER、BIGINT。
target:Edge的目標節點標識,類型為SMALLINT、INTEGER、BIGINT。
geometry:Edge的幾何資訊,類型為GEOMETRY,只運行LineString和MultiLineString兩種類型,如果為MultiLineString,則只取第一個子LineString對象。
說明
構建的拓撲網路單位為地圖單位,如果需要進行座標轉換,請使用ST_Transform函數。
樣本
準備路網資料並構建路網拓撲,詳細步驟快速入門樣本一。
構建工作空間。
所有對象都參與構建工作空間。
SELECT ST_CreateWorkspace('mm_ws_test1', 'select fid, source, target, geom from network');經過條件過濾後部分對象參與構建工作空間。
SELECT ST_CreateWorkspace('mm_ws_test2', $$ select fid, source, target, geom from network where fid > 10 $$);查看已構建的工作空間。
SELECT * from mapmatching_workspace;返回結果如下:
ws_id | ws_name | ws_sql | ws_options -------+-------------+----------------------------------------------------------------+------------ 1 | mm_ws_test1 | select fid, source, target, geom from network | 2 | mm_ws_test2 | select fid, source, target, geom from network where fid > 10 | (2 rows)