前文《SuperMap iServer Java 6 動態分段概述》介紹了動態分段的一些概念:如事件表、事件、路由表、刻度值等,下面將使用Deskpro從清洗點線資料等原始、產生路由資料集、建立事件表、事件表生產空間資料三個步驟,給大家展示一下動態分段。
1、清洗點線資料
這步其實就是準備產生路由資料的點線資料,對資料主要有兩點基本要求:
a、線是簡單線,沒有複雜線資料。
b、線資料中有個路由標示的欄位,這個欄位需要為數值型,可以用smid標示這個。如果是線長度或者線欄位的話預設為smid,如果是線參考點刻度的話可以自己調整。
c、如果是線參考點刻度的話點刻度資料盡量要點資料線上上或者差距不是太大,而且點和線必須有共同的路由欄位值
2、產生路由資料
路由資料在Deskpro中主要由線來產生,可以依據線長度、設定線的起始點和終止點的刻度、根據點資料刻度等三種方式,其他的一些細節調節可以參考刻度縮放因子、刻度位移因子等參數,如-1
圖-1產生路由資料集
此處隨便畫幾條線,然後用線長度產生路由資料集
圖-2線資料集
操作方法:“分析-動態分段-點/線資料集->路由資料集”,各參數設定-1產生路由資料集所示。
3、建立事件表
建立一個時間點事件表,主要有兩個欄位,routeid標示這個事件發生在那條線路上,locate標示這個事件發生的裡程值。
圖-3時間點事件表
然後添加一個事件,比如線上路1上,裡程22處。每條記錄都對應一個事件。
4、事件表產生空間資料
第三步中已經產生了事件點,如何把它轉為地圖上的一點,快速定位出來呢?這就需要事件表產生空間資料。
圖-4設定事件表
操作方法:“分析-動態分段-設定事件表”,各參數設定-4產生路由資料集所示。注意事件表及路由資料的路由標示欄位相互對應routeid,然後時間點事件刻度欄位為locate
圖-5 事件點在地圖上
注意:由於按照長度產生路由資料集中會產生一個欄位名為routeid的欄位,類型為長整形,所以建立事件表的時候也選擇為長整形。
上面從清洗點線資料、產生路由資料集、建立事件表、事件表產生空間資料等幾個步驟說明了一個動態分段的簡單過程,後續文章將詳細討論