利用物件疊加層套疊WMTS

API使用範例:利用物件疊加層套疊WMTS

 

情境假設:

使用者可以建立一個DIV,放置在地圖上任何一個位置,並放入需要的物件至DIV中。使用者也可指定該物件的疊加層先後順序,利用此功能可將WMTS圖磚套疊至TGOS MAP,讓資訊顯示於地圖之上。以下將以中央研究院提供的WMTS圖磚服務為例進行展示。

 

TGOS MAP API建置方式:

 

1. 初始化地圖:
    首先宣告一個TGOnlineMap( )物件,在網頁上建立一個地圖,並選擇座標系統。
            function onload() {

              mapDiv = document.getElementById("mapDiv");

              map = new TGOS.TGOnlineMap(mapDiv, TGOS.TGCoordSys.EPSG3857);

              //建立圖層

                 var customLayer1 = new CustomLayer(map);

                      }

2. 建立疊加層

建立DIV容器,再將WMTS圖磚置入,並設定疊加層之順序,使內容顯示於其他物件之上。

            //實做onAdd,設定疊加層

        CustomLayer.prototype.onAdd = function () {

            //取得地圖疊加層////

            var panes = this.getPanes();

            var mapLayer = panes.mapLayer;

            ///////////////////

                  //設定疊加層座標系統

            this.mSRS = this.map.getCoordSys();

                  //設定疊加層HTML 物件(DIV)

            this.div = document.createElement("div");

                  //設定定疊加層寬度

            this.div.style.width = "100px";

            //設定定疊加層高度

                  this.div.style.height = "50px";

         

                  var pMap = new TGOS.TGOnlineMap(this.div, TGOS.TGCoordSys.EPSG3857);

                  var Bounds = map.getBounds();

                  var src ="http://gis.sinica.edu.tw/tileserver/wmts";

                  var info = {

                          matrixSet: 'GoogleMapsCompatible',  //MatrixSet設定必要參數可進WMTSCapabilities去看所需圖層使用的MatrixSet

                          layer: 'JM20K_1921',   //Layer Name, 必要參數

                          format: "image/jpeg",

                          style: "default"

                  };

                  var req = {

                          wmtsVisible: true,

                          zIndex: 50,

                          opacity: 0.65

                  };

                          //div加入至現有圖層中

            mapLayer.appendChild(this.div);

                  var WMTSLayer = newTGOS.TGWmtsLayer(src, map, info, req);

        }

回到上方