OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
ossimNewZealandMapGridProjection.h
Go to the documentation of this file.
1 //*******************************************************************
2 //
3 // License: See top level LICENSE.txt file.
4 //
5 // Author: Garrett Potts (gpotts@imagelinks.com)
6 //
7 // Description:
8 //
9 //*******************************************************************
10 // $Id: ossimNewZealandMapGridProjection.h 17815 2010-08-03 13:23:14Z dburken $
11 #ifndef ossimNewZealandMapGridProjection_HEADER
12 #define ossimNewZealandMapGridProjection_HEADER
13 
15 
16 
18 {
19 public:
22  virtual ossimObject* dup()const
23  {
24  return new ossimNewZealandMapGridProjection(*this);
25  }
26  virtual void update();
27 
28  virtual ossimGpt inverse(const ossimDpt &eastingNorthing)const;
29  virtual ossimDpt forward(const ossimGpt &latLon)const;
34  void setFalseEasting(double falseEasting);
35 
40  void setFalseNorthing(double falseNorthing);
41 
47  void setFalseEastingNorthing(double falseEasting, double falseNorthing);
48 
49  void setDefaults();
50 
51  double getFalseEasting()const{return NZMG_False_Easting;}
52  double getFalseNorthing()const{return NZMG_False_Northing;}
53 
58  virtual bool saveState(ossimKeywordlist& kwl,
59  const char* prefix=0)const;
60 
65  virtual bool loadState(const ossimKeywordlist& kwl,
66  const char* prefix=0);
67 protected:
68 
69  // these should be set to constant values that never change. The origin
70  // will be fixed and the false easting northings will also be fixed.
71  //
72  mutable double NZMG_Origin_Lat; /* Latitude of origin, in radians */
73  mutable double NZMG_Origin_Long; /* Longitude of origin, in radians */
74  mutable double NZMG_False_Northing; /* False northing, in meters */
75  mutable double NZMG_False_Easting; /* False easting, in meters */
76  mutable double NZMG_a;
77 /* Maximum variance for easting and northing values for International. */
78  mutable double NZMG_Max_Easting;
79  mutable double NZMG_Max_Northing;
80  mutable double NZMG_Min_Easting;
81  mutable double NZMG_Min_Northing;
82 
95  long Convert_Geodetic_To_NZMG (double Latitude,
96  double Longitude,
97  double *Easting,
98  double *Northing)const;
99 
100 
101 
114  long Convert_NZMG_To_Geodetic(double Easting,
115  double Northing,
116  double *Latitude,
117  double *Longitude)const;
118 
119 TYPE_DATA
120 };
121 #endif
virtual bool loadState(const ossimKeywordlist &kwl, const char *prefix=0)
Method to the load (recreate) the state of an object from a keyword list.
#define OSSIMDLLEXPORT
Represents serializable keyword/value map.
virtual ossimGpt inverse(const ossimDpt &projectedPoint) const =0
Will take a point in meters and convert it to ground.
#define TYPE_DATA
Definition: ossimRtti.h:339
virtual bool saveState(ossimKeywordlist &kwl, const char *prefix=0) const
Method to save the state of an object to a keyword list.
virtual ossimDpt forward(const ossimGpt &worldPoint) const =0
All map projections will convert the world coordinate to an easting northing (Meters).