1 | goog.require('ol.Map');
|
2 | goog.require('ol.View');
|
3 | goog.require('ol.extent');
|
4 | goog.require('ol.layer.Tile');
|
5 | goog.require('ol.proj');
|
6 | goog.require('ol.source.OSM');
|
7 | goog.require('ol.source.TileWMS');
|
8 | goog.require('ol.tilegrid.TileGrid');
|
9 |
|
10 |
|
11 | var projExtent = ol.proj.get('EPSG:3857').getExtent();
|
12 | var startResolution = ol.extent.getWidth(projExtent) / 256;
|
13 | var resolutions = new Array(22);
|
14 | for (var i = 0, ii = resolutions.length; i < ii; ++i) {
|
15 | resolutions[i] = startResolution / Math.pow(2, i);
|
16 | }
|
17 | var tileGrid = new ol.tilegrid.TileGrid({
|
18 | extent: [-13884991, 2870341, -7455066, 6338219],
|
19 | resolutions: resolutions,
|
20 | tileSize: [512, 256]
|
21 | });
|
22 |
|
23 | var layers = [
|
24 | new ol.layer.Tile({
|
25 | source: new ol.source.OSM()
|
26 | }),
|
27 | new ol.layer.Tile({
|
28 | source: new ol.source.TileWMS({
|
29 | url: 'https://ahocevar.com/geoserver/wms',
|
30 | params: {'LAYERS': 'topp:states', 'TILED': true},
|
31 | serverType: 'geoserver',
|
32 | tileGrid: tileGrid
|
33 | })
|
34 | })
|
35 | ];
|
36 | var map = new ol.Map({
|
37 | layers: layers,
|
38 | target: 'map',
|
39 | view: new ol.View({
|
40 | center: [-10997148, 4569099],
|
41 | zoom: 4
|
42 | })
|
43 | });
|