QGIS Add Custom Basemap

?? Thanks http://cecilialiao.com/2014/10/30/adding-additional-stamen-map-tiles-to-qgis-2-4-tutorial/

I、 Install QGIS

visit Official Site download

II、 Install Openlayers Plugin

under Plugins menu, click Manage and Install Plugins

Manage and Install Plugins p1
Manage and Install Plugins p1

Manage and Install Plugins p2
Manage and Install Plugins p2

Manage and Install Plugins p3
Manage and Install Plugins p3

III、Custom Basemap

Manage and Install Plugins p3
Manage and Install Plugins p3

Setp1 edit osm_stamen.py

open folder .qgis2 in your pc. Windows: C:\Users\(computer name)\.qgis2 if you used default installation;
Mac OS X: ~/.qgis2
open .qgis2 edit python/plugins/openlayers_plugin/weblayers/osm_stamen.py in last line add.

class OlOSMAutoNavLayer(OlOSMStamenLayer):

    def __init__(self):
        OlOSMStamenLayer.__init__(self, name='AutoNav/OSM', html='autonav.html')

Step2 define new html for custom basemap

In python/plugins/openlayers_plugin/weblayers/html/ copy stamen_toner.html as autonav.html and edit following part

var apple = new OpenLayers.Layer.XYZ(
    "AutoNav/OSM map",
    "http://webrd02.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=7&x=${x}&y=${y}&z=${z}",
    {
        sphericalMercator: true,
        wrapDateLine: true,
        // TODO: min zoom level 2
        numZoomLevels: 20,
        // attribution: "", // FIXME: attribution
        eventListeners: {
            "loadstart": layerLoadStart,
            "loadend": layerLoadEnd
        }
    }
);

??Reminder: ${x} ${y} ${z} NOT {x} {y} {z}

Step3 link new map to open layers plugin

edit python/plugins/openlayers_plugin/openlayers_plugin.py

Find following

from weblayers.osm_stamen import OlOSMStamenTonerLayer, OlOSMStamenWatercolorLayer, OlOSMStamenTerrainLayer

Update to

from weblayers.osm_stamen import OlOSMStamenTonerLayer, OlOSMStamenWatercolorLayer, OlOSMStamenTerrainLayer, OlOSMAutoNavLayer

Find

self._olLayerTypeRegistry.register(OlOSMStamenTerrainLayer())

In next line add

self._olLayerTypeRegistry.register(OlOSMAutoNavLayer())

Step4 Check It works

Screen Shot 2015-09-10 at 10.04.23.png
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • afinalAfinal是一個android的ioc,orm框架 https://github.com/yangf...
    passiontim閱讀 15,556評論 2 45
  • Swift版本點擊這里歡迎加入QQ群交流: 594119878最新更新日期:18-09-17 About A cu...
    ylgwhyh閱讀 25,550評論 7 249
  • 嗯!這頓飯的起源嘛 源于我們倆的一個"賭": “你堵車我就請你吃飯!” 結果我沒堵 她堵了 好吧 就是愛和她粗去玩...
    清如淺閱讀 732評論 1 1
  • 其實我不是一個特別擅長寫作和表達的人,但是我喜歡用文字記錄一些心靈感觸。我曾經問過好多身邊的人你們對成功人的定義是...
    個性隨你爹閱讀 132評論 0 0
  • 蘿拉是只雌性小兔子,出生在甘雅山。她渾身長滿粉色的毛,煞是惹人喜愛。貝利是跟蘿拉一起長大的雄性小兔子,跟蘿拉一樣,...
    顧之痕閱讀 441評論 0 3