Quote indexes into array.

git-svn-id: http://svn.openlayers.org/trunk/openlayers@1161 dc9f47b5-9b13-0410-9fdd-eb0c1a62fdaf
This commit is contained in:
crschmidt
2006-08-09 15:52:23 +00:00
parent a6edeb64b5
commit e3df606001
3 changed files with 25 additions and 15 deletions

View File

@@ -18,10 +18,8 @@ OpenLayers.Layer.KaMap.prototype =
isBaseLayer: true, isBaseLayer: true,
units: 'degrees', units: 'degrees',
scales: {inches: 1, feet: 12, miles: 63360.0, meters: 39.3701, kilometers: 39370.1, degrees: 4374754},
resolution: OpenLayers.DOTS_PER_INCH,
resolution: 72,
DEFAULT_PARAMS: { DEFAULT_PARAMS: {
i: 'jpeg', i: 'jpeg',
@@ -57,7 +55,10 @@ OpenLayers.Layer.KaMap.prototype =
var zoom = this.map.getZoom(); var zoom = this.map.getZoom();
var maxRes = this.map.maxResolution; var maxRes = this.map.maxResolution;
var mapRes = this.map.getResolution(); var mapRes = this.map.getResolution();
var scale = Math.round( (((this.tileSize.w * this.map.maxResolution * this.resolution) * (this.scales[this.units])) / this.tileSize.w) / Math.pow(2, zoom) * 10000 ) / 10000; var scale = Math.round( (((this.tileSize.w * this.map.maxResolution * this.resolution) *
(OpenLayers.INCHES_PER_UNIT[this.units])) /
this.tileSize.w)
/ Math.pow(2, zoom) * 10000 ) / 10000;
var cellSize = new OpenLayers.Size(mapRes*this.tileSize.w, mapRes*this.tileSize.h); var cellSize = new OpenLayers.Size(mapRes*this.tileSize.w, mapRes*this.tileSize.h);
var pX = Math.round(((bounds.left) / cellSize.w) * this.tileSize.w); var pX = Math.round(((bounds.left) / cellSize.w) * this.tileSize.w);

View File

@@ -98,6 +98,13 @@ OpenLayers.Map.prototype = {
/** @type OpenLayers.Size */ /** @type OpenLayers.Size */
tileSize: null, tileSize: null,
/** @type String */
units: 'degrees',
/** @type Float */
minScale: null,
/** /**
* @constructor * @constructor
@@ -203,14 +210,16 @@ OpenLayers.Map.prototype = {
// if maxResolution is specified as "auto", calculate it // if maxResolution is specified as "auto", calculate it
// based on the maxExtent and the viewSize // based on the maxExtent and the viewSize
// //
if (this.maxResolution == "auto" || this.maxResolution == null) {
if (this.maxResolution == null && this.minScale) {
this.maxResolution = OpenLayers.Util.getResolutionFromScale(this.minScale, this.units);
} else if (this.maxResolution == "auto" || this.maxResolution == null) {
var maxExtent = this.getMaxExtent(); var maxExtent = this.getMaxExtent();
var viewSize = this.getSize(); var viewSize = this.getSize();
this.maxResolution = Math.max(maxExtent.getWidth() / viewSize.w, this.maxResolution = Math.max(maxExtent.getWidth() / viewSize.w,
maxExtent.getHeight() / viewSize.h ); maxExtent.getHeight() / viewSize.h );
} }
}, },
/** /**
@@ -675,7 +684,7 @@ OpenLayers.Map.prototype = {
* @type String * @type String
*/ */
getMaxResolution: function() { getMaxResolution: function() {
var maxResolution = null var maxResolution = null;
if (this.baseLayer != null) { if (this.baseLayer != null) {
maxResolution = this.baseLayer.getMaxResolution(); maxResolution = this.baseLayer.getMaxResolution();

View File

@@ -1115,14 +1115,14 @@ OpenLayers.Util.createUniqueID = function(prefix) {
/** constant inches per unit */ /** constant inches per unit */
OpenLayers.INCHES_PER_UNIT = { // borrowed from MapServer mapscale.c OpenLayers.INCHES_PER_UNIT = { // borrowed from MapServer mapscale.c
inches: 1.0, 'inches': 1.0,
in: 1.0, 'in': 1.0,
ft: 12.0, 'ft': 12.0,
mi: 63360.0, 'mi': 63360.0,
m: 39.3701, 'm': 39.3701,
km: 39370.1, 'km': 39370.1,
dd: 4374754, 'dd': 4374754,
degrees: 4374754, 'degrees': 4374754
}; };
/** sensible default */ /** sensible default */