文章版權由做者李曉暉和博客園共有,若轉載請於明顯處標明出處:http://www.cnblogs.com/naaoveGIS/微信
地圖底圖是互聯網地圖,採集了某個行政區的POI數據,須要將採集的POI數據疊加到互聯網地圖上。理論上,咱們只須要將POI轉換成互聯網地圖的座標系後疊加到地圖上便可,可是,因爲如下兩個緣由,咱們必須採用稍微複雜的數據處理:工具
a.該行政區的互聯網註記不能存在,不然與採集的POI數據會出現重疊。優化
b.其餘行政區必須保留互聯網註記。spa
爲了同時知足這兩個要求,咱們選用瞭如下技術方案:blog
a.互聯網地圖請求時同時請求地形瓦片和註記瓦片,以保證全部區域均有互聯網地圖註記。圖片
b.下載行政區所在範圍的地形瓦片。開發
c.設法扣除非該行政區範圍的瓦片內容,將該瓦片疊加到互聯網地圖上,從而覆蓋原有區域,實現對該區域互聯網註記的遮蓋。get
d.將採集的POI數據進行座標轉換後疊加到該行政區。博客
針對如何實現互聯網地圖離線瓦片按需摳圖的方案,咱們進行了不斷完善,這裏詳細進行描述。自動化
a.首先寫瓦片拼接程序,將下載的瓦片分層級拼接成不一樣級別的一張整圖。
b.使用Photoshop手動對各個層級進行摳圖,獲取各層級的區劃地圖。
c.編寫圖片切割程序,按照互聯網的瓦片大小,再將各層級區劃底圖進行切割,而且命名行列號。
d.將從新切割命名出的瓦片拷貝至原有的離散瓦片進行覆蓋。
a.該方案須要編寫兩個程序,一個是瓦片拼接程序一個是瓦片切割程序,實現有必定難度。
b.該方案還需手動進行PS摳圖,當級別比較大時,整圖很是大,對摳圖人員的耐心和技巧均有必定考驗。
故名思議,這個進階方案最大的優化就是對PS摳圖作了自動化工具,大大減小處理成本和時間。
a.對不一樣級別互聯網瓦片進行拼接,處理成不一樣層級的整圖。
b.將區域SHP配色成紅色,按照互聯網地圖切圖,而後再分別拼接成對應級別的區域整圖。
c.編寫圖片摳圖工具,該工具原理爲分別比對不一樣層級的地圖整圖和區域整圖。遍歷地圖整圖的像素和區域整圖的像素(兩個圖片像素位置一一對應,區域整圖像素是紅色)。當區域像素爲紅色時表示該像素在區域中,保持地圖像素透明度;當區域像素不爲紅色時表示該像素不在區域內,設置地圖像素爲透明。
d.對處理完的整圖進行重切圖。
a.一樣,仍是須要進行瓦片拼接和圖片切割工具的編寫,這一塊的難度和工做量沒有減輕。
a.將新增區劃圖配色成紅色,以互聯網地圖級別進行切圖。
b.開發基於瓦片的摳圖程序,利用地圖瓦片和行政邊界瓦片編號一一對應原理,遍歷地圖瓦片的同時找到行政區對應瓦片。判斷瓦片內容是否在行政區內,進行瓦片級別的透明度處理。
經過方案的不斷優化,最終實現無需進行拼接、基於瓦片的自動化摳圖方案,大大提升了數據處理的效率和自動化程度。
-----歡迎轉載,但保留版權,請於明顯處標明出處:http://www.cnblogs.com/naaoveGIS/
若是您以爲本文確實幫助了您,能夠微信掃一掃,進行小額的打賞和鼓勵,謝謝 ^_^