summaryrefslogtreecommitdiff
path: root/src/3rdparty/proj/PJ_denoy.c
blob: 8b800318eaddb640976d20c822f7b1132d93339f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#define PJ_LIB__
#include	<projects.h>
PROJ_HEAD(denoy, "Denoyer Semi-Elliptical") "\n\tPCyl., no inv., Sph.";
#define C0	0.95
#define C1	-.08333333333333333333
#define C3	.00166666666666666666
#define D1	0.9
#define D5	0.03
FORWARD(s_forward); /* spheroid */
	xy.y = lp.phi;
	xy.x = lp.lam;
	lp.lam = fabs(lp.lam);
	xy.x *= cos((C0 + lp.lam * (C1 + lp.lam * lp.lam * C3)) *
		(lp.phi * (D1 + D5 * lp.phi * lp.phi * lp.phi * lp.phi)));
	return (xy);
}
FREEUP; if (P) pj_dalloc(P); }
ENTRY0(denoy) P->es = 0.; P->fwd = s_forward; ENDENTRY(P)