本篇主要介绍利用ArcGIS API for Javascript 4版本的最新版本4.10加载谷歌地图和谷歌影像,以加载谷歌地图为例,我们通过扩展BaseTileLayer
来自定义谷歌地图图层GoogleMapLayer
模块。
1、示例运行效果:
【谷歌地图】
【谷歌影像】
2、扩展类BaseTileLayer——定义GoogleMapLayer
参考官方文档说明,我们主要设置三部分:请求url、getTileUrl()、fetchTile()。getTileUrl()
主要是根据请求级别、行列号生成url;fetchTile()
主要是发送动态的url请求并得到返回的图片,同时,可以根据需求进行合并图像。相关代码如下:
define(["dojo/_base/declare", "dojo/_base/lang","esri/config","esri/layers/BaseTileLayer","esri/request"],
function (declare,lang,esriConfig,BaseTileLayer,esriRequest) {
return BaseTileLayer.createSubclass({
properties: {
urlTemplate: "http://www.google.cn/maps/vt/lyrs=m@226000000&hl=zh-CN&gl=cn&x={x}&y={y}&z={z}&s=Galil"
},
getTileUrl: function(level