aboutsummaryrefslogtreecommitdiffstats
path: root/extlib/leaflet/src/geo/LatLng.js
diff options
context:
space:
mode:
authorJoar Wandborg <git@wandborg.com>2012-01-28 18:47:01 +0100
committerJoar Wandborg <git@wandborg.com>2012-01-28 18:47:01 +0100
commit3d0d3bc97270095fae5f9a2508068631c46a5e61 (patch)
tree76778fcacaae35fc5662f276dab512a07bcee186 /extlib/leaflet/src/geo/LatLng.js
parentd7bec8577ea1b4d83df097f586324445fed1ef50 (diff)
parent9542a2ba076b7e00e79d7adb1a4e90a095427645 (diff)
downloadmediagoblin-3d0d3bc97270095fae5f9a2508068631c46a5e61.tar.lz
mediagoblin-3d0d3bc97270095fae5f9a2508068631c46a5e61.tar.xz
mediagoblin-3d0d3bc97270095fae5f9a2508068631c46a5e61.zip
Merge remote-tracking branch 'joar/exif-rebase'
Diffstat (limited to 'extlib/leaflet/src/geo/LatLng.js')
-rw-r--r--extlib/leaflet/src/geo/LatLng.js35
1 files changed, 35 insertions, 0 deletions
diff --git a/extlib/leaflet/src/geo/LatLng.js b/extlib/leaflet/src/geo/LatLng.js
new file mode 100644
index 00000000..fb916547
--- /dev/null
+++ b/extlib/leaflet/src/geo/LatLng.js
@@ -0,0 +1,35 @@
+/*
+ CM.LatLng represents a geographical point with latitude and longtitude coordinates.
+*/
+
+L.LatLng = function(/*Number*/ lat, /*Number*/ lng, /*Boolean*/ noWrap) {
+ if (noWrap !== true) {
+ lat = Math.max(Math.min(lat, 90), -90); // clamp latitude into -90..90
+ lng = (lng + 180) % 360 + (lng < -180 ? 180 : -180); // wrap longtitude into -180..180
+ }
+
+ //TODO change to lat() & lng()
+ this.lat = lat;
+ this.lng = lng;
+};
+
+L.Util.extend(L.LatLng, {
+ DEG_TO_RAD: Math.PI / 180,
+ RAD_TO_DEG: 180 / Math.PI,
+ MAX_MARGIN: 1.0E-9 // max margin of error for the "equals" check
+});
+
+L.LatLng.prototype = {
+ equals: function(/*LatLng*/ obj) {
+ if (!(obj instanceof L.LatLng)) { return false; }
+
+ var margin = Math.max(Math.abs(this.lat - obj.lat), Math.abs(this.lng - obj.lng));
+ return margin <= L.LatLng.MAX_MARGIN;
+ },
+
+ toString: function() {
+ return 'LatLng(' +
+ L.Util.formatNum(this.lat) + ', ' +
+ L.Util.formatNum(this.lng) + ')';
+ }
+}; \ No newline at end of file