17 #ifndef GZ_MATH_SPHERICALCOORDINATES_HH_
18 #define GZ_MATH_SPHERICALCOORDINATES_HH_
25 #include <gz/math/config.hh>
26 #include <gz/utils/ImplPtr.hh>
31 inline namespace GZ_MATH_VERSION_NAMESPACE {
89 const double _axisEquatorial,
90 const double _axisPolar);
101 const double _elevation,
155 public: GZ_DEPRECATED(7) static
double Distance(
171 public: static
double DistanceWGS84(
188 public:
double DistanceBetweenPoints(
200 public:
double SurfaceRadius() const;
204 public:
double SurfaceAxisEquatorial() const;
208 public:
double SurfaceAxisPolar() const;
212 public:
double SurfaceFlattening() const;
216 public:
gz::math::
Angle LatitudeReference() const;
220 public:
gz::math::
Angle LongitudeReference() const;
224 public:
double ElevationReference() const;
230 public:
gz::math::
Angle HeadingOffset() const;
241 public:
void SetSurface(
243 const
double _axisEquatorial,
244 const
double _axisPolar);
248 public:
void SetLatitudeReference(const
gz::math::
Angle &_angle);
252 public:
void SetLongitudeReference(const
gz::math::
Angle &_angle);
256 public:
void SetElevationReference(const
double _elevation);
260 public:
void SetHeadingOffset(const
gz::math::
Angle &_angle);
279 public:
void UpdateTransformationMatrix();
312 GZ_UTILS_IMPL_PTR(dataPtr)