Changeset 7080 for trunk/Ohana/src/opihi/cmd.data
- Timestamp:
- May 5, 2006, 5:44:26 PM (20 years ago)
- Location:
- trunk/Ohana/src/opihi/cmd.data
- Files:
-
- 25 edited
-
create.c (modified) (2 diffs)
-
cursor.c (modified) (1 diff)
-
dimenup.c (modified) (2 diffs)
-
dot.c (modified) (2 diffs)
-
extract.c (modified) (2 diffs)
-
fft2d.c (modified) (4 diffs)
-
gridify.c (modified) (1 diff)
-
keyword.c (modified) (6 diffs)
-
line.c (modified) (2 diffs)
-
list_header.c (modified) (2 diffs)
-
mcreate.c (modified) (2 diffs)
-
minterpolate.c (modified) (2 diffs)
-
plot.c (modified) (3 diffs)
-
rd.c (modified) (9 diffs)
-
rdseg.c (modified) (3 diffs)
-
read_vectors.c (modified) (5 diffs)
-
rebin.c (modified) (4 diffs)
-
rotate.c (modified) (13 diffs)
-
spline_apply.c (modified) (2 diffs)
-
spline_construct.c (modified) (1 diff)
-
style.c (modified) (2 diffs)
-
subraster.c (modified) (2 diffs)
-
svd.c (modified) (1 diff)
-
vgrid.c (modified) (1 diff)
-
wd.c (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Ohana/src/opihi/cmd.data/create.c
r2843 r7080 55 55 56 56 if ((buf = SelectBuffer (argv[1], ANYBUFFER, TRUE)) == NULL) return (FALSE); 57 fits_free_matrix (&buf[0].matrix);58 fits_free_header (&buf[0].header);57 gfits_free_matrix (&buf[0].matrix); 58 gfits_free_header (&buf[0].header); 59 59 60 60 buf[0].bitpix = 16; … … 72 72 buf[0].header.Naxis[1] = atoi (argv[3]); 73 73 74 fits_create_header (&buf[0].header);75 fits_create_matrix (&buf[0].header, &buf[0].matrix);74 gfits_create_header (&buf[0].header); 75 gfits_create_matrix (&buf[0].header, &buf[0].matrix); 76 76 77 77 return (TRUE); -
trunk/Ohana/src/opihi/cmd.data/cursor.c
r5846 r7080 58 58 if (IsImage) { 59 59 if (buf != NULL) { 60 Z = fits_get_matrix_value (&buf[0].matrix, (int) X, (int) Y);60 Z = gfits_get_matrix_value (&buf[0].matrix, (int) X, (int) Y); 61 61 } 62 62 fprintf (GetOutfile(), "%s %f %f %f\n", key, X, Y, Z); -
trunk/Ohana/src/opihi/cmd.data/dimenup.c
r2598 r7080 28 28 29 29 /* I should encapsulate this in a create_default_buffer */ 30 fits_free_matrix (&buf[0].matrix);31 fits_free_header (&buf[0].header);30 gfits_free_matrix (&buf[0].matrix); 31 gfits_free_header (&buf[0].header); 32 32 buf[0].header.bitpix = buf[0].bitpix = -32; 33 33 buf[0].header.unsign = buf[0].unsign = FALSE; … … 37 37 buf[0].header.Naxis[0] = Nx; 38 38 buf[0].header.Naxis[1] = Ny; 39 fits_create_header (&buf[0].header);40 fits_create_matrix (&buf[0].header, &buf[0].matrix);39 gfits_create_header (&buf[0].header); 40 gfits_create_matrix (&buf[0].header, &buf[0].matrix); 41 41 42 42 out = (float *) buf[0].matrix.buffer; -
trunk/Ohana/src/opihi/cmd.data/dot.c
r5850 r7080 3 3 int dot (int argc, char **argv) { 4 4 5 int N, Ngraph;6 5 Graphdata graphmode; 7 6 float x, y; 8 7 9 /* choose the appropriate graphing window */ 10 Ngraph = -1; 11 if ((N = get_argument (argc, argv, "-n"))) { 12 remove_argument (N, &argc, argv); 13 Ngraph = atof (argv[N]); 14 remove_argument (N, &argc, argv); 15 } 16 if (!GetGraph (&graphmode, NULL, &Ngraph)) return (FALSE); 17 18 /* evaluate various plotting options */ 19 if ((N = get_argument (argc, argv, "-lt"))) { 20 remove_argument (N, &argc, argv); 21 graphmode.ltype = atof(argv[N]); 22 remove_argument (N, &argc, argv); 23 } 24 if ((N = get_argument (argc, argv, "-lw"))) { 25 remove_argument (N, &argc, argv); 26 graphmode.lweight = atof(argv[N]); 27 remove_argument (N, &argc, argv); 28 } 29 if ((N = get_argument (argc, argv, "-pt"))) { 30 remove_argument (N, &argc, argv); 31 graphmode.ptype = atof(argv[N]); 32 remove_argument (N, &argc, argv); 33 } 34 if ((N = get_argument (argc, argv, "+eb"))) { 35 remove_argument (N, &argc, argv); 36 graphmode.ebar = TRUE; 37 } 38 if ((N = get_argument (argc, argv, "-eb"))) { 39 remove_argument (N, &argc, argv); 40 graphmode.ebar = FALSE; 41 } 42 if ((N = get_argument (argc, argv, "-sz"))) { 43 remove_argument (N, &argc, argv); 44 graphmode.size = atof(argv[N]); 45 remove_argument (N, &argc, argv); 46 } 47 if ((N = get_argument (argc, argv, "-c"))) { 48 remove_argument (N, &argc, argv); 49 graphmode.color = KapaColorByName (argv[N]); 50 if (graphmode.color == -1) return (FALSE); 51 remove_argument (N, &argc, argv); 52 } 53 graphmode.style = 2; 8 if (!style_args (&graphmode, &argc, argv, -1)) return FALSE; 54 9 55 10 if (argc != 3) { … … 63 18 SetGraph (graphmode); 64 19 65 /* set errorbar mode (these are NOT sticky) */ 20 /* set point style and errorbar mode (these are NOT sticky) */ 21 graphmode.style = 2; 66 22 graphmode.etype = 0; 67 23 -
trunk/Ohana/src/opihi/cmd.data/extract.c
r2628 r7080 53 53 if ((out = SelectBuffer (argv[2], OLDBUFFER, FALSE)) == NULL) { 54 54 if ((out = SelectBuffer (argv[2], ANYBUFFER, TRUE)) == NULL) return (FALSE); 55 fits_free_matrix (&out[0].matrix);56 fits_free_header (&out[0].header);55 gfits_free_matrix (&out[0].matrix); 56 gfits_free_header (&out[0].header); 57 57 58 58 out[0].bitpix = in[0].bitpix; … … 60 60 out[0].bscale = in[0].bscale; 61 61 out[0].bzero = in[0].bzero; 62 fits_copy_header (&in[0].header, &out[0].header);63 fits_modify (&out[0].header, "NAXIS1", "%d", 1, Nx);64 fits_modify (&out[0].header, "NAXIS2", "%d", 1, Ny);62 gfits_copy_header (&in[0].header, &out[0].header); 63 gfits_modify (&out[0].header, "NAXIS1", "%d", 1, Nx); 64 gfits_modify (&out[0].header, "NAXIS2", "%d", 1, Ny); 65 65 out[0].header.Naxis[0] = Nx; 66 66 out[0].header.Naxis[1] = Ny; 67 fits_create_matrix (&out[0].header, &out[0].matrix);67 gfits_create_matrix (&out[0].header, &out[0].matrix); 68 68 } else { 69 69 if ((out[0].header.Naxis[1] != Ny) || (out[0].header.Naxis[0] != Nx)) { -
trunk/Ohana/src/opihi/cmd.data/fft2d.c
r4689 r7080 32 32 33 33 /* free up output space */ 34 fits_free_matrix (&Ore[0].matrix);35 fits_free_header (&Ore[0].header);36 fits_free_matrix (&Oim[0].matrix);37 fits_free_header (&Oim[0].header);34 gfits_free_matrix (&Ore[0].matrix); 35 gfits_free_header (&Ore[0].header); 36 gfits_free_matrix (&Oim[0].matrix); 37 gfits_free_header (&Oim[0].header); 38 38 39 39 /* get image dimensions, check value */ … … 74 74 75 75 /* fix up output headers (real) */ 76 fits_copy_header (&Ire[0].header, &Ore[0].header);77 fits_modify (&Ore[0].header, "NAXIS1", "%d", 1, Nx);78 fits_modify (&Ore[0].header, "NAXIS2", "%d", 1, Ny);76 gfits_copy_header (&Ire[0].header, &Ore[0].header); 77 gfits_modify (&Ore[0].header, "NAXIS1", "%d", 1, Nx); 78 gfits_modify (&Ore[0].header, "NAXIS2", "%d", 1, Ny); 79 79 Ore[0].header.Naxis[0] = Nx; 80 80 Ore[0].header.Naxis[1] = Ny; … … 83 83 Ore[0].bscale = Ire[0].bscale; 84 84 Ore[0].bzero = Ire[0].bzero; 85 fits_create_matrix (&Ore[0].header, &Ore[0].matrix);85 gfits_create_matrix (&Ore[0].header, &Ore[0].matrix); 86 86 87 87 /* fix up output headers (imaginary) */ 88 fits_copy_header (&Ire[0].header, &Oim[0].header);89 fits_modify (&Oim[0].header, "NAXIS1", "%d", 1, Nx);90 fits_modify (&Oim[0].header, "NAXIS2", "%d", 1, Ny);88 gfits_copy_header (&Ire[0].header, &Oim[0].header); 89 gfits_modify (&Oim[0].header, "NAXIS1", "%d", 1, Nx); 90 gfits_modify (&Oim[0].header, "NAXIS2", "%d", 1, Ny); 91 91 Oim[0].header.Naxis[0] = Nx; 92 92 Oim[0].header.Naxis[1] = Ny; … … 95 95 Oim[0].bscale = Ire[0].bscale; 96 96 Oim[0].bzero = Ire[0].bzero; 97 fits_create_matrix (&Oim[0].header, &Oim[0].matrix);97 gfits_create_matrix (&Oim[0].header, &Oim[0].matrix); 98 98 99 99 /* move data from working space to output buffers */ -
trunk/Ohana/src/opihi/cmd.data/gridify.c
r2938 r7080 56 56 free (bf[0].header.buffer); /* ALLOCATEd in SelectBuffer */ 57 57 free (bf[0].matrix.buffer); /* ALLOCATEd in SelectBuffer */ 58 fits_create_header (&bf[0].header);59 fits_create_matrix (&bf[0].header, &bf[0].matrix);58 gfits_create_header (&bf[0].header); 59 gfits_create_matrix (&bf[0].header, &bf[0].matrix); 60 60 61 61 ALLOCATE (val, float, Nx*Ny); -
trunk/Ohana/src/opihi/cmd.data/keyword.c
r2843 r7080 92 92 switch (Wmode) { 93 93 case STRING: 94 fits_modify (&buf[0].header, argv[2], "%s", 1, line);94 gfits_modify (&buf[0].header, argv[2], "%s", 1, line); 95 95 return (TRUE); 96 96 case FLOAT: 97 97 value = atof(line); 98 fits_modify (&buf[0].header, argv[2], "%lf", 1, value);98 gfits_modify (&buf[0].header, argv[2], "%lf", 1, value); 99 99 return (TRUE); 100 100 case INT: 101 fits_modify (&buf[0].header, argv[2], "%d", 1, atoi(line));101 gfits_modify (&buf[0].header, argv[2], "%d", 1, atoi(line)); 102 102 return (TRUE); 103 103 case BOOLEAN: … … 107 107 } 108 108 ivalue = !strcasecmp (line, "T"); 109 fits_modify (&buf[0].header, argv[2], "%t", 1, ivalue);109 gfits_modify (&buf[0].header, argv[2], "%t", 1, ivalue); 110 110 return (TRUE); 111 111 case KEYCOMMENT: 112 fits_modify (&buf[0].header, argv[2], "%C", 1, line);112 gfits_modify (&buf[0].header, argv[2], "%C", 1, line); 113 113 return (TRUE); 114 114 case COMMENT: 115 fits_modify (&buf[0].header, argv[2], "%S", 0, line);115 gfits_modify (&buf[0].header, argv[2], "%S", 0, line); 116 116 return (TRUE); 117 117 } … … 119 119 120 120 if (delete) { 121 fits_delete (&buf[0].header, argv[2], -1);121 gfits_delete (&buf[0].header, argv[2], -1); 122 122 return (TRUE); 123 123 } … … 125 125 /* grab the value in the given format, either a string or a digit */ 126 126 if (asfloat) { 127 status = fits_scan (&buf[0].header, argv[2], "%lf", 1, &value);127 status = gfits_scan (&buf[0].header, argv[2], "%lf", 1, &value); 128 128 if (!status) goto failure; 129 129 if (argc == 4) … … 135 135 136 136 if (ascomment) { 137 status = fits_scan (&buf[0].header, argv[2], "%C", 1, line);137 status = gfits_scan (&buf[0].header, argv[2], "%C", 1, line); 138 138 if (!status) goto failure; 139 139 if (argc == 4) … … 145 145 146 146 /* not-specified */ 147 status = fits_scan (&buf[0].header, argv[2], "%s", 1, line);147 status = gfits_scan (&buf[0].header, argv[2], "%s", 1, line); 148 148 if (!status) goto failure; 149 149 if (argc == 4) -
trunk/Ohana/src/opihi/cmd.data/line.c
r5850 r7080 3 3 int line (int argc, char **argv) { 4 4 5 int N, Npts , Ngraph;5 int N, Npts; 6 6 Graphdata graphmode; 7 7 Vector *vecx, *vecy, *dxm, *dxp, *dym, *dyp; 8 8 9 /* choose the appropriate graphing window */ 10 Ngraph = -1; 11 if ((N = get_argument (argc, argv, "-n"))) { 12 remove_argument (N, &argc, argv); 13 Ngraph = atof (argv[N]); 14 remove_argument (N, &argc, argv); 15 } 16 if (!GetGraph (&graphmode, NULL, &Ngraph)) return (FALSE); 17 18 /* evaluate various plotting options */ 19 if ((N = get_argument (argc, argv, "-lt"))) { 20 remove_argument (N, &argc, argv); 21 graphmode.ltype = atof(argv[N]); 22 remove_argument (N, &argc, argv); 23 } 24 if ((N = get_argument (argc, argv, "-lw"))) { 25 remove_argument (N, &argc, argv); 26 graphmode.lweight = atof(argv[N]); 27 remove_argument (N, &argc, argv); 28 } 29 if ((N = get_argument (argc, argv, "-pt"))) { 30 remove_argument (N, &argc, argv); 31 graphmode.ptype = atof(argv[N]); 32 remove_argument (N, &argc, argv); 33 } 34 if ((N = get_argument (argc, argv, "+eb"))) { 35 remove_argument (N, &argc, argv); 36 graphmode.ebar = TRUE; 37 } 38 if ((N = get_argument (argc, argv, "-eb"))) { 39 remove_argument (N, &argc, argv); 40 graphmode.ebar = FALSE; 41 } 42 if ((N = get_argument (argc, argv, "-sz"))) { 43 remove_argument (N, &argc, argv); 44 graphmode.size = atof(argv[N]); 45 remove_argument (N, &argc, argv); 46 } 47 if ((N = get_argument (argc, argv, "-c"))) { 48 remove_argument (N, &argc, argv); 49 graphmode.color = KapaColorByName (argv[N]); 50 if (graphmode.color == -1) return (FALSE); 51 remove_argument (N, &argc, argv); 52 } 53 if ((N = get_argument (argc, argv, "-x"))) { 54 remove_argument (N, &argc, argv); 55 graphmode.style = atof(argv[N]); 56 remove_argument (N, &argc, argv); 57 } 9 if (!style_args (&graphmode, &argc, argv, -1)) return FALSE; 58 10 59 11 /* decide on error bars */ … … 84 36 return (FALSE); 85 37 } 86 87 /* set plotting options (these are sticky) */88 38 SetGraph (graphmode); 89 39 -
trunk/Ohana/src/opihi/cmd.data/list_header.c
r2843 r7080 36 36 bscale = buf[0].header.bscale; 37 37 unsign = buf[0].header.unsign; 38 fits_free_header (&buf[0].header);38 gfits_free_header (&buf[0].header); 39 39 40 40 strcpy (filename, buf[0].file); 41 41 strcpy (buf[0].file, "*"); 42 42 strcat (buf[0].file, filename); 43 status = fits_read_header (argv[2], &buf[0].header);43 status = gfits_read_header (argv[2], &buf[0].header); 44 44 buf[0].header.bitpix = bitpix; 45 45 buf[0].header.bzero = bzero; 46 46 buf[0].header.bscale = bscale; 47 47 buf[0].header.unsign = unsign; 48 fits_modify (&buf[0].header, "BITPIX", "%d", 1, bitpix);49 fits_modify (&buf[0].header, "BSCALE", "%lf", 1, bscale);50 fits_modify (&buf[0].header, "BZERO", "%lf", 1, bzero);51 fits_modify (&buf[0].header, "UNSIGN", "%t", 1, unsign);48 gfits_modify (&buf[0].header, "BITPIX", "%d", 1, bitpix); 49 gfits_modify (&buf[0].header, "BSCALE", "%lf", 1, bscale); 50 gfits_modify (&buf[0].header, "BZERO", "%lf", 1, bzero); 51 gfits_modify (&buf[0].header, "UNSIGN", "%t", 1, unsign); 52 52 53 53 } else { … … 55 55 f = popen ("more", "w"); 56 56 57 p = fits_header_field (&buf[0].header, "END", 1);57 p = gfits_header_field (&buf[0].header, "END", 1); 58 58 nlines = (p - buf[0].header.buffer) / 80; 59 59 nbytes = 81*nlines; -
trunk/Ohana/src/opihi/cmd.data/mcreate.c
r4702 r7080 19 19 20 20 /* I should encapsulate this in a create_default_buffer */ 21 fits_free_matrix (&buf[0].matrix);22 fits_free_header (&buf[0].header);21 gfits_free_matrix (&buf[0].matrix); 22 gfits_free_header (&buf[0].header); 23 23 buf[0].header.bitpix = buf[0].bitpix = -32; 24 24 buf[0].header.unsign = buf[0].unsign = FALSE; … … 28 28 buf[0].header.Naxis[0] = Nx; 29 29 buf[0].header.Naxis[1] = Ny; 30 fits_create_header (&buf[0].header);31 fits_create_matrix (&buf[0].header, &buf[0].matrix);30 gfits_create_header (&buf[0].header); 31 gfits_create_matrix (&buf[0].header, &buf[0].matrix); 32 32 return (TRUE); 33 33 -
trunk/Ohana/src/opihi/cmd.data/minterpolate.c
r3674 r7080 26 26 if ((out = SelectBuffer (argv[2], ANYBUFFER, TRUE)) == NULL) return (FALSE); 27 27 28 fits_free_matrix (&out[0].matrix);29 fits_free_header (&out[0].header);28 gfits_free_matrix (&out[0].matrix); 29 gfits_free_header (&out[0].header); 30 30 31 31 scale = atof (argv[3]); … … 41 41 out[0].bscale = in[0].bscale; 42 42 out[0].bzero = in[0].bzero; 43 fits_copy_header (&in[0].header, &out[0].header);43 gfits_copy_header (&in[0].header, &out[0].header); 44 44 45 fits_modify (&out[0].header, "NAXIS1", "%d", 1, nx);46 fits_modify (&out[0].header, "NAXIS2", "%d", 1, ny);45 gfits_modify (&out[0].header, "NAXIS1", "%d", 1, nx); 46 gfits_modify (&out[0].header, "NAXIS2", "%d", 1, ny); 47 47 out[0].header.Naxis[0] = nx; 48 48 out[0].header.Naxis[1] = ny; 49 fits_create_matrix (&out[0].header, &out[0].matrix);49 gfits_create_matrix (&out[0].header, &out[0].matrix); 50 50 51 51 /* fix astrometric terms */ 52 status = fits_scan (&out[0].header, "CDELT1", "%lf", 1, &dX);53 status &= fits_scan (&out[0].header, "CDELT2", "%lf", 1, &dY);52 status = gfits_scan (&out[0].header, "CDELT1", "%lf", 1, &dX); 53 status &= gfits_scan (&out[0].header, "CDELT2", "%lf", 1, &dY); 54 54 dX /= scale; 55 55 dY /= scale; 56 56 if (status) { 57 fits_modify (&out[0].header, "CDELT1", "%lf", 1, dX);58 fits_modify (&out[0].header, "CDELT2", "%lf", 1, dY);57 gfits_modify (&out[0].header, "CDELT1", "%lf", 1, dX); 58 gfits_modify (&out[0].header, "CDELT2", "%lf", 1, dY); 59 59 } 60 status = fits_scan (&out[0].header, "CRPIX1", "%lf", 1, &dX);61 status &= fits_scan (&out[0].header, "CRPIX2", "%lf", 1, &dY);60 status = gfits_scan (&out[0].header, "CRPIX1", "%lf", 1, &dX); 61 status &= gfits_scan (&out[0].header, "CRPIX2", "%lf", 1, &dY); 62 62 dX *= scale; 63 63 dY *= scale; 64 64 if (status) { 65 fits_modify (&out[0].header, "CRPIX1", "%lf", 1, dX);66 fits_modify (&out[0].header, "CRPIX2", "%lf", 1, dY);65 gfits_modify (&out[0].header, "CRPIX1", "%lf", 1, dX); 66 gfits_modify (&out[0].header, "CRPIX2", "%lf", 1, dY); 67 67 } 68 68 -
trunk/Ohana/src/opihi/cmd.data/plot.c
r5850 r7080 3 3 int plot (int argc, char **argv) { 4 4 5 int N, Npts , Ngraph;5 int N, Npts; 6 6 Graphdata graphmode; 7 7 Vector *xvec, *yvec, *dxmvec, *dxpvec, *dymvec, *dypvec; 8 8 9 /* choose the appropriate graphing window */ 10 Ngraph = -1; 11 if ((N = get_argument (argc, argv, "-n"))) { 12 remove_argument (N, &argc, argv); 13 Ngraph = atof (argv[N]); 14 remove_argument (N, &argc, argv); 15 } 16 if (!GetGraph (&graphmode, NULL, &Ngraph)) return (FALSE); 17 18 /* evaluate various plotting options */ 19 if ((N = get_argument (argc, argv, "-lt"))) { 20 remove_argument (N, &argc, argv); 21 graphmode.ltype = atof(argv[N]); 22 remove_argument (N, &argc, argv); 23 } 24 if ((N = get_argument (argc, argv, "-lw"))) { 25 remove_argument (N, &argc, argv); 26 graphmode.lweight = atof(argv[N]); 27 remove_argument (N, &argc, argv); 28 } 29 if ((N = get_argument (argc, argv, "-pt"))) { 30 remove_argument (N, &argc, argv); 31 graphmode.ptype = atof(argv[N]); 32 remove_argument (N, &argc, argv); 33 } 34 if ((N = get_argument (argc, argv, "+eb"))) { 35 remove_argument (N, &argc, argv); 36 graphmode.ebar = TRUE; 37 } 38 if ((N = get_argument (argc, argv, "-eb"))) { 39 remove_argument (N, &argc, argv); 40 graphmode.ebar = FALSE; 41 } 42 if ((N = get_argument (argc, argv, "-sz"))) { 43 remove_argument (N, &argc, argv); 44 graphmode.size = atof(argv[N]); 45 remove_argument (N, &argc, argv); 46 } 47 if ((N = get_argument (argc, argv, "-c"))) { 48 remove_argument (N, &argc, argv); 49 graphmode.color = KapaColorByName (argv[N]); 50 if (graphmode.color == -1) return (FALSE); 51 remove_argument (N, &argc, argv); 52 } 53 if ((N = get_argument (argc, argv, "-x"))) { 54 remove_argument (N, &argc, argv); 55 graphmode.style = atof(argv[N]); 56 remove_argument (N, &argc, argv); 57 } 9 if (!style_args (&graphmode, &argc, argv, -1)) return FALSE; 58 10 59 11 /* decide on error bars */ … … 81 33 82 34 if (argc != 3) { 83 fprintf (stderr, "USAGE: plot <x> <y> \n");35 fprintf (stderr, "USAGE: plot <x> <y> [style]\n"); 84 36 return (FALSE); 85 37 } 86 87 /* set plotting options (these are sticky) */88 38 SetGraph (graphmode); 89 39 … … 92 42 if ((dymvec != NULL) && (dypvec == NULL)) dypvec = dymvec; 93 43 if ((dypvec != NULL) && (dymvec == NULL)) dymvec = dypvec; 94 if ( dypvec != NULL) graphmode.etype |= 0x01;44 if ((dypvec != NULL) || (dymvec != NULL)) graphmode.etype |= 0x01; 95 45 if ((dxmvec != NULL) && (dxpvec == NULL)) dxpvec = dxmvec; 96 46 if ((dxpvec != NULL) && (dxmvec == NULL)) dxmvec = dxpvec; 97 if ( dxpvec != NULL) graphmode.etype |= 0x02;47 if ((dxpvec != NULL) || (dxmvec != NULL)) graphmode.etype |= 0x02; 98 48 99 49 /* find vectors */ -
trunk/Ohana/src/opihi/cmd.data/rd.c
r4689 r7080 61 61 /* find matrix, free old data */ 62 62 if ((buf = SelectBuffer (argv[1], ANYBUFFER, TRUE)) == NULL) return (FALSE); 63 fits_free_matrix (&buf[0].matrix);64 fits_free_header (&buf[0].header);63 gfits_free_matrix (&buf[0].matrix); 64 gfits_free_header (&buf[0].header); 65 65 66 66 /* save file name */ … … 73 73 if (extend) { 74 74 /* load in appropriate header */ 75 Nskip = fits_read_Xheader (argv[2], &buf[0].header, Nextend);75 Nskip = gfits_read_Xheader (argv[2], &buf[0].header, Nextend); 76 76 if (!Nskip) { 77 77 fprintf (stderr, "entry in %s not found\n", argv[2]); … … 113 113 } 114 114 fseek (f, Nskip, SEEK_SET); 115 status = fits_load_matrix (f, &buf[0].matrix, &buf[0].header);115 status = gfits_load_matrix (f, &buf[0].matrix, &buf[0].header); 116 116 fclose (f); 117 117 } … … 128 128 done = FALSE; 129 129 for (i = 0; !done; i++) { 130 Nskip = fits_read_Xheader (argv[2], &buf[0].header, i);130 Nskip = gfits_read_Xheader (argv[2], &buf[0].header, i); 131 131 if (!Nskip) { 132 132 fprintf (stderr, "extension %s in %s not found\n", ccdid, argv[2]); … … 135 135 return (FALSE); 136 136 } 137 if (! fits_scan (&buf[0].header, CCDKeyword, "%s", 1, ID)) {137 if (!gfits_scan (&buf[0].header, CCDKeyword, "%s", 1, ID)) { 138 138 fprintf (stderr, "%s not in header\n", CCDKeyword); 139 139 DeleteBuffer (buf); … … 145 145 done = strnumcmp (ccdid, ID); 146 146 147 if (!done) fits_free_header (&buf[0].header);147 if (!done) gfits_free_header (&buf[0].header); 148 148 } 149 149 free (CCDKeyword); … … 182 182 } 183 183 fseek (f, Nskip, SEEK_SET); 184 status = fits_load_matrix (f, &buf[0].matrix, &buf[0].header);184 status = gfits_load_matrix (f, &buf[0].matrix, &buf[0].header); 185 185 fclose (f); 186 186 } 187 187 188 188 if (!ccdsel && !extend) { 189 status = fits_read_header (argv[2], &buf[0].header);189 status = gfits_read_header (argv[2], &buf[0].header); 190 190 if (JustHead) { 191 191 buf[0].header.Naxes = 0; … … 209 209 buf[0].header.Naxis[2] = 0; 210 210 buf[0].header.Naxes = 2; 211 fits_modify (&buf[0].header, "NAXIS", "%d", 1, 2);212 fits_delete (&buf[0].header, "NAXIS3", 1);211 gfits_modify (&buf[0].header, "NAXIS", "%d", 1, 2); 212 gfits_delete (&buf[0].header, "NAXIS3", 1); 213 213 } 214 214 sprintf (region, "-1 -1 -1 -1 %d %d", (plane - 1), plane); 215 status = fits_read_segment (argv[2], &buf[0].matrix, region);215 status = gfits_read_segment (argv[2], &buf[0].matrix, region); 216 216 } 217 217 … … 236 236 237 237 /** now - convert the matrix values to floats for internal use **/ 238 fits_convert_format (&buf[0].header, &buf[0].matrix, -32, 1.0, 0.0, FT_UNSIGN_MODE);238 gfits_convert_format (&buf[0].header, &buf[0].matrix, -32, 1.0, 0.0, FT_UNSIGN_MODE); 239 239 240 240 return (TRUE); -
trunk/Ohana/src/opihi/cmd.data/rdseg.c
r2598 r7080 28 28 /* find matrix, free old data */ 29 29 if ((buf = SelectBuffer (argv[1], ANYBUFFER, TRUE)) == NULL) return (FALSE); 30 fits_free_matrix (&buf[0].matrix);31 fits_free_header (&buf[0].header);30 gfits_free_matrix (&buf[0].matrix); 31 gfits_free_header (&buf[0].header); 32 32 33 33 /* save file name */ … … 36 36 free (filename); 37 37 38 status = fits_read_header (argv[2], &buf[0].header);38 status = gfits_read_header (argv[2], &buf[0].header); 39 39 sprintf (region, "%d %d %d %d 0 1", x, nx + x, y, ny + y); 40 status = fits_read_segment (argv[2], &buf[0].matrix, region);41 fits_modify (&buf[0].header, "NAXIS1", "%d", 1, nx);42 fits_modify (&buf[0].header, "NAXIS2", "%d", 1, ny);40 status = gfits_read_segment (argv[2], &buf[0].matrix, region); 41 gfits_modify (&buf[0].header, "NAXIS1", "%d", 1, nx); 42 gfits_modify (&buf[0].header, "NAXIS2", "%d", 1, ny); 43 43 buf[0].header.Naxis[0] = nx; 44 44 buf[0].header.Naxis[1] = ny; … … 66 66 67 67 /** now - convert the matrix values to floats for internal use **/ 68 fits_convert_format (&buf[0].header, &buf[0].matrix, -32, 1.0, 0.0, FT_UNSIGN_MODE);68 gfits_convert_format (&buf[0].header, &buf[0].matrix, -32, 1.0, 0.0, FT_UNSIGN_MODE); 69 69 70 70 return (TRUE); -
trunk/Ohana/src/opihi/cmd.data/read_vectors.c
r3459 r7080 171 171 172 172 for (i = 0; i <= Nextend; i++) { 173 if (! fits_load_header (f, &header)) return (FALSE);174 Nbytes = fits_matrix_size (&header);173 if (!gfits_load_header (f, &header)) return (FALSE); 174 Nbytes = gfits_matrix_size (&header); 175 175 /* skip the prior data buffers */ 176 176 if (i < Nextend) { 177 177 fseek (f, Nbytes, SEEK_CUR); 178 fits_free_header (&header);178 gfits_free_header (&header); 179 179 continue; 180 180 } … … 183 183 Nread = fread (table.buffer, sizeof (char), Nbytes, f); 184 184 if (Nread != Nbytes) { 185 fits_free_table (&table);186 fits_free_header (&header);185 gfits_free_table (&table); 186 gfits_free_header (&header); 187 187 return (FALSE); 188 188 } … … 190 190 } 191 191 } else { 192 if (! fits_fread_ftable (f, &table, extname)) return (FALSE);192 if (!gfits_fread_ftable (f, &table, extname)) return (FALSE); 193 193 } 194 194 195 195 /* identify table type (ascii / binary) */ 196 196 Binary = FALSE; 197 fits_scan (&header, "XTENSION", "%s", 1, type);197 gfits_scan (&header, "XTENSION", "%s", 1, type); 198 198 if (!strcmp (type, "BINTABLE")) { 199 199 Binary = TRUE; … … 214 214 Nval = 0; 215 215 if (Binary) { 216 if (! fits_get_bintable_column_type (&header, argv[i], type, &Nval)) return (FALSE);217 if (! fits_get_bintable_column (&header, &table, argv[i], &data)) return (FALSE);216 if (!gfits_get_bintable_column_type (&header, argv[i], type, &Nval)) return (FALSE); 217 if (!gfits_get_bintable_column (&header, &table, argv[i], &data)) return (FALSE); 218 218 } else { 219 if (! fits_get_table_column_type (&header, argv[i], type)) return (FALSE);220 if (! fits_get_table_column (&header, &table, argv[i], &data)) return (FALSE);219 if (!gfits_get_table_column_type (&header, argv[i], type)) return (FALSE); 220 if (!gfits_get_table_column (&header, &table, argv[i], &data)) return (FALSE); 221 221 } 222 222 if (Nval == 0) return (FALSE); … … 276 276 free (vec); 277 277 } 278 fits_free_table (&table);279 fits_free_header (&header);278 gfits_free_table (&table); 279 gfits_free_header (&header); 280 280 return (TRUE); 281 281 } -
trunk/Ohana/src/opihi/cmd.data/rebin.c
r4689 r7080 40 40 if ((in = SelectBuffer (argv[1], OLDBUFFER, TRUE)) == NULL) return (FALSE); 41 41 if ((out = SelectBuffer (argv[2], ANYBUFFER, TRUE)) == NULL) return (FALSE); 42 fits_free_matrix (&out[0].matrix);43 fits_free_header (&out[0].header);42 gfits_free_matrix (&out[0].matrix); 43 gfits_free_header (&out[0].header); 44 44 45 45 scale = atof (argv[3]); … … 71 71 out[0].bscale = in[0].bscale; 72 72 out[0].bzero = in[0].bzero; 73 fits_copy_header (&in[0].header, &out[0].header);74 fits_modify (&out[0].header, "NAXIS1", "%d", 1, nx);75 fits_modify (&out[0].header, "NAXIS2", "%d", 1, ny);76 77 status = fits_scan (&out[0].header, "CDELT1", "%lf", 1, &dX);78 status &= fits_scan (&out[0].header, "CDELT2", "%lf", 1, &dY);73 gfits_copy_header (&in[0].header, &out[0].header); 74 gfits_modify (&out[0].header, "NAXIS1", "%d", 1, nx); 75 gfits_modify (&out[0].header, "NAXIS2", "%d", 1, ny); 76 77 status = gfits_scan (&out[0].header, "CDELT1", "%lf", 1, &dX); 78 status &= gfits_scan (&out[0].header, "CDELT2", "%lf", 1, &dY); 79 79 if (scale > 0) { 80 80 dX *= scale; … … 85 85 } 86 86 if (status) { 87 fits_modify (&out[0].header, "CDELT1", "%lf", 1, dX);88 fits_modify (&out[0].header, "CDELT2", "%lf", 1, dY);89 } 90 91 status = fits_scan (&out[0].header, "CRPIX1", "%lf", 1, &dX);92 status &= fits_scan (&out[0].header, "CRPIX2", "%lf", 1, &dY);87 gfits_modify (&out[0].header, "CDELT1", "%lf", 1, dX); 88 gfits_modify (&out[0].header, "CDELT2", "%lf", 1, dY); 89 } 90 91 status = gfits_scan (&out[0].header, "CRPIX1", "%lf", 1, &dX); 92 status &= gfits_scan (&out[0].header, "CRPIX2", "%lf", 1, &dY); 93 93 if (scale > 0) { 94 94 dX /= scale; … … 99 99 } 100 100 if (status) { 101 fits_modify (&out[0].header, "CRPIX1", "%lf", 1, dX);102 fits_modify (&out[0].header, "CRPIX2", "%lf", 1, dY);101 gfits_modify (&out[0].header, "CRPIX1", "%lf", 1, dX); 102 gfits_modify (&out[0].header, "CRPIX2", "%lf", 1, dY); 103 103 } 104 104 105 105 out[0].header.Naxis[0] = nx; 106 106 out[0].header.Naxis[1] = ny; 107 fits_create_matrix (&out[0].header, &out[0].matrix);107 gfits_create_matrix (&out[0].header, &out[0].matrix); 108 108 temp[0] = 0; 109 109 if ((in[0].file[0] != '*') && (in[0].file[0] != '(')) { -
trunk/Ohana/src/opihi/cmd.data/rotate.c
r2843 r7080 41 41 buf[0].header.Naxis[0] = NY; 42 42 buf[0].header.Naxis[1] = NX; 43 fits_modify (&buf[0].header, "NAXIS1", "%d", 1, NY);44 fits_modify (&buf[0].header, "NAXIS2", "%d", 1, NX);45 fits_print (&buf[0].header, "HISTORY", "%S", 1, "WARNING: rotated image!");46 fits_create_matrix (&buf[0].header, &buf[0].matrix);43 gfits_modify (&buf[0].header, "NAXIS1", "%d", 1, NY); 44 gfits_modify (&buf[0].header, "NAXIS2", "%d", 1, NX); 45 gfits_print (&buf[0].header, "HISTORY", "%S", 1, "WARNING: rotated image!"); 46 gfits_create_matrix (&buf[0].header, &buf[0].matrix); 47 47 out_buff = (float *)buf[0].matrix.buffer; 48 48 for (i = NX - 1; i > -1; i--) { … … 52 52 } 53 53 /* fix reference pixel */ 54 fits_scan (&buf[0].header, "CRPIX1", "%lf", 1, &Xo);55 fits_scan (&buf[0].header, "CRPIX2", "%lf", 1, &Yo);54 gfits_scan (&buf[0].header, "CRPIX1", "%lf", 1, &Xo); 55 gfits_scan (&buf[0].header, "CRPIX2", "%lf", 1, &Yo); 56 56 X1 = Yo; 57 57 Y1 = NX - Xo; 58 fits_modify (&buf[0].header, "CRPIX1", "%lf", 1, X1);59 fits_modify (&buf[0].header, "CRPIX2", "%lf", 1, Y1);60 61 /* fix rotate matrix */ 62 fits_scan (&buf[0].header, "PC001001", "%lf", 1, &pc11);63 fits_scan (&buf[0].header, "PC001002", "%lf", 1, &pc12);64 fits_scan (&buf[0].header, "PC002001", "%lf", 1, &pc21);65 fits_scan (&buf[0].header, "PC002002", "%lf", 1, &pc22);58 gfits_modify (&buf[0].header, "CRPIX1", "%lf", 1, X1); 59 gfits_modify (&buf[0].header, "CRPIX2", "%lf", 1, Y1); 60 61 /* fix rotate matrix */ 62 gfits_scan (&buf[0].header, "PC001001", "%lf", 1, &pc11); 63 gfits_scan (&buf[0].header, "PC001002", "%lf", 1, &pc12); 64 gfits_scan (&buf[0].header, "PC002001", "%lf", 1, &pc21); 65 gfits_scan (&buf[0].header, "PC002002", "%lf", 1, &pc22); 66 66 PC11 = pc21; 67 67 PC12 = pc22; 68 68 PC21 = -pc11; 69 69 PC22 = -pc12; 70 fits_modify (&buf[0].header, "PC001001", "%le", 1, PC11);71 fits_modify (&buf[0].header, "PC001002", "%le", 1, PC12);72 fits_modify (&buf[0].header, "PC002001", "%le", 1, PC21);73 fits_modify (&buf[0].header, "PC002002", "%le", 1, PC22);70 gfits_modify (&buf[0].header, "PC001001", "%le", 1, PC11); 71 gfits_modify (&buf[0].header, "PC001002", "%le", 1, PC12); 72 gfits_modify (&buf[0].header, "PC002001", "%le", 1, PC21); 73 gfits_modify (&buf[0].header, "PC002002", "%le", 1, PC22); 74 74 75 75 free (in_buff); … … 80 80 buf[0].header.Naxis[0] = NY; 81 81 buf[0].header.Naxis[1] = NX; 82 fits_modify (&buf[0].header, "NAXIS1", "%d", 1, NY);83 fits_modify (&buf[0].header, "NAXIS2", "%d", 1, NX);84 fits_print (&buf[0].header, "HISTORY", "%S", 1, "WARNING: rotated image!");85 fits_create_matrix (&buf[0].header, &buf[0].matrix);82 gfits_modify (&buf[0].header, "NAXIS1", "%d", 1, NY); 83 gfits_modify (&buf[0].header, "NAXIS2", "%d", 1, NX); 84 gfits_print (&buf[0].header, "HISTORY", "%S", 1, "WARNING: rotated image!"); 85 gfits_create_matrix (&buf[0].header, &buf[0].matrix); 86 86 out_buff = (float *)buf[0].matrix.buffer; 87 87 for (i = 0; i < NX; i++) { … … 91 91 } 92 92 /* fix reference pixel */ 93 fits_scan (&buf[0].header, "CRPIX1", "%lf", 1, &Xo);94 fits_scan (&buf[0].header, "CRPIX2", "%lf", 1, &Yo);93 gfits_scan (&buf[0].header, "CRPIX1", "%lf", 1, &Xo); 94 gfits_scan (&buf[0].header, "CRPIX2", "%lf", 1, &Yo); 95 95 X1 = NY - Yo; 96 96 Y1 = Xo; 97 97 fprintf (stderr, "%f %f -> %f %f\n", Xo, Yo, X1, Y1); 98 fits_modify (&buf[0].header, "CRPIX1", "%lf", 1, X1);99 fits_modify (&buf[0].header, "CRPIX2", "%lf", 1, Y1);100 101 /* fix rotate matrix */ 102 fits_scan (&buf[0].header, "PC001001", "%lf", 1, &pc11);103 fits_scan (&buf[0].header, "PC001002", "%lf", 1, &pc12);104 fits_scan (&buf[0].header, "PC002001", "%lf", 1, &pc21);105 fits_scan (&buf[0].header, "PC002002", "%lf", 1, &pc22);98 gfits_modify (&buf[0].header, "CRPIX1", "%lf", 1, X1); 99 gfits_modify (&buf[0].header, "CRPIX2", "%lf", 1, Y1); 100 101 /* fix rotate matrix */ 102 gfits_scan (&buf[0].header, "PC001001", "%lf", 1, &pc11); 103 gfits_scan (&buf[0].header, "PC001002", "%lf", 1, &pc12); 104 gfits_scan (&buf[0].header, "PC002001", "%lf", 1, &pc21); 105 gfits_scan (&buf[0].header, "PC002002", "%lf", 1, &pc22); 106 106 PC11 = -pc21; 107 107 PC12 = -pc22; … … 110 110 fprintf (stderr, "%f %f -> %f %f\n", pc11, pc12, PC11, PC12); 111 111 fprintf (stderr, "%f %f -> %f %f\n", pc21, pc22, PC21, PC22); 112 fits_modify (&buf[0].header, "PC001001", "%le", 1, PC11);113 fits_modify (&buf[0].header, "PC001002", "%le", 1, PC12);114 fits_modify (&buf[0].header, "PC002001", "%le", 1, PC21);115 fits_modify (&buf[0].header, "PC002002", "%le", 1, PC22);112 gfits_modify (&buf[0].header, "PC001001", "%le", 1, PC11); 113 gfits_modify (&buf[0].header, "PC001002", "%le", 1, PC12); 114 gfits_modify (&buf[0].header, "PC002001", "%le", 1, PC21); 115 gfits_modify (&buf[0].header, "PC002002", "%le", 1, PC22); 116 116 117 117 free (in_buff); … … 120 120 121 121 if (!strcasecmp (argv[2], "UPSIDE") || (atof (argv[2]) == -180) || (atof (argv[2]) == 180)) { 122 fits_print (&buf[0].header, "HISTORY", "%S", 1, "WARNING: rotated image!");123 fits_create_matrix (&buf[0].header, &buf[0].matrix);122 gfits_print (&buf[0].header, "HISTORY", "%S", 1, "WARNING: rotated image!"); 123 gfits_create_matrix (&buf[0].header, &buf[0].matrix); 124 124 out_buff = (float *)buf[0].matrix.buffer; 125 125 for (j = NY - 1; j > -1; j--) { … … 129 129 } 130 130 /* fix reference pixel */ 131 fits_scan (&buf[0].header, "CRPIX1", "%lf", 1, &Xo);132 fits_scan (&buf[0].header, "CRPIX2", "%lf", 1, &Yo);131 gfits_scan (&buf[0].header, "CRPIX1", "%lf", 1, &Xo); 132 gfits_scan (&buf[0].header, "CRPIX2", "%lf", 1, &Yo); 133 133 X1 = NX - Xo; 134 134 Y1 = NY - Yo; 135 fits_modify (&buf[0].header, "CRPIX1", "%lf", 1, X1);136 fits_modify (&buf[0].header, "CRPIX2", "%lf", 1, Y1);137 138 /* fix rotate matrix */ 139 fits_scan (&buf[0].header, "PC001001", "%lf", 1, &pc11);140 fits_scan (&buf[0].header, "PC001002", "%lf", 1, &pc12);141 fits_scan (&buf[0].header, "PC002001", "%lf", 1, &pc21);142 fits_scan (&buf[0].header, "PC002002", "%lf", 1, &pc22);135 gfits_modify (&buf[0].header, "CRPIX1", "%lf", 1, X1); 136 gfits_modify (&buf[0].header, "CRPIX2", "%lf", 1, Y1); 137 138 /* fix rotate matrix */ 139 gfits_scan (&buf[0].header, "PC001001", "%lf", 1, &pc11); 140 gfits_scan (&buf[0].header, "PC001002", "%lf", 1, &pc12); 141 gfits_scan (&buf[0].header, "PC002001", "%lf", 1, &pc21); 142 gfits_scan (&buf[0].header, "PC002002", "%lf", 1, &pc22); 143 143 PC11 = -pc11; 144 144 PC12 = -pc12; 145 145 PC21 = -pc21; 146 146 PC22 = -pc22; 147 fits_modify (&buf[0].header, "PC001001", "%le", 1, PC11);148 fits_modify (&buf[0].header, "PC001002", "%le", 1, PC12);149 fits_modify (&buf[0].header, "PC002001", "%le", 1, PC21);150 fits_modify (&buf[0].header, "PC002002", "%le", 1, PC22);147 gfits_modify (&buf[0].header, "PC001001", "%le", 1, PC11); 148 gfits_modify (&buf[0].header, "PC001002", "%le", 1, PC12); 149 gfits_modify (&buf[0].header, "PC002001", "%le", 1, PC21); 150 gfits_modify (&buf[0].header, "PC002002", "%le", 1, PC22); 151 151 152 152 free (in_buff); … … 155 155 156 156 if (!strcasecmp (argv[2], "FLIPY")) { 157 fits_print (&buf[0].header, "HISTORY", "%S", 1, "WARNING: rotated image!");158 fits_create_matrix (&buf[0].header, &buf[0].matrix);157 gfits_print (&buf[0].header, "HISTORY", "%S", 1, "WARNING: rotated image!"); 158 gfits_create_matrix (&buf[0].header, &buf[0].matrix); 159 159 out_buff = (float *)buf[0].matrix.buffer; 160 160 for (j = NY - 1; j > -1; j--) { … … 164 164 } 165 165 /* fix reference pixel */ 166 fits_scan (&buf[0].header, "CRPIX1", "%lf", 1, &Xo);167 fits_scan (&buf[0].header, "CRPIX2", "%lf", 1, &Yo);166 gfits_scan (&buf[0].header, "CRPIX1", "%lf", 1, &Xo); 167 gfits_scan (&buf[0].header, "CRPIX2", "%lf", 1, &Yo); 168 168 X1 = Xo; 169 169 Y1 = NY - Yo; 170 fits_modify (&buf[0].header, "CRPIX1", "%lf", 1, X1);171 fits_modify (&buf[0].header, "CRPIX2", "%lf", 1, Y1);172 173 /* fix rotate matrix */ 174 fits_scan (&buf[0].header, "PC001001", "%lf", 1, &pc11);175 fits_scan (&buf[0].header, "PC001002", "%lf", 1, &pc12);176 fits_scan (&buf[0].header, "PC002001", "%lf", 1, &pc21);177 fits_scan (&buf[0].header, "PC002002", "%lf", 1, &pc22);170 gfits_modify (&buf[0].header, "CRPIX1", "%lf", 1, X1); 171 gfits_modify (&buf[0].header, "CRPIX2", "%lf", 1, Y1); 172 173 /* fix rotate matrix */ 174 gfits_scan (&buf[0].header, "PC001001", "%lf", 1, &pc11); 175 gfits_scan (&buf[0].header, "PC001002", "%lf", 1, &pc12); 176 gfits_scan (&buf[0].header, "PC002001", "%lf", 1, &pc21); 177 gfits_scan (&buf[0].header, "PC002002", "%lf", 1, &pc22); 178 178 PC11 = pc11; 179 179 PC12 = -pc12; 180 180 PC21 = pc21; 181 181 PC22 = -pc22; 182 fits_modify (&buf[0].header, "PC001001", "%le", 1, PC11);183 fits_modify (&buf[0].header, "PC001002", "%le", 1, PC12);184 fits_modify (&buf[0].header, "PC002001", "%le", 1, PC21);185 fits_modify (&buf[0].header, "PC002002", "%le", 1, PC22);182 gfits_modify (&buf[0].header, "PC001001", "%le", 1, PC11); 183 gfits_modify (&buf[0].header, "PC001002", "%le", 1, PC12); 184 gfits_modify (&buf[0].header, "PC002001", "%le", 1, PC21); 185 gfits_modify (&buf[0].header, "PC002002", "%le", 1, PC22); 186 186 187 187 free (in_buff); … … 190 190 191 191 if (!strcasecmp (argv[2], "FLIPX")) { 192 fits_print (&buf[0].header, "HISTORY", "%S", 1, "WARNING: rotated image!");193 fits_create_matrix (&buf[0].header, &buf[0].matrix);192 gfits_print (&buf[0].header, "HISTORY", "%S", 1, "WARNING: rotated image!"); 193 gfits_create_matrix (&buf[0].header, &buf[0].matrix); 194 194 out_buff = (float *)buf[0].matrix.buffer; 195 195 for (j = 0; j < NY; j++) { … … 199 199 } 200 200 /* fix reference pixel */ 201 fits_scan (&buf[0].header, "CRPIX1", "%lf", 1, &Xo);202 fits_scan (&buf[0].header, "CRPIX2", "%lf", 1, &Yo);201 gfits_scan (&buf[0].header, "CRPIX1", "%lf", 1, &Xo); 202 gfits_scan (&buf[0].header, "CRPIX2", "%lf", 1, &Yo); 203 203 X1 = NX - Xo; 204 204 Y1 = Yo; 205 fits_modify (&buf[0].header, "CRPIX1", "%lf", 1, X1);206 fits_modify (&buf[0].header, "CRPIX2", "%lf", 1, Y1);207 208 /* fix rotate matrix */ 209 fits_scan (&buf[0].header, "PC001001", "%lf", 1, &pc11);210 fits_scan (&buf[0].header, "PC001002", "%lf", 1, &pc12);211 fits_scan (&buf[0].header, "PC002001", "%lf", 1, &pc21);212 fits_scan (&buf[0].header, "PC002002", "%lf", 1, &pc22);205 gfits_modify (&buf[0].header, "CRPIX1", "%lf", 1, X1); 206 gfits_modify (&buf[0].header, "CRPIX2", "%lf", 1, Y1); 207 208 /* fix rotate matrix */ 209 gfits_scan (&buf[0].header, "PC001001", "%lf", 1, &pc11); 210 gfits_scan (&buf[0].header, "PC001002", "%lf", 1, &pc12); 211 gfits_scan (&buf[0].header, "PC002001", "%lf", 1, &pc21); 212 gfits_scan (&buf[0].header, "PC002002", "%lf", 1, &pc22); 213 213 PC11 = -pc11; 214 214 PC12 = pc12; 215 215 PC21 = -pc21; 216 216 PC22 = pc22; 217 fits_modify (&buf[0].header, "PC001001", "%le", 1, PC11);218 fits_modify (&buf[0].header, "PC001002", "%le", 1, PC12);219 fits_modify (&buf[0].header, "PC002001", "%le", 1, PC21);220 fits_modify (&buf[0].header, "PC002002", "%le", 1, PC22);217 gfits_modify (&buf[0].header, "PC001001", "%le", 1, PC11); 218 gfits_modify (&buf[0].header, "PC001002", "%le", 1, PC12); 219 gfits_modify (&buf[0].header, "PC002001", "%le", 1, PC21); 220 gfits_modify (&buf[0].header, "PC002002", "%le", 1, PC22); 221 221 222 222 free (in_buff); … … 242 242 243 243 /* fix reference pixel */ 244 fits_scan (&buf[0].header, "CRPIX1", "%lf", 1, &Xo);245 fits_scan (&buf[0].header, "CRPIX2", "%lf", 1, &Yo);244 gfits_scan (&buf[0].header, "CRPIX1", "%lf", 1, &Xo); 245 gfits_scan (&buf[0].header, "CRPIX2", "%lf", 1, &Yo); 246 246 /* 247 247 X1 = (Xo - dX)*CosAngle - (Yo - dY)*SinAngle; … … 250 250 X1 = Xo*CosAngle - Yo*SinAngle + dX; 251 251 Y1 = Xo*SinAngle + Yo*CosAngle + dY; 252 fits_modify (&buf[0].header, "CRPIX1", "%lf", 1, X1);253 fits_modify (&buf[0].header, "CRPIX2", "%lf", 1, Y1);252 gfits_modify (&buf[0].header, "CRPIX1", "%lf", 1, X1); 253 gfits_modify (&buf[0].header, "CRPIX2", "%lf", 1, Y1); 254 254 255 255 /* fix rotate matrix */ 256 fits_scan (&buf[0].header, "PC001001", "%lf", 1, &pc11);257 fits_scan (&buf[0].header, "PC001002", "%lf", 1, &pc12);258 fits_scan (&buf[0].header, "PC002001", "%lf", 1, &pc21);259 fits_scan (&buf[0].header, "PC002002", "%lf", 1, &pc22);256 gfits_scan (&buf[0].header, "PC001001", "%lf", 1, &pc11); 257 gfits_scan (&buf[0].header, "PC001002", "%lf", 1, &pc12); 258 gfits_scan (&buf[0].header, "PC002001", "%lf", 1, &pc21); 259 gfits_scan (&buf[0].header, "PC002002", "%lf", 1, &pc22); 260 260 PC11 = pc11*CosAngle - pc21*SinAngle; 261 261 PC12 = pc12*CosAngle - pc22*SinAngle; 262 262 PC21 = pc21*CosAngle + pc11*SinAngle; 263 263 PC22 = pc22*CosAngle + pc12*SinAngle; 264 fits_modify (&buf[0].header, "PC001001", "%le", 1, PC11);265 fits_modify (&buf[0].header, "PC001002", "%le", 1, PC12);266 fits_modify (&buf[0].header, "PC002001", "%le", 1, PC21);267 fits_modify (&buf[0].header, "PC002002", "%le", 1, PC22);264 gfits_modify (&buf[0].header, "PC001001", "%le", 1, PC11); 265 gfits_modify (&buf[0].header, "PC001002", "%le", 1, PC12); 266 gfits_modify (&buf[0].header, "PC002001", "%le", 1, PC21); 267 gfits_modify (&buf[0].header, "PC002002", "%le", 1, PC22); 268 268 269 269 buf[0].header.Naxis[0] = Lx; 270 270 buf[0].header.Naxis[1] = Ly; 271 fits_modify (&buf[0].header, "NAXIS1", "%d", 1, Lx);272 fits_modify (&buf[0].header, "NAXIS2", "%d", 1, Ly);273 fits_create_matrix (&buf[0].header, &buf[0].matrix);274 fits_print (&buf[0].header, "HISTORY", "%S", 1, "WARNING: rotated image!");271 gfits_modify (&buf[0].header, "NAXIS1", "%d", 1, Lx); 272 gfits_modify (&buf[0].header, "NAXIS2", "%d", 1, Ly); 273 gfits_create_matrix (&buf[0].header, &buf[0].matrix); 274 gfits_print (&buf[0].header, "HISTORY", "%S", 1, "WARNING: rotated image!"); 275 275 out_buff = (float *)buf[0].matrix.buffer; 276 276 for (j = 0; j < Ly; j++) { -
trunk/Ohana/src/opihi/cmd.data/spline_apply.c
r2598 r7080 34 34 35 35 /* create an output matrix buffer with desired nx, ny */ 36 fits_free_matrix (&out[0].matrix);37 fits_free_header (&out[0].header);36 gfits_free_matrix (&out[0].matrix); 37 gfits_free_header (&out[0].header); 38 38 39 39 out[0].bitpix = y1[0].bitpix; … … 41 41 out[0].bscale = y1[0].bscale; 42 42 out[0].bzero = y1[0].bzero; 43 fits_copy_header (&y1[0].header, &out[0].header);44 fits_modify (&out[0].header, "NAXIS1", "%d", 1, nx);45 fits_modify (&out[0].header, "NAXIS2", "%d", 1, ny);43 gfits_copy_header (&y1[0].header, &out[0].header); 44 gfits_modify (&out[0].header, "NAXIS1", "%d", 1, nx); 45 gfits_modify (&out[0].header, "NAXIS2", "%d", 1, ny); 46 46 47 47 out[0].header.Naxis[0] = nx; 48 48 out[0].header.Naxis[1] = ny; 49 fits_create_matrix (&out[0].header, &out[0].matrix);49 gfits_create_matrix (&out[0].header, &out[0].matrix); 50 50 if ((y1[0].file[0] != '*') && (y1[0].file[0] != '(')) { 51 51 sprintf (out[0].file, "*%s", y1[0].file); -
trunk/Ohana/src/opihi/cmd.data/spline_construct.c
r2598 r7080 26 26 out[0].bscale = in[0].bscale; 27 27 out[0].bzero = in[0].bzero; 28 fits_copy_matrix_info (&in[0].matrix, &out[0].matrix);29 fits_copy_header (&in[0].header, &out[0].header);30 fits_create_matrix (&out[0].header, &out[0].matrix);28 gfits_copy_matrix_info (&in[0].matrix, &out[0].matrix); 29 gfits_copy_header (&in[0].header, &out[0].header); 30 gfits_create_matrix (&out[0].header, &out[0].matrix); 31 31 32 32 xdir = FALSE; -
trunk/Ohana/src/opihi/cmd.data/style.c
r5850 r7080 1 1 # include "data.h" 2 # define NCOLORS 93 static char colors[9][10] = {"black", "white", "red", "orange", "yellow", "green", "blue", "indigo", "violet"};4 2 5 3 int style (int argc, char **argv) { 6 4 7 int N, Ngraph;8 5 Graphdata graphmode; 9 6 10 Ngraph = -1; 11 if ((N = get_argument (argc, argv, "-n"))) { 12 remove_argument (N, &argc, argv); 13 Ngraph = atof (argv[N]); 14 remove_argument (N, &argc, argv); 15 } 16 if (!GetGraph (&graphmode, NULL, &Ngraph)) return (FALSE); 17 18 if (argc == 1) { 19 fprintf (stderr, "current style (%d): -x %d -c %s -pt %d -lt %d -lw %f -sz %f\n", Ngraph, 20 graphmode.style, colors[graphmode.color], graphmode.ptype, 21 graphmode.ltype, graphmode.lweight, 22 graphmode.size); 23 return (TRUE); 24 } 25 26 if ((N = get_argument (argc, argv, "-lt"))) { 27 remove_argument (N, &argc, argv); 28 graphmode.ltype = atof(argv[N]); 29 remove_argument (N, &argc, argv); 30 } 31 if ((N = get_argument (argc, argv, "-lw"))) { 32 remove_argument (N, &argc, argv); 33 graphmode.lweight = atof(argv[N]); 34 remove_argument (N, &argc, argv); 35 } 36 if ((N = get_argument (argc, argv, "-pt"))) { 37 remove_argument (N, &argc, argv); 38 graphmode.ptype = atof(argv[N]); 39 remove_argument (N, &argc, argv); 40 } 41 if ((N = get_argument (argc, argv, "+eb"))) { 42 remove_argument (N, &argc, argv); 43 graphmode.ebar = TRUE; 44 } 45 if ((N = get_argument (argc, argv, "-eb"))) { 46 remove_argument (N, &argc, argv); 47 graphmode.ebar = FALSE; 48 } 49 if ((N = get_argument (argc, argv, "-sz"))) { 50 remove_argument (N, &argc, argv); 51 graphmode.size = atof(argv[N]); 52 remove_argument (N, &argc, argv); 53 } 54 if ((N = get_argument (argc, argv, "-c"))) { 55 remove_argument (N, &argc, argv); 56 graphmode.color = KapaColorByName (argv[N]); 57 if (graphmode.color == -1) return (FALSE); 58 remove_argument (N, &argc, argv); 59 } 60 if ((N = get_argument (argc, argv, "-x"))) { 61 remove_argument (N, &argc, argv); 62 graphmode.style = atof(argv[N]); 63 remove_argument (N, &argc, argv); 64 } 65 66 SetGraph (graphmode); 7 if (!style_args (&graphmode, &argc, argv, -1)) return FALSE; 67 8 68 9 if (argc > 1) { … … 70 11 return (FALSE); 71 12 } 13 SetGraph (graphmode); 72 14 73 15 return (TRUE); 74 75 16 } 76 -
trunk/Ohana/src/opihi/cmd.data/subraster.c
r2598 r7080 53 53 54 54 if ((obuf = SelectBuffer (argv[2], ANYBUFFER, TRUE)) == NULL) return (FALSE); 55 fits_free_matrix (&obuf[0].matrix);56 fits_free_header (&obuf[0].header);55 gfits_free_matrix (&obuf[0].matrix); 56 gfits_free_header (&obuf[0].header); 57 57 58 58 obuf[0].bitpix = ibuf[0].bitpix; … … 62 62 /* strcpy (obuf[0].name, ibuf[0].name); */ 63 63 strcpy (obuf[0].file, ibuf[0].file); 64 fits_copy_header (&ibuf[0].header, &obuf[0].header);65 fits_modify (&obuf[0].header, "NAXIS1", "%d", 1, Nx);66 fits_modify (&obuf[0].header, "NAXIS2", "%d", 1, Ny);64 gfits_copy_header (&ibuf[0].header, &obuf[0].header); 65 gfits_modify (&obuf[0].header, "NAXIS1", "%d", 1, Nx); 66 gfits_modify (&obuf[0].header, "NAXIS2", "%d", 1, Ny); 67 67 obuf[0].header.Naxis[0] = Nx; 68 68 obuf[0].header.Naxis[1] = Ny; 69 fits_create_matrix (&obuf[0].header, &obuf[0].matrix);69 gfits_create_matrix (&obuf[0].header, &obuf[0].matrix); 70 70 71 71 for (j = 0; j < ny; j++) { -
trunk/Ohana/src/opihi/cmd.data/svd.c
r2598 r7080 20 20 21 21 /* U is Nx, Ny */ 22 fits_free_matrix (&Mu[0].matrix);23 fits_free_header (&Mu[0].header);22 gfits_free_matrix (&Mu[0].matrix); 23 gfits_free_header (&Mu[0].header); 24 24 Mu[0].bitpix = Ma[0].bitpix; 25 25 Mu[0].unsign = Ma[0].unsign; 26 26 Mu[0].bscale = Ma[0].bscale; 27 27 Mu[0].bzero = Ma[0].bzero; 28 fits_copy_header (&Ma[0].header, &Mu[0].header);29 fits_create_matrix (&Mu[0].header, &Mu[0].matrix);28 gfits_copy_header (&Ma[0].header, &Mu[0].header); 29 gfits_create_matrix (&Mu[0].header, &Mu[0].matrix); 30 30 31 31 /* V is Nx, Nx */ 32 fits_free_matrix (&Mv[0].matrix);33 fits_free_header (&Mv[0].header);32 gfits_free_matrix (&Mv[0].matrix); 33 gfits_free_header (&Mv[0].header); 34 34 Mv[0].bitpix = Ma[0].bitpix; 35 35 Mv[0].unsign = Ma[0].unsign; 36 36 Mv[0].bscale = Ma[0].bscale; 37 37 Mv[0].bzero = Ma[0].bzero; 38 fits_copy_header (&Ma[0].header, &Mv[0].header);39 fits_modify (&Mv[0].header, "NAXIS2", "%d", 1, Nx);38 gfits_copy_header (&Ma[0].header, &Mv[0].header); 39 gfits_modify (&Mv[0].header, "NAXIS2", "%d", 1, Nx); 40 40 Mv[0].header.Naxis[1] = Nx; 41 fits_create_matrix (&Mv[0].header, &Mv[0].matrix);41 gfits_create_matrix (&Mv[0].header, &Mv[0].matrix); 42 42 43 43 /* w is Nx */ -
trunk/Ohana/src/opihi/cmd.data/vgrid.c
r2598 r7080 50 50 free (bf[0].header.buffer); /* ALLOCATEd in SelectBuffer */ 51 51 free (bf[0].matrix.buffer); /* ALLOCATEd in SelectBuffer */ 52 fits_create_header (&bf[0].header);53 fits_create_matrix (&bf[0].header, &bf[0].matrix);52 gfits_create_header (&bf[0].header); 53 gfits_create_matrix (&bf[0].header, &bf[0].matrix); 54 54 55 55 ALLOCATE (val, float, Nx*Ny); -
trunk/Ohana/src/opihi/cmd.data/wd.c
r4689 r7080 80 80 memcpy (temp_header.buffer, buf[0].header.buffer, temp_header.size); 81 81 82 if (temp_header.Naxes) fits_convert_format (&temp_header, &temp_matrix, outBitpix, outScale, outZero, outUnsign);82 if (temp_header.Naxes) gfits_convert_format (&temp_header, &temp_matrix, outBitpix, outScale, outZero, outUnsign); 83 83 84 84 if (Extend) { … … 88 88 89 89 /* assume failure means non-existent file */ 90 if (! fits_read_header (argv[2], &Xhead)) {90 if (!gfits_read_header (argv[2], &Xhead)) { 91 91 92 92 Xhead.simple = TRUE; … … 99 99 Xhead.unsign = FALSE; 100 100 101 fits_create_header (&Xhead);102 fits_modify (&Xhead, "NEXTEND", "%d", 1, 0);101 gfits_create_header (&Xhead); 102 gfits_modify (&Xhead, "NEXTEND", "%d", 1, 0); 103 103 f = fopen (argv[2], "w"); 104 104 fclose (f); 105 105 } 106 106 107 fits_modify (&Xhead, "EXTEND", "%t", 1, TRUE);107 gfits_modify (&Xhead, "EXTEND", "%t", 1, TRUE); 108 108 109 109 Nextend = 0; 110 fits_scan (&Xhead, "NEXTEND", "%d", 1, &Nextend);110 gfits_scan (&Xhead, "NEXTEND", "%d", 1, &Nextend); 111 111 Nextend ++; 112 fits_modify (&Xhead, "NEXTEND", "%d", 1, Nextend);112 gfits_modify (&Xhead, "NEXTEND", "%d", 1, Nextend); 113 113 114 114 /* write the main header to the start of the file */ … … 149 149 } 150 150 /* write the matrix buffer (automatically goes to end of file */ 151 if (! fits_write_matrix (argv[2], &temp_matrix)) {151 if (!gfits_write_matrix (argv[2], &temp_matrix)) { 152 152 fprintf (stderr, "failed to write file\n"); 153 153 status = FALSE; … … 156 156 status = TRUE; 157 157 done1: 158 fits_free_header (&Xhead);159 fits_free_header (&temp_header);160 fits_free_matrix (&temp_matrix);158 gfits_free_header (&Xhead); 159 gfits_free_header (&temp_header); 160 gfits_free_matrix (&temp_matrix); 161 161 return (status); 162 162 } 163 163 164 164 /* the actual write-to-disk goes here */ 165 if (! fits_write_header (argv[2], &temp_header)) {165 if (!gfits_write_header (argv[2], &temp_header)) { 166 166 fprintf (stderr, "failed to write header\n"); 167 fits_free_header (&temp_header);168 fits_free_matrix (&temp_matrix);167 gfits_free_header (&temp_header); 168 gfits_free_matrix (&temp_matrix); 169 169 return (FALSE); 170 170 } 171 171 172 if (! fits_write_matrix (argv[2], &temp_matrix)) {172 if (!gfits_write_matrix (argv[2], &temp_matrix)) { 173 173 fprintf (stderr, "failed to write matrix\n"); 174 fits_free_header (&temp_header);175 fits_free_matrix (&temp_matrix);174 gfits_free_header (&temp_header); 175 gfits_free_matrix (&temp_matrix); 176 176 return (FALSE); 177 177 } 178 178 179 fits_free_header (&temp_header);180 fits_free_matrix (&temp_matrix);179 gfits_free_header (&temp_header); 180 gfits_free_matrix (&temp_matrix); 181 181 182 182 return (TRUE);
Note:
See TracChangeset
for help on using the changeset viewer.
