From 87d6208403e9ec36114abee9ebe4c3323bd74ab2 Mon Sep 17 00:00:00 2001 From: Tom Payne Date: Mon, 4 Mar 2013 10:25:20 +0100 Subject: [PATCH] Add international feet to projection units --- src/ol/projection.js | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/ol/projection.js b/src/ol/projection.js index 91d00d3fd5..a70ac2a8bd 100644 --- a/src/ol/projection.js +++ b/src/ol/projection.js @@ -28,6 +28,7 @@ ol.HAVE_PROJ4JS = ol.ENABLE_PROJ4JS && typeof Proj4js == 'object'; */ ol.ProjectionUnits = { DEGREES: 'degrees', + FEET: 'ft', METERS: 'm' }; @@ -168,7 +169,13 @@ ol.Proj4jsProjection_.prototype.getPointResolution = var height = ol.sphere.NORMAL.haversineDistance( new ol.Coordinate(vertices[4], vertices[5]), new ol.Coordinate(vertices[6], vertices[7])); - return (width + height) / 2; + var pointResolution = (width + height) / 2; + if (this.getUnits() == ol.ProjectionUnits.FEET) { + // The radius of the normal sphere is defined in meters, so we must + // convert back to feet. + pointResolution /= 0.3048; + } + return pointResolution; } };