Main Page | Class List | Directories | File List | Class Members | File Members

ObitSkyGeom.h

Go to the documentation of this file.
00001 /* $Id: ObitSkyGeom.h,v 1.3 2007/08/31 17:24:48 bcotton Exp $  */
00002 /*--------------------------------------------------------------------*/
00003 /*;  Copyright (C) 2004-2006                                          */
00004 /*;  Associated Universities, Inc. Washington DC, USA.                */
00005 /*;                                                                   */
00006 /*;  This program is free software; you can redistribute it and/or    */
00007 /*;  modify it under the terms of the GNU General Public License as   */
00008 /*;  published by the Free Software Foundation; either version 2 of   */
00009 /*;  the License, or (at your option) any later version.              */
00010 /*;                                                                   */
00011 /*;  This program is distributed in the hope that it will be useful,  */
00012 /*;  but WITHOUT ANY WARRANTY; without even the implied warranty of   */
00013 /*;  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the    */
00014 /*;  GNU General Public License for more details.                     */
00015 /*;                                                                   */
00016 /*;  You should have received a copy of the GNU General Public        */
00017 /*;  License along with this program; if not, write to the Free       */
00018 /*;  Software Foundation, Inc., 675 Massachusetts Ave, Cambridge,     */
00019 /*;  MA 02139, USA.                                                   */
00020 /*;                                                                   */
00021 /*;  Correspondence this software should be addressed as follows:     */
00022 /*;         Internet email: bcotton@nrao.edu.                         */
00023 /*;         Postal address: William Cotton                            */
00024 /*;                         National Radio Astronomy Observatory      */
00025 /*;                         520 Edgemont Road                         */
00026 /*;                         Charlottesville, VA 22903-2475 USA        */
00027 /*--------------------------------------------------------------------*/
00028 #ifndef OBITSKYGEOM_H
00029 #define OBITSKYGEOM_H
00030 #include "Obit.h"
00031 #include "ObitErr.h"
00032 
00040 /*-------------- enumerations -------------------------------------*/
00045 enum obitSkyGeomProj {
00047   OBIT_SkyGeom_SIN = 0, 
00049   OBIT_SkyGeom_TAN,
00051   OBIT_SkyGeom_ARC, 
00053   OBIT_SkyGeom_NCP, 
00055   OBIT_SkyGeom_GLS, 
00057   OBIT_SkyGeom_MER, 
00059   OBIT_SkyGeom_AIT, 
00061   OBIT_SkyGeom_STG 
00062 }; /* end enum obitIOType */
00063 
00065 typedef enum obitSkyGeomProj ObitSkyGeomProj;
00066 
00067 /*---------------Public functions---------------------------*/
00069 void ObitSkyGeomShiftXY (gdouble ra, gdouble dec, gfloat rotate,
00070                         gdouble shiftRA, gdouble shiftDec,
00071                         gfloat *xShift, gfloat *yShift);
00072 
00074 void ObitSkyGeomXYShift (gdouble ra, gdouble dec, 
00075                         gfloat xShift, gfloat yShift, gfloat rotate,
00076                         gdouble *shiftRA, gdouble *shiftDec);
00077 
00079 void  
00080 ObitSkyGeomShiftSIN (gdouble ra, gdouble dec, gfloat rotate,
00081                     gdouble xra, double xdec, gfloat dxyzc[3]);
00082 
00084 void  
00085 ObitSkyGeomShiftNCP (gdouble ra, gdouble dec, gfloat rotate,
00086                     gdouble xra, double xdec, gfloat dxyzc[3]);
00087 
00089 void 
00090 ObitSkyGeomNewPos (ObitSkyGeomProj Proj, gdouble ra0, gdouble dec0, gdouble l, gdouble m, 
00091                    gdouble *raout, gdouble *decout, gint *ierr);
00092 
00094 gint 
00095 ObitSkyGeomWorldPos(gfloat xpix, gfloat ypix, gdouble xref, gdouble yref, 
00096                     gfloat xrefpix, gfloat yrefpix, gfloat xinc, gfloat yinc, 
00097                     gfloat rot, gchar *type, gdouble *xpos, gdouble *ypos);
00098 
00100 gint 
00101 ObitSkyGeomCDpos(gfloat xpix, gfloat ypix, gdouble xref, gdouble yref,
00102                  gfloat xrefpix, gfloat yrefpix, gfloat xinc, gfloat yinc, gfloat rot,
00103                  gfloat cd1[2], gfloat cd2[2], gchar *type, gdouble *xpos, gdouble *ypos);
00104 
00106 gint 
00107 ObitSkyGeomXYpix(gdouble xpos, gdouble ypos, gdouble xref, gdouble yref, 
00108                  gfloat xrefpix, gfloat yrefpix, gfloat xinc, gfloat yinc, 
00109                  gfloat rot, gchar *type, gfloat *xpix, gfloat *ypix);
00110 
00112 gint 
00113 ObitSkyGeomCDpix(gdouble xpos, gdouble ypos, gdouble xref, gdouble yref, 
00114                  gfloat xrefpix, gfloat yrefpix, gfloat xinc, gfloat yinc, gfloat rot,
00115                  gfloat icd1[2], gfloat icd2[2], gchar *type, 
00116                  gfloat *xpix, gfloat *ypix);
00117 
00119 gint 
00120 ObitSkyGeomWorldPosLM(gdouble dx, gdouble dy, gdouble xref, gdouble yref, 
00121                       gfloat xinc, gfloat yinc, gfloat rot, gchar *type, 
00122                       gdouble *xpos, gdouble *ypos);
00123 
00125 gint 
00126 ObitSkyGeomXYPixLM(gdouble xpos, gdouble ypos, gdouble xref, gdouble yref, 
00127                    gfloat xinc, gfloat yinc, gfloat rot, gchar *type, 
00128                    gdouble *dx, gdouble *dy);
00129 
00131 void 
00132 ObitSkyGeomBtoJ (gdouble *ra, gdouble *dec);
00133 
00135 void 
00136 ObitSkyGeomJtoB (gdouble *ra, gdouble *dec);
00137 
00139 void ObitSkyGeomEq2Gal (gdouble *RALong, gdouble *DecLat);
00140 
00142 void ObitSkyGeomGal2Eq (gdouble *RALong, gdouble *DecLat);
00143 
00145 void ObitSkyGeomEq2Ec (gdouble *RALong, gdouble *DecLat, gfloat epoch);
00146 
00148 void ObitSkyGeomEc2Eq (gdouble *RALong, gdouble *DecLat, gfloat epoch);
00149 
00151 void ObitSkyGeomRADec2Zern (gdouble ra, gdouble dec, gfloat xshift, gfloat yshift, 
00152                             gfloat* xzer, gfloat* yzer, gint *ierr);
00153 #endif  /* OBITSKYGEOM_H */

Generated on Fri Aug 31 22:13:04 2007 for Obit by  doxygen 1.3.9.1