Changeset 27416
- Timestamp:
- Mar 23, 2010, 3:18:02 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/pap_stack/psastro/src/psastroLoadRefstars.c
r26259 r27416 1 1 /** @file psastroLoadRefstars.c 2 2 * 3 * @brief 3 * @brief 4 4 * 5 5 * @ingroup libpsastro … … 59 59 psMetadata *catdir_folder = psMetadataLookupMetadata(&status, catdirs, catdir_recipe); 60 60 if (catdir_folder) { 61 // randomly choose one of the entries62 psLogMsg ("psastro", 3, "choosing catdir_folder\n");63 int nEntry = catdir_folder->list->n;64 65 psRandom *rng = psRandomAlloc(PS_RANDOM_TAUS); 66 double frnd = psRandomUniform(rng);67 int entry = PS_MIN(nEntry - 1, PS_MAX(0, nEntry * frnd));68 psFree(rng);69 70 psMetadataItem *item = psListGet(catdir_folder->list, entry);71 if (item->type != PS_DATA_STRING) {72 psError(PSASTRO_ERR_CONFIG, true, "Invalid entry in PSASTRO.CATDIR folder: %s\n", item->name);73 return false;74 }75 catdir_virtual = item->data.str;61 // randomly choose one of the entries 62 psLogMsg ("psastro", 3, "choosing catdir_folder\n"); 63 int nEntry = catdir_folder->list->n; 64 65 psRandom *rng = psRandomAlloc(PS_RANDOM_TAUS); 66 double frnd = psRandomUniform(rng); 67 int entry = PS_MIN(nEntry - 1, PS_MAX(0, nEntry * frnd)); 68 psFree(rng); 69 70 psMetadataItem *item = psListGet(catdir_folder->list, entry); 71 if (item->type != PS_DATA_STRING) { 72 psError(PSASTRO_ERR_CONFIG, true, "Invalid entry in PSASTRO.CATDIR folder: %s\n", item->name); 73 return false; 74 } 75 catdir_virtual = item->data.str; 76 76 } 77 77 … … 133 133 psTrace ("psastro", 3, "%s\n", getstarCommand); 134 134 135 psLogMsg("psastro", PS_LOG_INFO, "getstar command: %s", getstarCommand); 136 135 137 // XXX use psPipe: catch stderr, stdout, allow for Nsec timeout... 136 138 // use fork to add timeout capability … … 160 162 // assert (outfile); 161 163 // for (int nn = 0; nn < refstars->n; nn++) { 162 // pmAstromObj *ref = refstars->data[nn];163 // fprintf (outfile, "%lf %lf\n", ref->sky->r*PS_DEG_RAD, ref->sky->d*PS_DEG_RAD);164 // pmAstromObj *ref = refstars->data[nn]; 165 // fprintf (outfile, "%lf %lf\n", ref->sky->r*PS_DEG_RAD, ref->sky->d*PS_DEG_RAD); 164 166 // } 165 167 // fclose (outfile); … … 217 219 ref->sky->d = RAD_DEG*psMetadataLookupF32 (&status, row, "DEC"); 218 220 ref->Mag = 0.001*psMetadataLookupS32 (&status, row, "MAG"); // ELIXIR uses millimags 219 ref->Color = 0.0;221 ref->Color = 0.0; 220 222 } else { 221 223 ref->sky->r = RAD_DEG*psMetadataLookupF64 (&status, row, "RA"); 222 224 ref->sky->d = RAD_DEG*psMetadataLookupF64 (&status, row, "DEC"); 223 225 ref->Mag = psMetadataLookupF32 (&status, row, "MAG"); // PANSTARRS uses mags 224 ref->Color = 0.0;226 ref->Color = 0.0; 225 227 } 226 228 … … 259 261 float MagC1 = psMetadataLookupF32 (&status, row, "MAG_C1"); 260 262 float MagC2 = psMetadataLookupF32 (&status, row, "MAG_C2"); 261 if (!isnan(MagC1) && !isnan(MagC2)) {262 ref->Color = MagC1 - MagC2;263 } else {264 // XXX save the color and the slope in the table header?265 ref->Color = 0.0;266 }263 if (!isnan(MagC1) && !isnan(MagC2)) { 264 ref->Color = MagC1 - MagC2; 265 } else { 266 // XXX save the color and the slope in the table header? 267 ref->Color = 0.0; 268 } 267 269 268 270 // XXX VERY temporary hack to avoid M31 bulge
Note:
See TracChangeset
for help on using the changeset viewer.
