PJ_urm5.c 678 Bytes
#define PROJ_PARMS__ \
	double m, rmn, q3, n;
#define PJ_LIB__
# include	<projects.h>
PROJ_HEAD(urm5, "Urmaev V") "\n\tPCyl., Sph.\n\tn= q= alphi=";
FORWARD(s_forward); /* spheroid */
	double t;

	t = lp.phi = aasin(P->n * sin(lp.phi));
	xy.x = P->m * lp.lam * cos(lp.phi);
	t *= t;
	xy.y = lp.phi * (1. + t * P->q3) * P->rmn;
	return xy;
}
FREEUP; if (P) pj_dalloc(P); }
ENTRY0(urm5)
	double alpha, t;

	P->n = pj_param(P->params, "dn").f;
	P->q3 = pj_param(P->params, "dq").f / 3.;
	alpha = pj_param(P->params, "ralpha").f;
	t = P->n * sin(alpha);
	P->m = cos(alpha) / sqrt(1. - t * t);
	P->rmn = 1. / (P->m * P->n);
	P->es = 0.;
	P->inv = 0;
	P->fwd = s_forward;
ENDENTRY(P)