IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 11468


Ignore:
Timestamp:
Jan 30, 2007, 5:48:08 PM (19 years ago)
Author:
eugene
Message:

added mag-scaled points

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/psastro/src/psastroDemoPlot.c

    r10864 r11468  
    2020
    2121    graphdata.color = KapaColorByName ("black");
    22     graphdata.ptype = 0;
     22    graphdata.ptype = 7;
    2323    graphdata.size = 0.5;
    2424    graphdata.style = 2;
     
    2929    psVector *xVec = psVectorAlloc (rawstars->n, PS_TYPE_F32);
    3030    psVector *yVec = psVectorAlloc (rawstars->n, PS_TYPE_F32);
     31    psVector *zVec = psVectorAlloc (rawstars->n, PS_TYPE_F32);
    3132
    3233    section.x = 0.0;
     
    3738    psFree (section.name);
    3839
     40    int n = 0;
    3941    for (int i = 0; i < rawstars->n; i++) {
    4042        pmAstromObj *raw = rawstars->data[i];
    41         xVec->data.F32[i] = raw->chip->x;
    42         yVec->data.F32[i] = raw->chip->y;
    43     }
    44     pmKapaPlotVectorPair_AutoLimits_OpenGraph (kapa, &graphdata, xVec, yVec);
     43        if (!isfinite(raw->Mag)) continue;
     44        xVec->data.F32[n] = raw->chip->x;
     45        yVec->data.F32[n] = raw->chip->y;
     46        zVec->data.F32[n] = raw->Mag;
     47        n++;
     48    }
     49    xVec->n = yVec->n = zVec->n = n;
     50    pmKapaPlotVectorTriple_AutoLimits_OpenGraph (kapa, &graphdata, xVec, yVec, zVec, false);
    4551
    4652    section.x = 0.5;
     
    5157    psFree (section.name);
    5258
     59    n = 0;
    5360    for (int i = 0; i < rawstars->n; i++) {
    5461        pmAstromObj *raw = rawstars->data[i];
    55         xVec->data.F32[i] = raw->FP->x;
    56         yVec->data.F32[i] = raw->FP->y;
    57     }
    58     pmKapaPlotVectorPair_AutoLimits_OpenGraph (kapa, &graphdata, xVec, yVec);
     62        if (!isfinite(raw->Mag)) continue;
     63        xVec->data.F32[n] = raw->FP->x;
     64        yVec->data.F32[n] = raw->FP->y;
     65        zVec->data.F32[n] = raw->Mag;
     66        n++;
     67    }
     68    xVec->n = yVec->n = zVec->n = n;
     69    pmKapaPlotVectorTriple_AutoLimits_OpenGraph (kapa, &graphdata, xVec, yVec, zVec, false);
    5970
    6071    section.x = 0.0;
     
    6576    psFree (section.name);
    6677
     78    n = 0;
    6779    for (int i = 0; i < rawstars->n; i++) {
    6880        pmAstromObj *raw = rawstars->data[i];
    69         xVec->data.F32[i] = raw->TP->x;
    70         yVec->data.F32[i] = raw->TP->y;
    71     }
    72     pmKapaPlotVectorPair_AutoLimits_OpenGraph (kapa, &graphdata, xVec, yVec);
     81        if (!isfinite(raw->Mag)) continue;
     82        xVec->data.F32[n] = raw->TP->x;
     83        yVec->data.F32[n] = raw->TP->y;
     84        zVec->data.F32[n] = raw->Mag;
     85        n++;
     86    }
     87    xVec->n = yVec->n = zVec->n = n;
     88    pmKapaPlotVectorTriple_AutoLimits_OpenGraph (kapa, &graphdata, xVec, yVec, zVec, false);
    7389
    7490    section.x = 0.5;
     
    7995    psFree (section.name);
    8096
     97    n = 0;
    8198    for (int i = 0; i < rawstars->n; i++) {
    8299        pmAstromObj *raw = rawstars->data[i];
    83         xVec->data.F32[i] = raw->sky->r;
    84         yVec->data.F32[i] = raw->sky->d;
    85     }
    86     pmKapaPlotVectorPair_AutoLimits_OpenGraph (kapa, &graphdata, xVec, yVec);
     100        if (!isfinite(raw->Mag)) continue;
     101        xVec->data.F32[n] = raw->sky->r;
     102        yVec->data.F32[n] = raw->sky->d;
     103        zVec->data.F32[n] = raw->Mag;
     104        n++;
     105    }
     106    xVec->n = yVec->n = zVec->n = n;
     107    pmKapaPlotVectorTriple_AutoLimits_OpenGraph (kapa, &graphdata, xVec, yVec, zVec, false);
    87108
    88109    // pause and wait for user input:
    89110    // continue, save (provide name), ??
    90     char key, name[80];
     111    char key[10], name[80];
    91112    fprintf (stdout, "(s)ave plot or [c]ontinue? ");
    92     fscanf (stdin, "%c", &key);
    93     if (key == 's') {
     113    fscanf (stdin, "%s", key);
     114    fprintf (stderr, "got: %s\n", key);
     115    if (key[0] == 's') {
    94116        fprintf (stdout, "enter plot name [rawstars.png]: ");
    95117        fscanf (stdin, "%s", name);
     
    100122    psFree (xVec);
    101123    psFree (yVec);
     124    psFree (zVec);
    102125    return true;
    103126}
     
    118141
    119142    graphdata.color = KapaColorByName ("black");
    120     graphdata.ptype = 0;
     143    graphdata.ptype = 7;
    121144    graphdata.size = 0.5;
    122145    graphdata.style = 2;
     
    124147    psVector *xVec = psVectorAlloc (refstars->n, PS_TYPE_F32);
    125148    psVector *yVec = psVectorAlloc (refstars->n, PS_TYPE_F32);
    126 
     149    psVector *zVec = psVectorAlloc (refstars->n, PS_TYPE_F32);
     150
     151    int n = 0;
    127152    for (int i = 0; i < refstars->n; i++) {
    128153        pmAstromObj *ref = refstars->data[i];
    129         xVec->data.F32[i] = ref->sky->r;
    130         yVec->data.F32[i] = ref->sky->d;
    131     }
    132     pmKapaPlotVectorPair_AutoLimits_OpenGraph (kapa, &graphdata, xVec, yVec);
     154        if (!isfinite(ref->Mag)) continue;
     155        xVec->data.F32[n] = ref->sky->r;
     156        yVec->data.F32[n] = ref->sky->d;
     157        zVec->data.F32[n] = ref->Mag;
     158        n++;
     159    }
     160    xVec->n = yVec->n = zVec->n = n;
     161    pmKapaPlotVectorTriple_AutoLimits_OpenGraph (kapa, &graphdata, xVec, yVec, zVec, false);
    133162
    134163    // pause and wait for user input:
    135164    // continue, save (provide name), ??
    136     char key, name[80];
     165    char key[10], name[80];
    137166    fprintf (stdout, "(s)ave plot or [c]ontinue? ");
    138     fscanf (stdin, "%c", &key);
    139     if (key == 's') {
     167    fscanf (stdin, "%s", key);
     168    fprintf (stderr, "got: %s\n", key);
     169    if (key[0] == 's') {
    140170        fprintf (stdout, "enter plot name [refstars.png]: ");
    141171        fscanf (stdin, "%s", name);
     
    146176    psFree (xVec);
    147177    psFree (yVec);
     178    psFree (zVec);
    148179    return true;
    149180}
     
    165196
    166197    graphdata.color = KapaColorByName ("black");
    167     graphdata.ptype = 0;
     198    graphdata.ptype = 7;
    168199    graphdata.size = 0.5;
    169200    graphdata.style = 2;
     
    174205    psVector *xVec = psVectorAlloc (match->n, PS_TYPE_F32);
    175206    psVector *yVec = psVectorAlloc (match->n, PS_TYPE_F32);
     207    psVector *zVec = psVectorAlloc (match->n, PS_TYPE_F32);
    176208
    177209    // X vs dX
     
    183215    psFree (section.name);
    184216
     217    int n = 0;
    185218    for (int i = 0; i < match->n; i++) {
    186219        pmAstromMatch *pair = match->data[i];
     
    188221        pmAstromObj *ref = refstars->data[pair->ref];
    189222       
    190         xVec->data.F32[i] = raw->chip->x;
    191         yVec->data.F32[i] = raw->chip->x - ref->chip->x;
     223        xVec->data.F32[n] = raw->chip->x;
     224        yVec->data.F32[n] = raw->chip->x - ref->chip->x;
     225        zVec->data.F32[n] = raw->Mag;
     226        n++;
    192227    }   
    193     pmKapaPlotVectorPair_AutoLimits_OpenGraph (kapa, &graphdata, xVec, yVec);
     228    xVec->n = yVec->n = zVec->n = n;
     229    pmKapaPlotVectorTriple_AutoLimits_OpenGraph (kapa, &graphdata, xVec, yVec, zVec, false);
    194230
    195231    // X vs dY
     
    201237    psFree (section.name);
    202238
     239    n = 0;
    203240    for (int i = 0; i < match->n; i++) {
    204241        pmAstromMatch *pair = match->data[i];
     
    206243        pmAstromObj *ref = refstars->data[pair->ref];
    207244       
    208         xVec->data.F32[i] = raw->chip->x;
    209         yVec->data.F32[i] = raw->chip->y - ref->chip->y;
     245        if (!isfinite(raw->Mag)) continue;
     246        xVec->data.F32[n] = raw->chip->x;
     247        yVec->data.F32[n] = raw->chip->y - ref->chip->y;
     248        zVec->data.F32[n] = raw->Mag;
     249        n++;
    210250    }   
    211     pmKapaPlotVectorPair_AutoLimits_OpenGraph (kapa, &graphdata, xVec, yVec);
     251    xVec->n = yVec->n = zVec->n = n;
     252    pmKapaPlotVectorTriple_AutoLimits_OpenGraph (kapa, &graphdata, xVec, yVec, zVec, false);
    212253
    213254    // Y vs dX
     
    219260    psFree (section.name);
    220261
     262    n = 0;
    221263    for (int i = 0; i < match->n; i++) {
    222264        pmAstromMatch *pair = match->data[i];
     
    224266        pmAstromObj *ref = refstars->data[pair->ref];
    225267       
    226         xVec->data.F32[i] = raw->chip->y;
    227         yVec->data.F32[i] = raw->chip->x - ref->chip->x;
     268        if (!isfinite(raw->Mag)) continue;
     269        xVec->data.F32[n] = raw->chip->y;
     270        yVec->data.F32[n] = raw->chip->x - ref->chip->x;
     271        zVec->data.F32[n] = raw->Mag;
     272        n++;
    228273    }   
    229     pmKapaPlotVectorPair_AutoLimits_OpenGraph (kapa, &graphdata, xVec, yVec);
     274    xVec->n = yVec->n = zVec->n = n;
     275    pmKapaPlotVectorTriple_AutoLimits_OpenGraph (kapa, &graphdata, xVec, yVec, zVec, false);
    230276
    231277    // Y vs dY
     
    237283    psFree (section.name);
    238284
     285    n = 0;
    239286    for (int i = 0; i < match->n; i++) {
    240287        pmAstromMatch *pair = match->data[i];
     
    242289        pmAstromObj *ref = refstars->data[pair->ref];
    243290       
    244         xVec->data.F32[i] = raw->chip->y;
    245         yVec->data.F32[i] = raw->chip->y - ref->chip->y;
     291        if (!isfinite(raw->Mag)) continue;
     292        xVec->data.F32[n] = raw->chip->y;
     293        yVec->data.F32[n] = raw->chip->y - ref->chip->y;
     294        zVec->data.F32[n] = raw->Mag;
     295        n++;
    246296    }   
    247     pmKapaPlotVectorPair_AutoLimits_OpenGraph (kapa, &graphdata, xVec, yVec);
     297    xVec->n = yVec->n = zVec->n = n;
     298    pmKapaPlotVectorTriple_AutoLimits_OpenGraph (kapa, &graphdata, xVec, yVec, zVec, false);
    248299
    249300    // pause and wait for user input:
    250301    // continue, save (provide name), ??
    251     char key, name[80];
     302    char key[10], name[80];
    252303    fprintf (stdout, "(s)ave plot or [c]ontinue? ");
    253     fscanf (stdin, "%c", &key);
    254     if (key == 's') {
     304    fscanf (stdin, "%s", key);
     305    fprintf (stderr, "got: %s\n", key);
     306    if (key[0] == 's') {
    255307        fprintf (stdout, "enter plot name [chipfit.png]: ");
    256308        fscanf (stdin, "%s", name);
     
    261313    psFree (xVec);
    262314    psFree (yVec);
     315    psFree (zVec);
    263316    return true;
    264317}
Note: See TracChangeset for help on using the changeset viewer.