Wenn man sich im OpenLayers
Quellcode herumtreibt, scheint alles, was mit Zoomstufen zu tun hat, mit Auflösungen zu erfolgen. Fair genug, da dies direkt mit dem Bildschirmbereich zusammenhängt.
Ich möchte jedoch stattdessen Skalen verwenden und die zulässigen Skalen genauer definieren.
- Ist das möglich?
Bisher habe ich eine Reihe von Skalen erstellt, die ich in Auflösungen umwandle:
var scales = [500, 1000, 2000, 4000, 10000, 25000, 50000];
var resolutions = [];
for(var i = 0; i < scales.length; i++) {
resolutions.push(OpenLayers.Util.getResolutionFromScale(scales[i], units));
}
map = new OpenLayers.Map('', {
...
minScale: scales[scales.length - 1],
maxScale: scales[0],
resolution: resolutions,
numZoomLevels: scales.length,
...
});
Mein Problem ist, dass die erste und die letzte Skala eingehalten werden, aber dazwischen gehört die aktuelle Auflösung, die in eine Skala umgewandelt wurde, nicht zu den von mir angegebenen.
- Was habe ich vermisst?
scales
Parameter entweder in der Quelle oder in den Dokumenten zu finden: dev.openlayers.org/docs/files/OpenLayers/Map-js.html