您好,登錄后才能下訂單哦!
這篇文章主要介紹了GIS開發中如何實現mbtiles數據合并,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。
mbtiles是一個sqlite的數據庫,用來按照一定組織格式格式存儲切片地圖數據,常用在單機、移動端的地圖包中,在地圖數據的發布,對比直接的切片文件數據,具有存儲統一,便于移動拷貝。
在通過互聯網下載的數據,轉換成mbtiles后,發現數據不夠,又需要重新下載,下載的時候,還需要將前邊的數據再下載一遍,對于高級別的切片,下載時間還是挺慢的。
mbtiles本身就是一個sqlite數據庫,這個可以通過java、C#等開發語言進行開發,所以,可以通過開發,將兩個或者多個mbtiles數據進行合并。
下圖是mbtiles文件的表結構:
metadata是切片的一些常用信息,map是切片的索引信息,images是具體的存儲切片文件數據,是以二進制信息將圖片存儲到數據庫中。
在mbtiles的合并中,metadata中的bounds信息,需要根據各個mbtiles的文件,取最大的范圍,或者根據幾個mbtiles計算最大范圍,要是范圍不夠,發布后數據也不能訪問全面。
合并時,要對比map中的索引信息,根據zoom_level、tile_column、tile_row組合進行判斷,如存在的數據,就不需要寫入了,不存在的數據,首先將以上信息寫入到表中,在生成tile_id的guid,在images表中,以生成的guid和切片的圖片,組合寫入到表中,這樣就達到數據合并的效果。
感謝你能夠認真閱讀完這篇文章,希望小編分享的“GIS開發中如何實現mbtiles數據合并”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。