xref: /plan9/sys/src/cmd/map/libmap/laue.c (revision 59cc4ca53493a3c6d2349fe2b7f7c40f7dce7294)
1*59cc4ca5SDavid du Colombier #include <u.h>
2*59cc4ca5SDavid du Colombier #include <libc.h>
33e12c5d1SDavid du Colombier #include "map.h"
43e12c5d1SDavid du Colombier 
53e12c5d1SDavid du Colombier 
63e12c5d1SDavid du Colombier static int
Xlaue(struct place * place,double * x,double * y)7219b2ee8SDavid du Colombier Xlaue(struct place *place, double *x, double *y)
83e12c5d1SDavid du Colombier {
9219b2ee8SDavid du Colombier 	double r;
103e12c5d1SDavid du Colombier 	if(place->nlat.l<PI/4+FUZZ)
113e12c5d1SDavid du Colombier 		return(-1);
123e12c5d1SDavid du Colombier 	r = tan(PI-2*place->nlat.l);
133e12c5d1SDavid du Colombier 	if(r>3)
143e12c5d1SDavid du Colombier 		return(-1);
153e12c5d1SDavid du Colombier 	*x = - r * place->wlon.s;
163e12c5d1SDavid du Colombier 	*y = - r * place->wlon.c;
173e12c5d1SDavid du Colombier 	return(1);
183e12c5d1SDavid du Colombier }
193e12c5d1SDavid du Colombier 
203e12c5d1SDavid du Colombier proj
laue(void)213e12c5d1SDavid du Colombier laue(void)
223e12c5d1SDavid du Colombier {
233e12c5d1SDavid du Colombier 	return(Xlaue);
243e12c5d1SDavid du Colombier }
25