var adjust_lon = require('../common/adjust_lon'); exports.init = function() { this.x0 = this.x0 || 0; this.y0 = this.y0 || 0; this.lat0 = this.lat0 || 0; this.long0 = this.long0 || 0; ///this.t2; }; /* Equirectangular forward equations--mapping lat,long to x,y ---------------------------------------------------------*/ exports.forward = function(p) { var lon = p.x; var lat = p.y; var dlon = adjust_lon(lon - this.long0); var x = this.x0 + this.a * dlon * Math.cos(this.lat0); var y = this.y0 + this.a * lat; this.t1 = x; this.t2 = Math.cos(this.lat0); p.x = x; p.y = y; return p; }; /* Equirectangular inverse equations--mapping x,y to lat/long ---------------------------------------------------------*/ exports.inverse = function(p) { p.x -= this.x0; p.y -= this.y0; var lat = p.y / this.a; var lon = adjust_lon(this.long0 + p.x / (this.a * Math.cos(this.lat0))); p.x = lon; p.y = lat; }; exports.names = ["equi"];