Cesium項目實戰(5)-城市各類POI數據制作、加工、展示


百度百科關於POI是這樣解釋的。POI是"Point of Interest"的縮寫,中文可以翻譯為"興趣點"。在地理信息系統中,一個POI可以是一棟房子、一個商鋪、一個郵筒、一個公交站等。每個POI包含四方面信息,名稱、類別、坐標、分類,全面的POI訊息是豐富導航地圖的必備資訊,及時的POI興趣點能提醒用戶路況的分支及周邊建築的詳盡信息,也能方便導航中查到你所需要的各個地方,選擇最為便捷和通暢的道路來進行路徑規划,因此,無論是車載導航還是手機導航,導航地圖POI多少狀況直接影響到導航的好用程度,導航地圖中POI信息點的多少以及信息的准確程度和信息更新速度,都嚴重影響到一款導航的使用情況。

我們可以理解為POI在任何一個GIS系統中,都占據了非常重要的地位。因此,如何收集POI信息,以及如何在三維場景中顯示這些POI信息也是非常重要的。很幸運的是,我們獲取到了一份北京市較全的POI數據,大概15萬條記錄,本篇文章就這個數據着重介紹一下,如何加載POI信息。

 

 


筆者獲取到的數據為SHP格式,classify為分類屬性,本文中,提煉了4s店、餐飲、地鐵站、汽車站、超市5個種類,作為示例。

在本篇“城市各類POI數據制作、加工、展示”中我們主要包括如下幾個可視化內容。

  1. 普通直接加載
  2. 默認啟用匯聚加載
  3. 自定義匯聚加載

1. 普通直接加載

普通直接加載,主要是針對於POI數量比較少的情況下。筆者把shp文件轉換成了geojson格式,方便使用,同時,可便於模擬真實情況下的,后台API返回的數據格式。

 

 


 

 


 

 


 

 


 

 

如果覺得上面的效果已經滿足了要求的話,下面的內容可以忽略了。


2. 默認啟用匯聚加載

匯聚處理一般是針對數據量比較大的情況,如果你的POI信息點過多,可能直接按照上面的方式瀏覽器就直接崩潰了。

 

 


 

 


3. 自定義匯聚加載

匯聚默認的是采用pinBuilder構造圖標的方式,如果覺得默認的不美觀,我們可以自定義顯示效果。

 

 


 

詳細代碼請參考 Cesium項目實戰小專欄

最后

1、為什么要用geojson格式的數據,還有為什么要用GeoJsonDataSource來加載數據?
答:因為json數據格式需要自己解析,自己構造,自己加載entity、billboard等等,同時Entity對象本身不支持匯聚。而geojson默認支持GeoJsonDataSource解析,同時還可以支持匯聚。

2、為什么會有一個構造數據對象的過程?
答:為了更好的進行代碼復用,同時也是為了控制圖層顯示與隱藏功能。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM