Isis 3.0 Developer's Reference (API) |
Home |
00001 #ifndef PolarStereographic_h 00002 #define PolarStereographic_h 00003 00025 #include "Projection.h" 00026 #include "Constants.h" 00027 00028 namespace Isis { 00059 class PolarStereographic : public Isis::Projection { 00060 public: 00061 PolarStereographic(Isis::Pvl &label, bool allowDefaults = false); 00062 ~PolarStereographic(); 00063 bool SetGround(const double lat, const double lon); 00064 bool SetCoordinate(const double x, const double y); 00065 bool XYRange(double &minX, double &maxX, double &minY, double &maxY); 00066 00067 PvlGroup Mapping(); 00068 PvlGroup MappingLatitudes(); 00069 PvlGroup MappingLongitudes(); 00070 00076 std::string Name() const { 00077 return "PolarStereographic"; 00078 } 00079 00086 std::string Version() const { 00087 return "1.0"; 00088 } 00089 00090 bool operator== (const Isis::Projection &proj); 00091 00098 double TrueScaleLatitude() const { 00099 return p_centerLatitude * 180.0 / Isis::PI; 00100 }; 00101 00102 private: 00103 double p_centerLongitude; 00104 double p_centerLatitude; 00105 00106 double p_t; 00107 double p_m; 00108 double p_e4; 00109 double p_signFactor; 00110 double p_poleFlag; 00111 }; 00112 }; 00113 00114 #endif 00115