簡體   English   中英

OpenStreetMap - 用於處理離線地圖的java庫

[英]OpenStreetMap - java library to handle offline map

我需要創建一個可以在linux系統上運行的應用程序。 基本上,我希望實現類似Google地圖的功能,但功能卻少得多。 應用程序需要能夠執行以下操作:

  • 打開並顯示離線地圖,因為沒有任何互聯網連接
  • 將會有一條必須展示的靜態路線,如鐵路,它不會改變
  • 將有一個動態變化的點,它應該更新

我從來沒有真正開發過這種應用程序,我只使用谷歌地圖for android v2,這是非常直接的,所以我沒有任何問題,但沒有互聯網連接,這不是一個選項。 所以這是我的問題:

  • 我以.osm格式下載了地圖,這是我需要的。 如果我理解正確,我需要使用像Mapnik之類的東西預先渲染這些文件。 這種方法是否正確? 如果是,我如何使用Mapnik進行渲染? 如果沒有,你推薦什么?
  • 假設我完成了渲染部分。 如果我理解正確,現在我應該使用像JMapViewer這樣的東西。 我應該將.jar導入到我的項目中,然后這個api將提供mapview,並且通過一些編碼,我可以使用api來顯示我已經渲染的離線地圖。 這個對嗎?

另外,如果你能提出任何建議,那對我有幫助,我將不勝感激。

在此先感謝,歡呼

基本上你必須遵循以下步驟:

  • 設置mapnik服務器加載* .osm文件並預渲染所需的所有圖塊。 (將它們存儲在某種類型的zip存檔中,因為在較高的縮放級別中變得非常大,您還可以在硬盤上的扇區中填充未使用的空間[tar.gz])
  • 編寫自己的類,從AbstractOsmTileSource擴展到鏈接到存儲的數據
  • 編寫自己的類,實現TileLoader接口,從存檔中加載所需的tile
  • 創建JMapViewer的實例並設置prev定義的TileLoader和TileSource
  • 添加鐵路作為MapPolygon
  • 將當前位置添加為MapMarker

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM