|
|
1.1 root 1: #include "map.h"
2:
3: static struct coord stdpar0, stdpar1;
4: static double k;
5: static double yeq;
6:
7: static int
8: Xortelius(struct place *place, double *x, double *y)
9: {
10: *y = yeq + fabs(place->nlat.l);
11: *x = *y*k*place->wlon.l;
12: if(place->nlat.l < 0)
13: *y = 2*yeq - *y;
14: return 1;
15: }
16:
17: proj
18: ortelius(double par0, double par1)
19: {
20: par0 = fabs(par0);
21: par1 = fabs(par1);
22: deg2rad(par0,&stdpar0);
23: deg2rad(par1,&stdpar1);
24: if(fabs(par1-par0) < .1)
25: k = stdpar1.s;
26: else
27: k = (stdpar1.c-stdpar0.c)/(stdpar0.l-stdpar1.l);
28: if(k < .1)
29: return rectangular(0);
30: yeq = -stdpar1.l - stdpar1.c/k;
31: return Xortelius;
32: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.