IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
May 9, 2013, 12:26:48 PM (13 years ago)
Author:
eugene
Message:

major upgrades to pswarp to enable skycell warp -> chip

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/pswarp/src/pswarpPixelsLit.c

    r23688 r35563  
    6464    for (int y = 0; y < numRows; y++) {
    6565        for (int x = 0; x < numCols; x++) {
    66             if (!(mask->data.PS_TYPE_IMAGE_MASK_DATA[y][x] & maskValue)) {
    67                 if (y > yMax) {
    68                     yMax = y;
    69                 }
    70                 if (y < yMin) {
    71                     yMin = y;
    72                 }
    73                 if (x > xMax) {
    74                     xMax = x;
    75                 }
    76                 if (x < xMin) {
    77                     xMin = x;
    78                 }
    79             }
     66            if (mask->data.PS_TYPE_IMAGE_MASK_DATA[y][x] & maskValue) { continue; }
     67            xMin = PS_MIN (xMin, x);
     68            xMax = PS_MAX (xMax, x);
     69            yMin = PS_MIN (yMin, y);
     70            yMax = PS_MAX (yMax, y);
    8071        }
    8172    }
    8273
    8374    if (stats) {
    84         psMetadataAddS32(stats, PS_LIST_TAIL, "RANGE.XMIN", 0, "Minimum valid x value", xMin);
    85         psMetadataAddS32(stats, PS_LIST_TAIL, "RANGE.XMAX", 0, "Maximum valid x value", xMax);
    86         psMetadataAddS32(stats, PS_LIST_TAIL, "RANGE.YMIN", 0, "Minimum valid y value", yMin);
    87         psMetadataAddS32(stats, PS_LIST_TAIL, "RANGE.YMAX", 0, "Maximum valid y value", yMax);
     75        // XXX with multiple inputs (eg, output stacks -> exposure), these only represent the last input
     76        psMetadataAddS32(stats, PS_LIST_TAIL, "RANGE.XMIN", PS_META_REPLACE, "Minimum valid x value", xMin);
     77        psMetadataAddS32(stats, PS_LIST_TAIL, "RANGE.XMAX", PS_META_REPLACE, "Maximum valid x value", xMax);
     78        psMetadataAddS32(stats, PS_LIST_TAIL, "RANGE.YMIN", PS_META_REPLACE, "Minimum valid y value", yMin);
     79        psMetadataAddS32(stats, PS_LIST_TAIL, "RANGE.YMAX", PS_META_REPLACE, "Maximum valid y value", yMax);
    8880    }
    8981
Note: See TracChangeset for help on using the changeset viewer.