|
|
1.1 root 1: #include "map.h"
2:
3: Xgilbert(place,x,y)
4: struct place *place;
5: float *x,*y;
6: {
7: float z1,z2;
8: double w1,w2,t1,t2;
9: struct place p;
10: copyplace(place,&p);
11: if(place->nlat.l<0) {
12: p.nlat.l = -p.nlat.l;
13: p.nlat.s = -p.nlat.s;
14: }
15: Xstereographic(&p,&z1,&z2);
16: csqrt(-z2/2,z1/2,&w1,&w2);
17: cdiv(w1-1,w2,w1+1,w2,&t1,&t2);
18: *y = -t1;
19: *x = t2;
20: if(place->nlat.l<0)
21: *y = -*y;
22: return(1);
23: }
24:
25: int (*gilbert())()
26: {
27: return(Xgilbert);
28: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.