00001 /* @file psEllipse.h 00002 * @brief functions to manipulate sparse matrices equations 00003 * 00004 * $Revision: 1.3 $ $Name: $ 00005 * $Date: 2007/01/23 22:47:23 $ 00006 * Copyright 2004-2005 Maui High Performance Computing Center, University of Hawaii 00007 */ 00008 00009 #ifndef PS_ELLIPSE_H 00010 #define PS_ELLIPSE_H 00011 00012 /// @addtogroup MathOps Mathematical Operations 00013 /// @{ 00014 00015 // strucures to define elliptical shape parameters 00016 typedef struct 00017 { 00018 double major; // Major axis 00019 double minor; // Minor axis 00020 double theta; // Position angle 00021 } 00022 psEllipseAxes; 00023 00024 typedef struct 00025 { 00026 double x2; // Moment of xx 00027 double y2; // Moment of yy 00028 double xy; // Moment of xy 00029 } 00030 psEllipseMoments; 00031 00032 typedef struct 00033 { 00034 double sx; // Shape parameter in x 00035 double sy; // Shape parameter in y 00036 double sxy; // Shape parameter in xy 00037 } 00038 psEllipseShape; 00039 00040 // conversions between elliptical shape representations 00041 psEllipseMoments psEllipseAxesToMoments(psEllipseAxes axes); 00042 psEllipseAxes psEllipseMomentsToAxes(psEllipseMoments moments, double maxAR); 00043 psEllipseShape psEllipseAxesToShape(psEllipseAxes axes); 00044 psEllipseAxes psEllipseShapeToAxes(psEllipseShape shape, double maxAR); 00045 00046 /// @} 00047 #endif
1.5.1