1
0
Fork 0

Added help

pull/3/head
Cees Bassa 2015-08-10 22:14:00 +02:00
parent d41f23a324
commit 2d66416569
3 changed files with 104 additions and 61 deletions

View File

@ -86,63 +86,68 @@ int main(int argc,char *argv[])
sprintf(starfile,"%s/data/tycho2.dat",env);
// Decode options
while ((arg=getopt(argc,argv,"f:R:D:s:q:m:r:M:"))!=-1) {
switch(arg) {
case 'f':
fitsfile=optarg;
break;
case 'R':
strcpy(sra,optarg);
if (strchr(sra,':')!=NULL)
ra=15.0*sex2dec(sra);
else
ra=atof(sra);
break;
case 'D':
strcpy(sde,optarg);
if (strchr(sde,':')!=NULL)
de=sex2dec(sde);
else
de=atof(sde);
break;
case 's':
if (strchr(optarg,',')!=NULL) {
sscanf(optarg,"%f,%f",&sx,&sy);
} else {
sx=-atof(optarg);
sy=-sx;
if (argc>1) {
while ((arg=getopt(argc,argv,"f:R:D:s:q:m:r:M:"))!=-1) {
switch(arg) {
case 'f':
fitsfile=optarg;
break;
case 'R':
strcpy(sra,optarg);
if (strchr(sra,':')!=NULL)
ra=15.0*sex2dec(sra);
else
ra=atof(sra);
break;
case 'D':
strcpy(sde,optarg);
if (strchr(sde,':')!=NULL)
de=sex2dec(sde);
else
de=atof(sde);
break;
case 's':
if (strchr(optarg,',')!=NULL) {
sscanf(optarg,"%f,%f",&sx,&sy);
} else {
sx=-atof(optarg);
sy=-sx;
}
break;
case 'q':
q=atof(optarg);
break;
case 'm':
mag=atof(optarg);
break;
case 'M':
rmask=atof(optarg);
break;
case 'r':
rmax=atof(optarg);
break;
case 'h':
usage();
return 0;
break;
default:
usage();
return 0;
}
break;
case 'q':
q=atof(optarg);
break;
case 'm':
mag=atof(optarg);
break;
case 'M':
rmask=atof(optarg);
break;
case 'r':
rmax=atof(optarg);
break;
case 'h':
usage();
return 0;
break;
default:
usage();
return 0;
}
}
} else {
usage();
return 0;
}
// Read image
@ -224,6 +229,22 @@ int main(int argc,char *argv[])
if (c=='q')
break;
// Help
if (c=='h') {
printf("Calibrates astrometry. Initially requires manual matching of at least three stars. Use 'a' to select star on the image, then 'b' to select star from the catalog (blue circles). If at least three stars are matched, use 'f' and 'm' to converge the calibration.\n\n");
printf("q Quit\n");
printf("a Select star on image\n");
printf("b Select star from catalog\n");
printf("c Center image on pixel\n");
printf("f Fit calibration\n");
printf("m Match stars using current calibration\n");
printf("z/+ Zoom in on cursor\n");
printf("x/- Zoom out on cursor\n");
printf("p Plot sextractor catalog\n");
printf("r Reset zoom\n");
}
// Select pixel catalog
if (c=='a' && click==0) {
i=select_nearest(cat,x,y);
@ -259,7 +280,7 @@ int main(int argc,char *argv[])
}
// Zoom
if (c=='z' || c=='+') {
if (c=='z' || c=='+' || c=='=') {
width/=1.25;
xmin=x-0.5*width;
xmax=x+0.5*width;
@ -276,7 +297,7 @@ int main(int argc,char *argv[])
}
// Unzoom
if (c=='x' || c=='+' || c=='=') {
if (c=='x' || c=='-') {
width*=1.25;
xmin=x-0.5*width;
xmax=x+0.5*width;

View File

@ -562,7 +562,7 @@ int main(int argc,char *argv[])
cpgmtxt("T",6.0,0.0,0.0,text);
sprintf(text,"R.A.: %10.5f (%4.1f'') Decl.: %10.5f (%4.1f'')",img[iimg].ra0,img[iimg].xrms,img[iimg].de0,img[iimg].yrms);
cpgmtxt("T",4.8,0.0,0.0,text);
sprintf(text,"FoV: %.2f\\(2218)x%.2f\\(2218) Scale: %.2f''x%.2f'' pix\\u-1\\d",img[iimg].naxis1*sqrt(img[iimg].a[1]*img[iimg].a[1]+img[iimg].b[1]*img[iimg].b[1])/3600.0,img[iimg].naxis2*sqrt(img[iimg].a[2]*img[iimg].a[2]+img[iimg].b[2]*img[iimg].b[2])/3600.0,sqrt(img[iimg].a[1]*img[iimg].a[1]+img[iimg].b[1]*img[iimg].b[1]),sqrt(img[iimg].a[2]*img[iimg].a[2]+img[iimg].b[2]*img[iimg].b[2]));
sprintf(text,"FoV: %.2f\\(2218)x%.2f\\(2218) Scale: %.2f''x%.2f'' pix\\u-1\\d Fraction: %.1f",img[iimg].naxis1*sqrt(img[iimg].a[1]*img[iimg].a[1]+img[iimg].b[1]*img[iimg].b[1])/3600.0,img[iimg].naxis2*sqrt(img[iimg].a[2]*img[iimg].a[2]+img[iimg].b[2]*img[iimg].b[2])/3600.0,sqrt(img[iimg].a[1]*img[iimg].a[1]+img[iimg].b[1]*img[iimg].b[1]),sqrt(img[iimg].a[2]*img[iimg].a[2]+img[iimg].b[2]*img[iimg].b[2]),frac);
cpgmtxt("T",3.6,0.0,0.0,text);
zmin=img[iimg].zmin;
@ -632,6 +632,7 @@ int main(int argc,char *argv[])
else if (frac<0.49)
frac=0.5;
printf("Fraction: %.1f\n",frac);
redraw=1;
}
if (c=='p' || c=='X') {
@ -822,6 +823,27 @@ int main(int argc,char *argv[])
redraw=1;
continue;
}
// Help
if (c=='h') {
printf("q Quit\n");
printf("e Change of exposure (0.0 = start, 0.5 = middle, 1.0 = end)\n");
printf("p (right) Plot objects\n");
printf("l Plot star catalog\n");
printf("d Set object NORAD designation\n");
printf("c Center on cursor\n");
printf("0-9 Set zoom level\n");
printf("s/] Cycle through images forward\n");
printf("a/[ Cycle through images backward\n");
printf("o Show maximum pixels of all images\n");
printf("TAB Cycle through frame at current zoom level\n");
printf("z/+ Zoom in on cursor\n");
printf("x/- Zoom out on cursor\n");
printf("r Reset zoom\n");
printf("R Reset setup\n");
printf("w Write IOD observation\n");
printf("m (mid) measure position\n");
}
}
cpgend();

View File

@ -127,7 +127,7 @@ void plot_satellites(char *tlefile,struct image img,long satno,double mjd0,float
// Open TLE file
fp=fopen(tlefile,"rb");
if (fp==NULL)
fatal_error("File open failed for reading %s\n",tlefile);
return;
cpgsci(color);
@ -339,7 +339,7 @@ int main(int argc,char *argv[])
plot_satellites(filename,img,0,img.mjd,img.exptime,3);
sprintf(filename,"%s/catalog.tle",env);
plot_satellites(filename,img,0,img.mjd,img.exptime,0);
sprintf(filename,"/home/bassa/jsc.txt");
sprintf(filename,"%s/jsc.txt",env);
plot_satellites(filename,img,0,img.mjd,img.exptime,5);
cpgend();