Changeset 1287
- Timestamp:
- Jul 22, 2004, 5:13:39 PM (22 years ago)
- Location:
- trunk/psLib/src
- Files:
-
- 4 edited
-
astro/psCoord.c (modified) (9 diffs)
-
astro/psCoord.h (modified) (5 diffs)
-
astronomy/psCoord.c (modified) (9 diffs)
-
astronomy/psCoord.h (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/psLib/src/astro/psCoord.c
r1285 r1287 10 10 * @author George Gusciora, MHPCC 11 11 * 12 * @version $Revision: 1. 1$ $Name: not supported by cvs2svn $13 * @date $Date: 2004-07-23 0 0:40:36$12 * @version $Revision: 1.2 $ $Name: not supported by cvs2svn $ 13 * @date $Date: 2004-07-23 03:13:39 $ 14 14 * 15 15 * Copyright 2004 Maui High Performance Computing Center, University of Hawaii … … 21 21 #include "psList.h" 22 22 #include "psCoord.h" 23 #include "psMemory.h" 23 24 24 25 … … 27 28 const psPlane *coords) 28 29 { 29 return(NULL); 30 if (out == NULL) { 31 out = (psPlane *) psAlloc(sizeof(psPlane)); 32 } 33 out->x = transform->x->coeff[0][0] + 34 (transform->x->coeff[1][0] * coords->x) + 35 (transform->x->coeff[0][1] * coords->y); 36 37 out->y = transform->y->coeff[0][0] + 38 (transform->y->coeff[1][0] * coords->x) + 39 (transform->y->coeff[0][1] * coords->y); 40 41 return(out); 30 42 } 31 43 … … 37 49 float term4) 38 50 { 39 return(NULL); 51 if (out == NULL) { 52 out = (psPlane *) psAlloc(sizeof(psPlane)); 53 } 54 55 out->x = transform->x->coeff[0][0][0][0] + 56 (transform->x->coeff[1][0][0][0] * coords->x) + 57 (transform->x->coeff[0][1][0][0] * coords->y) + 58 (transform->x->coeff[0][0][1][0] * term3) + 59 (transform->x->coeff[0][0][0][1] * term4); 60 61 out->y = transform->y->coeff[0][0][0][0] + 62 (transform->y->coeff[1][0][0][0] * coords->x) + 63 (transform->y->coeff[0][1][0][0] * coords->y) + 64 (transform->y->coeff[0][0][1][0] * term3) + 65 (transform->y->coeff[0][0][0][1] * term4); 66 67 return(out); 40 68 } 41 69 42 70 43 71 44 psSphereTransform *psSphereTransform (double NPlon,45 double NPlat;46 double ZP)72 psSphereTransform *psSphereTransformAlloc(double NPlon, 73 double NPlat, 74 double ZP) 47 75 { 48 return(NULL); 76 psSphereTransform *tmp = (psSphereTransform *) psAlloc(sizeof(psSphereTransform)); 77 78 tmp->sinNPlon = sin(NPlon); 79 tmp->cosNPlon = cos(NPlon); 80 tmp->sinNPlat = sin(NPlat); 81 tmp->cosNPlat = cos(NPlat); 82 tmp->sinZP = sin(ZP); 83 tmp->cosZP = cos(ZP); 84 85 return(tmp); 49 86 } 50 87 … … 52 89 void p_psSphereTransformFree(psSphereTransform *trans) 53 90 { 54 return(NULL);91 psFree(trans); 55 92 } 56 93 … … 68 105 psSphereTransform *psSphereTransformICRStoEcliptic(void) 69 106 { 107 // sla_EQECL(); 70 108 return(NULL); 71 109 } … … 73 111 psSphereTransform *psSphereTransformEcliptictoICRS(void) 74 112 { 113 // sla_ECLEQ(); 75 114 return(NULL); 76 115 } … … 78 117 psSphereTransform *psSphereTransformICRStoGalatic(void) 79 118 { 119 // sla_EQGAL(); 80 120 return(NULL); 81 121 } … … 83 123 psSphereTransform *psSphereTransformGalatictoICRS(void) 84 124 { 125 // sla_GALEQL(); 85 126 return(NULL); 86 127 } -
trunk/psLib/src/astro/psCoord.h
r1285 r1287 10 10 * @author George Gusciora, MHPCC 11 11 * 12 * @version $Revision: 1. 1$ $Name: not supported by cvs2svn $13 * @date $Date: 2004-07-23 0 0:40:36$12 * @version $Revision: 1.2 $ $Name: not supported by cvs2svn $ 13 * @date $Date: 2004-07-23 03:13:39 $ 14 14 * 15 15 * Copyright 2004 Maui High Performance Computing Center, University of Hawaii … … 24 24 #include "psList.h" 25 25 #include "psFunctions.h" 26 27 26 28 27 typedef struct … … 69 68 psSphereTransform; 70 69 71 psPlane *psPlaneTransformApply(psPlane *out, 72 const psPlaneTransform *transform, 73 const psPlane *coords); 74 75 psPlane *psPlaneDistortApply(psPlane *out, 76 const psPlaneDistort *transform, 77 const psPlane *coords, 78 float term3, 79 float term4); 80 81 82 psSphereTransform *psSphereTransform(double NPlon, 83 double NPlat; 84 double ZP); 85 86 void p_psSphereTransformFree(psSphereTransform *trans); 87 88 89 90 psSphere *psSphereTransformApply(psSphere *out, 91 const psSphereTransform *transform, 92 const psSphere *coord); 93 94 psSphereTransform *psSphereTransformICRStoEcliptic(void); 95 psSphereTransform *psSphereTransformEcliptictoICRS(void); 96 psSphereTransform *psSphereTransformICRStoGalatic(void); 97 psSphereTransform *psSphereTransformGalatictoICRS(void); 70 typedef enum { 71 PS_PROJ_TAN, ///< Tangent projection 72 PS_PROJ_SIN, ///< Sine projection 73 PS_PROJ_AIT, ///< Aitoff projection 74 PS_PROJ_PAR, ///< Par projection 75 PS_PROJ_GLS, ///< GLS projection 76 PS_PROJ_NTYPE ///< Number of types; must be last. 77 } psProjectionType; 98 78 99 79 typedef struct … … 108 88 109 89 typedef enum { 110 PS_PROJ_TAN, ///< Tangent projection 111 PS_PROJ_SIN, ///< Sine projection 112 PS_PROJ_AIT, ///< Aitoff projection 113 PS_PROJ_PAR, ///< Par projection 114 PS_PROJ_GLS, ///< GLS projection 115 PS_PROJ_NTYPE ///< Number of types; must be last. 116 } psProjectionType; 90 PS_SPHERICAL, 91 PS_LINEAR 92 } psSphereOffsetMode; 93 94 typedef enum { 95 PS_ARCSEC, 96 PS_ARCMIN, 97 PS_DEGREE, 98 PS_RADIAN 99 } psSphereOffsetUnit; 100 101 psPlane *psPlaneTransformApply(psPlane *out, 102 const psPlaneTransform *transform, 103 const psPlane *coords); 104 105 psPlane *psPlaneDistortApply(psPlane *out, 106 const psPlaneDistort *transform, 107 const psPlane *coords, 108 float term3, 109 float term4); 110 111 112 psSphereTransform *psSphereTransformAlloc(double NPlon, 113 double NPlat, 114 double ZP); 115 116 void p_psSphereTransformFree(psSphereTransform *trans); 117 118 psSphere *psSphereTransformApply(psSphere *out, 119 const psSphereTransform *transform, 120 const psSphere *coord); 121 122 psSphereTransform *psSphereTransformICRStoEcliptic(void); 123 psSphereTransform *psSphereTransformEcliptictoICRS(void); 124 psSphereTransform *psSphereTransformICRStoGalatic(void); 125 psSphereTransform *psSphereTransformGalatictoICRS(void); 126 127 psPlane *psProject(const psSphere *coord, 128 const psProjection *projection); 129 130 psSphere *psProject(const psPlane *coord, 131 const psProjection *projection); 117 132 118 133 psSphere *psSphereGetOffset(const psSphere *restrict position1, … … 126 141 psSphereOffsetUnit unit); 127 142 128 typedef enum {129 PS_SPHERICAL;130 PS_LINEAR;131 } psSphereOffsetMode;132 143 133 typedef enum { 134 PS_ARCSEC; 135 PS_ARCMIN; 136 PS_DEGREE; 137 PS_RADIAN; 138 } psSphereOffsetUnit; 144 139 145 140 146 #endif -
trunk/psLib/src/astronomy/psCoord.c
r1285 r1287 10 10 * @author George Gusciora, MHPCC 11 11 * 12 * @version $Revision: 1. 1$ $Name: not supported by cvs2svn $13 * @date $Date: 2004-07-23 0 0:40:36$12 * @version $Revision: 1.2 $ $Name: not supported by cvs2svn $ 13 * @date $Date: 2004-07-23 03:13:39 $ 14 14 * 15 15 * Copyright 2004 Maui High Performance Computing Center, University of Hawaii … … 21 21 #include "psList.h" 22 22 #include "psCoord.h" 23 #include "psMemory.h" 23 24 24 25 … … 27 28 const psPlane *coords) 28 29 { 29 return(NULL); 30 if (out == NULL) { 31 out = (psPlane *) psAlloc(sizeof(psPlane)); 32 } 33 out->x = transform->x->coeff[0][0] + 34 (transform->x->coeff[1][0] * coords->x) + 35 (transform->x->coeff[0][1] * coords->y); 36 37 out->y = transform->y->coeff[0][0] + 38 (transform->y->coeff[1][0] * coords->x) + 39 (transform->y->coeff[0][1] * coords->y); 40 41 return(out); 30 42 } 31 43 … … 37 49 float term4) 38 50 { 39 return(NULL); 51 if (out == NULL) { 52 out = (psPlane *) psAlloc(sizeof(psPlane)); 53 } 54 55 out->x = transform->x->coeff[0][0][0][0] + 56 (transform->x->coeff[1][0][0][0] * coords->x) + 57 (transform->x->coeff[0][1][0][0] * coords->y) + 58 (transform->x->coeff[0][0][1][0] * term3) + 59 (transform->x->coeff[0][0][0][1] * term4); 60 61 out->y = transform->y->coeff[0][0][0][0] + 62 (transform->y->coeff[1][0][0][0] * coords->x) + 63 (transform->y->coeff[0][1][0][0] * coords->y) + 64 (transform->y->coeff[0][0][1][0] * term3) + 65 (transform->y->coeff[0][0][0][1] * term4); 66 67 return(out); 40 68 } 41 69 42 70 43 71 44 psSphereTransform *psSphereTransform (double NPlon,45 double NPlat;46 double ZP)72 psSphereTransform *psSphereTransformAlloc(double NPlon, 73 double NPlat, 74 double ZP) 47 75 { 48 return(NULL); 76 psSphereTransform *tmp = (psSphereTransform *) psAlloc(sizeof(psSphereTransform)); 77 78 tmp->sinNPlon = sin(NPlon); 79 tmp->cosNPlon = cos(NPlon); 80 tmp->sinNPlat = sin(NPlat); 81 tmp->cosNPlat = cos(NPlat); 82 tmp->sinZP = sin(ZP); 83 tmp->cosZP = cos(ZP); 84 85 return(tmp); 49 86 } 50 87 … … 52 89 void p_psSphereTransformFree(psSphereTransform *trans) 53 90 { 54 return(NULL);91 psFree(trans); 55 92 } 56 93 … … 68 105 psSphereTransform *psSphereTransformICRStoEcliptic(void) 69 106 { 107 // sla_EQECL(); 70 108 return(NULL); 71 109 } … … 73 111 psSphereTransform *psSphereTransformEcliptictoICRS(void) 74 112 { 113 // sla_ECLEQ(); 75 114 return(NULL); 76 115 } … … 78 117 psSphereTransform *psSphereTransformICRStoGalatic(void) 79 118 { 119 // sla_EQGAL(); 80 120 return(NULL); 81 121 } … … 83 123 psSphereTransform *psSphereTransformGalatictoICRS(void) 84 124 { 125 // sla_GALEQL(); 85 126 return(NULL); 86 127 } -
trunk/psLib/src/astronomy/psCoord.h
r1285 r1287 10 10 * @author George Gusciora, MHPCC 11 11 * 12 * @version $Revision: 1. 1$ $Name: not supported by cvs2svn $13 * @date $Date: 2004-07-23 0 0:40:36$12 * @version $Revision: 1.2 $ $Name: not supported by cvs2svn $ 13 * @date $Date: 2004-07-23 03:13:39 $ 14 14 * 15 15 * Copyright 2004 Maui High Performance Computing Center, University of Hawaii … … 24 24 #include "psList.h" 25 25 #include "psFunctions.h" 26 27 26 28 27 typedef struct … … 69 68 psSphereTransform; 70 69 71 psPlane *psPlaneTransformApply(psPlane *out, 72 const psPlaneTransform *transform, 73 const psPlane *coords); 74 75 psPlane *psPlaneDistortApply(psPlane *out, 76 const psPlaneDistort *transform, 77 const psPlane *coords, 78 float term3, 79 float term4); 80 81 82 psSphereTransform *psSphereTransform(double NPlon, 83 double NPlat; 84 double ZP); 85 86 void p_psSphereTransformFree(psSphereTransform *trans); 87 88 89 90 psSphere *psSphereTransformApply(psSphere *out, 91 const psSphereTransform *transform, 92 const psSphere *coord); 93 94 psSphereTransform *psSphereTransformICRStoEcliptic(void); 95 psSphereTransform *psSphereTransformEcliptictoICRS(void); 96 psSphereTransform *psSphereTransformICRStoGalatic(void); 97 psSphereTransform *psSphereTransformGalatictoICRS(void); 70 typedef enum { 71 PS_PROJ_TAN, ///< Tangent projection 72 PS_PROJ_SIN, ///< Sine projection 73 PS_PROJ_AIT, ///< Aitoff projection 74 PS_PROJ_PAR, ///< Par projection 75 PS_PROJ_GLS, ///< GLS projection 76 PS_PROJ_NTYPE ///< Number of types; must be last. 77 } psProjectionType; 98 78 99 79 typedef struct … … 108 88 109 89 typedef enum { 110 PS_PROJ_TAN, ///< Tangent projection 111 PS_PROJ_SIN, ///< Sine projection 112 PS_PROJ_AIT, ///< Aitoff projection 113 PS_PROJ_PAR, ///< Par projection 114 PS_PROJ_GLS, ///< GLS projection 115 PS_PROJ_NTYPE ///< Number of types; must be last. 116 } psProjectionType; 90 PS_SPHERICAL, 91 PS_LINEAR 92 } psSphereOffsetMode; 93 94 typedef enum { 95 PS_ARCSEC, 96 PS_ARCMIN, 97 PS_DEGREE, 98 PS_RADIAN 99 } psSphereOffsetUnit; 100 101 psPlane *psPlaneTransformApply(psPlane *out, 102 const psPlaneTransform *transform, 103 const psPlane *coords); 104 105 psPlane *psPlaneDistortApply(psPlane *out, 106 const psPlaneDistort *transform, 107 const psPlane *coords, 108 float term3, 109 float term4); 110 111 112 psSphereTransform *psSphereTransformAlloc(double NPlon, 113 double NPlat, 114 double ZP); 115 116 void p_psSphereTransformFree(psSphereTransform *trans); 117 118 psSphere *psSphereTransformApply(psSphere *out, 119 const psSphereTransform *transform, 120 const psSphere *coord); 121 122 psSphereTransform *psSphereTransformICRStoEcliptic(void); 123 psSphereTransform *psSphereTransformEcliptictoICRS(void); 124 psSphereTransform *psSphereTransformICRStoGalatic(void); 125 psSphereTransform *psSphereTransformGalatictoICRS(void); 126 127 psPlane *psProject(const psSphere *coord, 128 const psProjection *projection); 129 130 psSphere *psProject(const psPlane *coord, 131 const psProjection *projection); 117 132 118 133 psSphere *psSphereGetOffset(const psSphere *restrict position1, … … 126 141 psSphereOffsetUnit unit); 127 142 128 typedef enum {129 PS_SPHERICAL;130 PS_LINEAR;131 } psSphereOffsetMode;132 143 133 typedef enum { 134 PS_ARCSEC; 135 PS_ARCMIN; 136 PS_DEGREE; 137 PS_RADIAN; 138 } psSphereOffsetUnit; 144 139 145 140 146 #endif
Note:
See TracChangeset
for help on using the changeset viewer.
