sbg_utm.h
Go to the documentation of this file.
1 
32 #ifndef SBG_UTM_H
33 #define SBG_UTM_H
34 
35 // STL headers
36 #include <array>
37 
38 namespace sbg
39 {
40 
44 class Utm final
45 {
46  public:
47 
48  //---------------------------------------------------------------------//
49  //- Constructor -//
50  //---------------------------------------------------------------------//
51 
55  Utm() = default;
56 
63  Utm(double latitude, double longitude);
64 
65  //---------------------------------------------------------------------//
66  //- Parameters -//
67  //---------------------------------------------------------------------//
68 
74  bool isInit() const;
75 
81  int getZoneNumber() const;
82 
88  double getMeridian() const;
89 
95  char getLetterDesignator() const;
96 
97  //---------------------------------------------------------------------//
98  //- Operations -//
99  //---------------------------------------------------------------------//
100 
107  void init(double latitude, double longitude);
108 
112  void clear();
113 
122  std::array<double, 2> computeEastingNorthing(double latitude, double longitude) const;
123 
124  private:
125 
133  static int computeZoneNumber(double latitude, double longitude);
134 
141  static char computeLetterDesignator(double latitude);
142 
148  double computeMeridian() const;
149 
150  bool is_init_ = false;
151  double meridian_{};
154 };
155 
156 }
157 
158 #endif // SBG_UTM_H
sbg::Utm::computeEastingNorthing
std::array< double, 2 > computeEastingNorthing(double latitude, double longitude) const
Definition: sbg_utm.cpp:65
sbg::Utm::letter_designator_
char letter_designator_
Definition: sbg_utm.h:153
sbg::Utm::zone_number_
int zone_number_
Definition: sbg_utm.h:152
sbg::Utm
Definition: sbg_utm.h:44
sbg::Utm::is_init_
bool is_init_
Definition: sbg_utm.h:150
sbg::Utm::computeLetterDesignator
static char computeLetterDesignator(double latitude)
Definition: sbg_utm.cpp:162
sbg::Utm::init
void init(double latitude, double longitude)
Definition: sbg_utm.cpp:46
sbg::Utm::computeZoneNumber
static int computeZoneNumber(double latitude, double longitude)
Definition: sbg_utm.cpp:121
sbg::Utm::computeMeridian
double computeMeridian() const
Definition: sbg_utm.cpp:254
sbg::Utm::clear
void clear()
Definition: sbg_utm.cpp:54
sbg::Utm::getMeridian
double getMeridian() const
Definition: sbg_utm.cpp:32
sbg::Utm::getZoneNumber
int getZoneNumber() const
Definition: sbg_utm.cpp:27
sbg::Utm::isInit
bool isInit() const
Definition: sbg_utm.cpp:22
sbg
Definition: config_applier.h:45
sbg::Utm::Utm
Utm()=default
sbg::Utm::meridian_
double meridian_
Definition: sbg_utm.h:151
sbg::Utm::getLetterDesignator
char getLetterDesignator() const
Definition: sbg_utm.cpp:37


sbg_driver
Author(s): SBG Systems
autogenerated on Fri Oct 11 2024 02:13:40