PageRenderTime 20ms CodeModel.GetById 11ms app.highlight 6ms RepoModel.GetById 2ms app.codeStats 0ms

/Proj4/PJ_august.c

http://github.com/route-me/route-me
C | 21 lines | 20 code | 1 blank | 0 comment | 1 complexity | 74c7e8786a2d58ca485162826f337020 MD5 | raw file
 1#ifndef lint
 2static const char SCCSID[]="@(#)PJ_august.c	4.1	94/02/15	GIE	REL";
 3#endif
 4#define PJ_LIB__
 5#include	"projects.h"
 6PROJ_HEAD(august, "August Epicycloidal") "\n\tMisc Sph, no inv.";
 7#define M 1.333333333333333
 8FORWARD(s_forward); /* spheroid */
 9	double t, c1, c, x1, x12, y1, y12;
10
11	t = tan(.5 * lp.phi);
12	c1 = sqrt(1. - t * t);
13	c = 1. + c1 * cos(lp.lam *= .5);
14	x1 = sin(lp.lam) *  c1 / c;
15	y1 =  t / c;
16	xy.x = M * x1 * (3. + (x12 = x1 * x1) - 3. * (y12 = y1 *  y1));
17	xy.y = M * y1 * (3. + 3. * x12 - y12);
18	return (xy);
19}
20FREEUP; if (P) pj_dalloc(P); }
21ENTRY0(august) P->inv = 0; P->fwd = s_forward; P->es = 0.; ENDENTRY(P)