IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Mar 31, 2005, 1:01:46 PM (21 years ago)
Author:
desonia
Message:

cosmetic tweaks.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/psLib/src/astro/psCoord.h

    r3540 r3598  
    1010*  @author GLG, MHPCC
    1111*
    12 *  @version $Revision: 1.29 $ $Name: not supported by cvs2svn $
    13 *  @date $Date: 2005-03-29 19:41:56 $
     12*  @version $Revision: 1.30 $ $Name: not supported by cvs2svn $
     13*  @date $Date: 2005-03-31 23:01:46 $
    1414*
    1515*  Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii
     
    344344);
    345345
    346 psSphere *psSpherePrecess(psSphere *coords,
    347                           const psTime *fromTime,
    348                           const psTime *toTime);
    349 
     346/** Generates the complete spherical rotation to account for precession
     347 *  between two times.  The equinoxes shall be Julian equinoxes.
     348 *
     349 *  @return psSphere* the resulting spherical rotation
     350 */
     351psSphere* psSpherePrecess(
     352    psSphere *coords,                  ///< coordinates (modified in-place)
     353    const psTime *fromTime,            ///< equinox of coords input
     354    const psTime *toTime               ///< equinox of coords output
     355);
     356
     357// XXX: Doxygenate.
     358psPlaneTransform *p_psPlaneTransformLinearInvert(
     359    psPlaneTransform *transform
     360);
     361
     362// XXX: Doxygenate
     363psS32 p_psIsProjectionLinear(
     364    psPlaneTransform *transform
     365);
     366
     367/** inverts a given transformation.
     368 *
     369 *  It may assume that the input transformation is one-to-one, and that the
     370 *  inverse transformation may be specified through using polynomials of the
     371 *  same type and order as the forward transformation. In the event that the
     372 *  input transformation is linear, an exact solution may be calculated;
     373 *  otherwise nSamples samples in each axis, covering the region specified by
     374 *  region shall be used as a grid to fit the best inverse transformation. The
     375 *  function shall return NULL if it was unable to generate the inverse
     376 *  transformation; otherwise it shall return the inverse transformation. In
     377 *  the event that out is NULL, a new psPlaneTransform shall be allocated and
     378 *  returned.
     379 *
     380 *  @return psPlaneTransform*  the resulting inverted transform
     381 */
     382psPlaneTransform* psPlaneTransformInvert(
     383    psPlaneTransform *out,             ///< a transform to recycle, or NULL if one is to be created.
     384    const psPlaneTransform *in,        ///< transform to invert
     385    psRegion *region,                  ///< region to fit for non-linear transform inversion
     386    int nSamples                       ///< number of samples in each axis for fit
     387);
     388
     389/** Creates a single transformation that has the effect of performing trans1
     390 *  followed by trans2.
     391 *
     392 *  psPlaneTransformCombine takes two transformations (trans1 and trans2) and
     393 *  returns a single transformation that has the effect of performing trans1
     394 *  followed by trans2. In the event that the input transformation is linear,
     395 *  an exact solution may be calculated; otherwise nSamples samples in each
     396 *  axis, covering the region specified by region shall be used as a grid to
     397 *  fit the best inverse transformation. The function shall return NULL if it
     398 *  was unable to generate the transformation; otherwise it shall return the
     399 *  transformation.
     400 *
     401 *  @return psPlaneTransform*    resulting transformation
     402 */
     403psPlaneTransform* psPlaneTransformCombine(
     404    psPlaneTransform *out,             ///< a transform to recycle, or NULL if one is to be created.
     405    const psPlaneTransform *trans1,    ///< first transform to combine
     406    const psPlaneTransform *trans2     ///< first transform to combine
     407);
     408
     409
     410/** takes two arrays containing matched coordinates and returns the
     411 *  best-fitting transformation.
     412 *
     413 *  psPlaneTransformFit takes two arrays containing matched coordinates (i.e.,
     414 *  coordinates in the source array correspond to the coordinates in the dest
     415 *  array) and returns the best-fitting transformation. The source and dest
     416 *  will contain psCoords. In the event that the number of coordinates in each
     417 *  is not identical, the function shall generate a warning, and extra
     418 *  coordinates in the longer of the two shall be ignored. The trans transform
     419 *  may not be NULL, since it specifies the desired order, polynomial type and
     420 *  any polynomial terms to mask. nRejIter rejection iterations shall be
     421 *  performed, wherein coordinates lying more than sigmaClip standard
     422 *  deviations from the fit shall be rejected.
     423 *
     424 *  @return bool        TRUE if successful, otherwise FALSE.
     425 */
     426bool psPlaneTransformFit(
     427    psPlaneTransform *trans,
     428    const psArray *source,
     429    const psArray *dest,
     430    int nRejIter,
     431    float sigmaClip
     432);
    350433
    351434/// @}
Note: See TracChangeset for help on using the changeset viewer.