center = center.wrap();
layers = layers.replace('M', '');
- var precision = zoomPrecision(zoom),
+ var precision = OSM.zoomPrecision(zoom),
hash = '#map=' + zoom +
'/' + center.lat.toFixed(precision) +
'/' + center.lng.toFixed(precision);
}
return hash;
+ },
+
+ zoomPrecision: function (zoom) {
+ return Math.max(0, Math.ceil(Math.log(zoom) / Math.LN2));
}
};