#include "radixgeo/coordinate.hh" #include "radixmath/util.hh" namespace radix { Coordinate::Coordinate() : m_latitude(0.) , m_longitude(0.) , m_altitude(0.) { } Coordinate::Coordinate(double latitude, double longitude, double altitude) : m_latitude(latitude) , m_longitude(longitude) , m_altitude(altitude) { } double Coordinate::altitude() const { return m_altitude; } void Coordinate::setAltitude(double newAltitude) { m_altitude = newAltitude; } double Coordinate::distanceTo(const Coordinate &point) const { return greatCircleDistance(m_latitude, m_longitude, point.latitude(), point.longitude(), EARTH_RADIUS_MEAN); } double Coordinate::longitude() const { return m_longitude; } void Coordinate::setLongitude(double newLongitude) { m_longitude = newLongitude; } double Coordinate::latitude() const { return m_latitude; } void Coordinate::setLatitude(double newLatitude) { m_latitude = newLatitude; } } // namespace radix