1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
| define(['esri/layers/TiledMapServiceLayer',
| 'esri/SpatialReference',
| 'esri/geometry/Extent',
| 'esri/layers/TileInfo',
| 'dojo'
| ],
| function (TiledMapServiceLayer,
| SpatialReference,
| Extent,
| TileInfo,
| dojo
| ) {
|
| return dojo.declare("esrichina.GoogleMapLayer", TiledMapServiceLayer, {
| _baseUrl: "",
| constructor: function (url) {
| this.baseURL = url;
| this.spatialReference = new SpatialReference({ wkid: 4326 });
| this.initialExtent = (this.fullExtent = new Extent(-20037508.342787, -20037508.342787, 20037508.342787, 20037508.342787, this.spatialReference));
|
| this.tileInfo = new TileInfo({
| "rows": 256,
| "cols": 256,
| "dpi": 96,
| "format": "PNG32",
| "compressionQuality": 0,
| "origin": {
| "x": -20037508.342787,
| "y": 20037508.342787
| },
| "spatialReference": {
| "wkid": 4326
| }
| });
| this.tileInfo.lods = [{
| level: 0,
| resolution: 156543.033928,
| scale: 591657527.591555
| }, {
| level: 1,
| resolution: 78271.5169639999,
| scale: 295828763.795777
| }, {
| level: 2,
| resolution: 39135.7584820001,
| scale: 147914381.897889
| }, {
| level: 3,
| resolution: 19567.8792409999,
| scale: 73957190.948944
| }, {
| level: 4,
| resolution: 9783.93962049996,
| scale: 36978595.474472
| }, {
| level: 5,
| resolution: 4891.96981024998,
| scale: 18489297.737236
| }, {
| level: 6,
| resolution: 2445.98490512499,
| scale: 9244648.868618
| }, {
| level: 7,
| resolution: 1222.99245256249,
| scale: 4622324.434309
| }, {
| level: 8,
| resolution: 611.49622628138,
| scale: 2311162.217155
| }, {
| level: 9,
| resolution: 305.748113140558,
| scale: 1155581.108577
| }, {
| level: 10,
| resolution: 152.874056570411,
| scale: 577790.554289
| }, {
| level: 11,
| resolution: 76.4370282850732,
| scale: 288895.277144
| }, {
| level: 12,
| resolution: 38.2185141425366,
| scale: 144447.638572
| }, {
| level: 13,
| resolution: 19.1092570712683,
| scale: 72223.819286
| }, {
| level: 14,
| resolution: 9.55462853563415,
| scale: 36111.909643
| }, {
| level: 15,
| resolution: 4.77731426794937,
| scale: 18055.954822
| }, {
| level: 16,
| resolution: 2.38865713397468,
| scale: 9027.977411
| }, {
| level: 17,
| resolution: 1.19432856685505,
| scale: 4513.988705
| }, {
| level: 18,
| resolution: 0.597164283559817,
| scale: 2256.994353
| }, {
| level: 19,
| resolution: 0.298582141647617,
| scale: 1128.497176
| }, {
| level: 20,
| resolution: 0.149291070823808,
| scale: 564.248588
| }];
|
| this.loaded = true;
| this.onLoad(this);
| },
|
| getTileUrl: function (level, row, col) {
|
| var returnurl = this.baseURL + "&x=" + col + "&" +
| "y=" + row + "&" + "z=" + level;
| console.log(returnurl);
| return returnurl;
| }
| });
| });
|
|