eqc.js
1.15 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
Proj4js.Proj.eqc = {
init : function() {
if(!this.x0) this.x0=0;
if(!this.y0) this.y0=0;
if(!this.lat0) this.lat0=0;
if(!this.long0) this.long0=0;
if(!this.lat_ts) this.lat_ts=0;
if (!this.title) this.title = "Equidistant Cylindrical (Plate Carre)";
this.rc= Math.cos(this.lat_ts);
},
// forward equations--mapping lat,long to x,y
// -----------------------------------------------------------------
forward : function(p) {
var lon= p.x;
var lat= p.y;
var dlon = Proj4js.common.adjust_lon(lon - this.long0);
var dlat = Proj4js.common.adjust_lat(lat - this.lat0 );
p.x= this.x0 + (this.a*dlon*this.rc);
p.y= this.y0 + (this.a*dlat );
return p;
},
// inverse equations--mapping x,y to lat/long
// -----------------------------------------------------------------
inverse : function(p) {
var x= p.x;
var y= p.y;
p.x= Proj4js.common.adjust_lon(this.long0 + ((x - this.x0)/(this.a*this.rc)));
p.y= Proj4js.common.adjust_lat(this.lat0 + ((y - this.y0)/(this.a )));
return p;
}
};