1 cd5bae78 2004-04-21 devnull #include "astro.h"
4 cd5bae78 2004-04-21 devnull output(char *s, Obj1 *p)
7 cd5bae78 2004-04-21 devnull if(s == 0)
8 cd5bae78 2004-04-21 devnull print(" SAO %5ld", sao);
10 cd5bae78 2004-04-21 devnull print("%10s", s);
11 cd5bae78 2004-04-21 devnull print(" %R %D %9.4f %9.4f %9.4f",
12 cd5bae78 2004-04-21 devnull p->ra, p->decl2, p->az, p->el, p->semi2);
13 cd5bae78 2004-04-21 devnull if(s == osun.name || s == omoon.name)
14 cd5bae78 2004-04-21 devnull print(" %7.4f", p->mag);
15 cd5bae78 2004-04-21 devnull print("\n");
19 cd5bae78 2004-04-21 devnull Rconv(Fmt *f)
21 cd5bae78 2004-04-21 devnull double v;
22 cd5bae78 2004-04-21 devnull int h, m, c;
24 cd5bae78 2004-04-21 devnull v = va_arg(f->args, double);
25 cd5bae78 2004-04-21 devnull v = fmod(v*12/pi, 24); /* now hours */
26 cd5bae78 2004-04-21 devnull h = floor(v);
27 cd5bae78 2004-04-21 devnull v = fmod((v-h)*60, 60); /* now leftover minutes */
28 cd5bae78 2004-04-21 devnull m = floor(v);
29 cd5bae78 2004-04-21 devnull v = fmod((v-m)*60, 60); /* now leftover seconds */
30 cd5bae78 2004-04-21 devnull c = floor(v);
31 cd5bae78 2004-04-21 devnull return fmtprint(f, "%2dh%.2dm%.2ds", h, m, c);
35 cd5bae78 2004-04-21 devnull Dconv(Fmt *f1)
37 cd5bae78 2004-04-21 devnull double v;
38 cd5bae78 2004-04-21 devnull int h, m, c, f;
40 cd5bae78 2004-04-21 devnull v = va_arg(f1->args, double);
41 cd5bae78 2004-04-21 devnull v = fmod(v/radian, 360); /* now degrees */
43 cd5bae78 2004-04-21 devnull if(v > 180) {
44 cd5bae78 2004-04-21 devnull v = 360 - v;
47 cd5bae78 2004-04-21 devnull h = floor(v);
48 cd5bae78 2004-04-21 devnull v = fmod((v-h)*60, 60); /* now leftover minutes */
49 cd5bae78 2004-04-21 devnull m = floor(v);
50 cd5bae78 2004-04-21 devnull v = fmod((v-m)*60, 60); /* now leftover seconds */
51 cd5bae78 2004-04-21 devnull c = floor(v);
52 cd5bae78 2004-04-21 devnull return fmtprint(f1, "%c%.2d°%.2d'%.2d\"", "+-"[f], h, m, c);