var map;
OpenLayers.IMAGE_RELOAD_ATTEMPTS = 1;
OpenLayers.Util.onImageLoadErrorColor = "transparent";
window.Proj4js = {
Proj: function(code) {
return proj4(Proj4js.defs[code]);
},
defs: proj4.defs,
transform: proj4
};
// Juiste projectieparameters voor Rijksdriehoekstelsel (EPSG:28992):
proj4.defs["EPSG:28992"] = "+proj=sterea +lat_0=52.15616055555555 +lon_0=5.38763888888889 +k=0.9999079 +x_0=155000 +y_0=463000 +ellps=bessel +towgs84=565.040,49.910,465.840,-0.40939,0.35971,-1.86849,4.0772 +units=m +no_defs";
window.onload = function() {
var controls = [
new OpenLayers.Control.Navigation(
{dragPanOptions: {enableKinetic: true}}
),
new OpenLayers.Control.Attribution(),
new OpenLayers.Control.Zoom()
];
map = new OpenLayers.Map ('map-canvas',{
controls: controls,
theme: null,
// Geldigheidsgebied van het tiling schema in RD-coördinaten:
maxExtent: new OpenLayers.Bounds(-285401.92,22598.08,595401.9199999999,903401.9199999999),
// Resoluties (pixels per meter) van de zoomniveaus:
resolutions: [3440.64, 1720.32, 860.16, 430.08, 215.04, 107.52, 53.76, 26.88, 13.44, 6.72, 3.36, 1.68, 0.84, 0.42, 0.21],
units: 'm',
projection: new OpenLayers.Projection("EPSG:28992")
});
// Er zijn 15 (0 tot 14) zoomniveaus beschikbaar van de WMTS-service voor de BRT-Achtergrondkaart:
var epsg28992matrixids = [];
for (var i=0; i<14; ++i) {
epsg28992matrixids[i] = 'EPSG:28992:' + i;
}
var tiledLayer = new OpenLayers.Layer.WMTS({
name: 'BRT Achtergrondkaart',
url: 'http://geodata.nationaalgeoregister.nl/wmts/',
layer: 'brtachtergrondkaart',
style: 'default',
matrixSet: 'EPSG:28992',
matrixIds: epsg28992matrixids,
format: 'image/png8',
isBaseLayer: true,
attribution: 'Kaartgegevens: © CBS, Kadaster, OpenStreetMap contributors',
transitionEffect: 'resize'
}
);
map.addLayer(tiledLayer);
// Het kaartbeeld wordt gecentreerd op basis van een locatie die is gedefinieerd in lengte- en breedtegraden (WGS-84):
var lonlat = new OpenLayers.LonLat(4.88750188,52.37653577);
var wgs84 = new OpenLayers.Projection("EPSG:4326");
lonlat.transform(wgs84, map.baseLayer.projection);
map.setCenter(lonlat,9);
}