Aventurarse en el OpenLayers
código fuente, parece que todo lo relacionado con los niveles de zoom se hace utilizando resoluciones. Es justo, ya que esto se relaciona directamente con el espacio de la pantalla.
Sin embargo, me gustaría utilizar escalas en su lugar, y definir más explícitamente las escalas permitidas.
- ¿Es esto posible?
Hasta ahora he creado un conjunto de escalas que transformo en resoluciones:
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,
...
});
Mi problema es que la primera y la última escala se respetan, pero entre ellas la resolución actual convertida en escala no está entre las que he especificado.
- ¿Qué me he perdido?