IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Apr 10, 2009, 3:00:23 PM (17 years ago)
Author:
eugene
Message:

add masking for ghosts based on model (polynomials in a metadata config file); move mask support functions to psastroMaskUtils; plug leak in psastro

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/psastro/src/psastro.h

    r23688 r23810  
    4545} pmLumFunc;
    4646#endif
     47
     48/**
     49 * this structure defines the parameters to describe a ghost
     50 */
     51typedef struct {
     52    psPlane *srcFP;                     ///< location in FPA coords of the source star
     53    psPlane *FP;                        ///< location in FPA coords of the ghost center
     54    psPlane *chip;                      ///< location in chip coords of the ghost center
     55    double Mag;                         ///< instrumental magnitude of source star
     56    psEllipseAxes inner;                ///< inner elliptical annulus boundary
     57    psEllipseAxes outer;                ///< outer elliptical annulus boundary
     58} psastroGhost;
     59
     60psastroGhost     *psastroGhostAlloc (void);
     61bool              psastroLoadGhosts (pmConfig *config);
    4762
    4863bool              psastroDataSave (pmConfig *config, psMetadata *stats);
     
    131146bool              psastroZeroPointFromRecipe (float *zeropt, float *exptime, pmFPA *fpa, psMetadata *recipe);
    132147
     148// masking functions
     149pmCell           *pmCellInChip (pmChip *chip, float x, float y);
     150bool              pmCellCoordsForChip (float *xCell, float *yCell, pmCell *cell, float xChip, float yChip);
     151bool              pmChipCoordsForCell (float *xChip, float *yChip, pmCell *cell, float xCell, float yCell);
     152                 
     153bool              psastroMaskCircle (psImage *mask, psImageMaskType value, float x0, float y0, float dX, float dY);
     154bool              psastroMaskEllipse (psImage *mask, psImageMaskType value, float x0, float y0, psEllipseAxes axes);
     155bool              psastroMaskEllipticalAnnulus (psImage *mask, psImageMaskType value, float x0, float y0, psEllipseAxes eInner, psEllipseAxes eOuter);
     156                 
     157bool              psastroMaskBox (psImage *mask, psImageMaskType value, float x0, float y0, float dL, float dW, float theta);
     158void              psastroMaskLine (psImage *mask, psImageMaskType value, double x1, double y1, double x2, double y2, int dW);
     159void              psastroMaskLineBresen (psImage *mask, psImageMaskType value, int X1, int Y1, int X2, int Y2, int dW, int swapcoords);
     160void              psastroMaskRectangle (psImage *mask, psImageMaskType value, int x0, int y0, int x1, int y1);
     161
     162pmChip           *psastroFindChip (double *xChip, double *yChip, pmFPA *fpa, double xFPA, double yFPA);
     163bool              psastroChipBounds (pmFPA *fpa);
     164
    133165// psastroExtract functions
    134166bool              psastroExtractAnalysis (pmConfig *config);
    135167bool              psastroExtractStars (pmConfig *config);
    136168bool              psastroExtractGhosts (pmConfig *config);
    137 pmChip           *psastroExtractFindChip (float *xChip, float *yChip, pmFPA *fpa, float xFPA, float yFPA);
    138 bool              psastroExtractChipBounds (pmFPA *fpa);
    139169
    140 psImage          *psastroExtractStar (psImage *input, float x, float y, float dX, float dY);
     170psImage          *psastroExtractStar (psImage *input, double x, double y, double dX, double dY);
    141171bool              psastroExtractParseCamera (pmConfig *config);
    142172bool              psastroExtractDataLoad (pmConfig *config);
Note: See TracChangeset for help on using the changeset viewer.