Changeset 5565 for trunk/psastro/src/psastro-mktest.c
- Timestamp:
- Nov 21, 2005, 5:33:37 PM (21 years ago)
- File:
-
- 1 edited
-
trunk/psastro/src/psastro-mktest.c (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/psastro/src/psastro-mktest.c
r5562 r5565 1 1 # include "psastro.h" 2 3 bool testWriteCMP (psMetadata *header, char *filename, psArray *sources);4 bool testWriteRef (char *filename, psArray *sources);5 bool testWriteRaw (char *filename, psArray *sources);6 2 7 3 int main (int argc, char **argv) { … … 173 169 exit (0); 174 170 } 175 176 // elixir-style pseudo FITS table (header + ascii list)177 bool testWriteCMP (psMetadata *header, char *filename, psArray *sources) {178 179 int i;180 psMetadataItem *mdi;181 182 psMetadataAdd (header, PS_LIST_TAIL, "NSTARS", PS_DATA_S32 | PS_META_REPLACE, "foo", sources->n);183 184 // create file, write-out header185 unlink (filename);186 psFits *fits = psFitsAlloc (filename);187 188 // set NAXIS to 0 : CFITSIO requires isolated header to have NAXIS = 0189 mdi = psMetadataLookup (header, "NAXIS");190 mdi->data.S32 = 0;191 mdi->type = PS_DATA_S32;192 193 psFitsWriteHeader (header, fits);194 psFree (fits);195 196 // re-open, add data to end of file197 FILE *f = fopen (filename, "a+");198 if (f == NULL) {199 psLogMsg ("WriteSourceOBJ", 3, "can't open output file for output %s\n", filename);200 return false;201 }202 fseek (f, 0, SEEK_END);203 204 for (i = 0; i < sources->n; i++) {205 206 pmAstromObj *star = sources->data[i];207 208 fprintf (f, "%6.1f %6.1f %6.3f %03d %2d %3.1f %6.3f %6.3f %6.2f %6.2f %5.1f\n",209 star->pix.x, star->pix.y, star->Mag, (int)(star->dMag*1000), 1, 2.5, 11.0, 12.0, 2.0, 0.5, 15.0);210 }211 fclose (f);212 return true;213 }214 215 // elixir-style pseudo FITS table (header + ascii list)216 bool testWriteRef (char *filename, psArray *sources) {217 218 int i;219 220 // re-open, add data to end of file221 FILE *f = fopen (filename, "w");222 if (f == NULL) {223 psLogMsg ("WriteSourceOBJ", 3, "can't open output file for output %s\n", filename);224 return false;225 }226 227 for (i = 0; i < sources->n; i++) {228 229 pmAstromObj *star = sources->data[i];230 231 fprintf (f, "%10.7f %10.7f %6.3f %6.3f\n", star->sky.r, star->sky.d+10*RAD_DEG/3600, 10.0, 0.05);232 }233 fclose (f);234 return true;235 }236 237 // elixir-style pseudo FITS table (header + ascii list)238 bool testWriteRaw (char *filename, psArray *sources) {239 240 int i;241 242 // re-open, add data to end of file243 FILE *f = fopen (filename, "w");244 if (f == NULL) {245 psLogMsg ("WriteSourceOBJ", 3, "can't open output file for output %s\n", filename);246 return false;247 }248 249 for (i = 0; i < sources->n; i++) {250 251 pmAstromObj *star = sources->data[i];252 253 fprintf (f, "%8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %8.2f %10.6f %10.6f %8.2f %8.2f\n",254 star->pix.x, star->pix.y,255 star->cell.x, star->cell.y,256 star->chip.x, star->chip.y,257 star->FP.x, star->FP.y,258 star->TP.x, star->TP.y,259 star->sky.r*DEG_RAD, star->sky.d*DEG_RAD,260 star->Mag, star->dMag);261 }262 fclose (f);263 return true;264 }
Note:
See TracChangeset
for help on using the changeset viewer.
