25#include <QtCore/QLoggingCategory>
26#include <QtGui/QVector3D>
27#include <QtPositioning/QGeoCoordinate>
45void convertGeoToNed(
const QGeoCoordinate &coord,
const QGeoCoordinate &origin,
double &x,
double &y,
double &z);
53void convertNedToGeo(
double x,
double y,
double z,
const QGeoCoordinate &origin, QGeoCoordinate &coord);
64QVector3D
convertGpsToEnu(
const QGeoCoordinate &coord,
const QGeoCoordinate &ref);
70QGeoCoordinate
convertEnuToGps(
const QVector3D &enu,
const QGeoCoordinate &ref);
108int convertGeoToUTM(
const QGeoCoordinate &coord,
double &easting,
double &northing);
117bool convertUTMToGeo(
double easting,
double northing,
int zone,
bool southhemi, QGeoCoordinate &coord);
143double geodesicDistance(
const QGeoCoordinate &from,
const QGeoCoordinate &to);
150double geodesicAzimuth(
const QGeoCoordinate &from,
const QGeoCoordinate &to);
157QGeoCoordinate
geodesicDestination(
const QGeoCoordinate &from,
double azimuth,
double distance);
166double pathLength(
const QList<QGeoCoordinate> &path);
172double polygonArea(
const QList<QGeoCoordinate> &polygon);
185QList<QGeoCoordinate>
interpolatePath(
const QGeoCoordinate &from,
const QGeoCoordinate &to,
int numPoints);
193QGeoCoordinate
interpolateAtDistance(
const QGeoCoordinate &from,
const QGeoCoordinate &to,
double distance);
Q_DECLARE_LOGGING_CATEGORY(AndroidSerialLog)
QList< QGeoCoordinate > interpolatePath(const QGeoCoordinate &from, const QGeoCoordinate &to, int numPoints)
QVector3D convertEcefToEnu(const QVector3D &ecef, const QGeoCoordinate &ref)
void convertGeoToNed(const QGeoCoordinate &coord, const QGeoCoordinate &origin, double &x, double &y, double &z)
double polygonPerimeter(const QList< QGeoCoordinate > &polygon)
double geodesicAzimuth(const QGeoCoordinate &from, const QGeoCoordinate &to)
QVector3D convertGeodeticToEcef(const QGeoCoordinate &coord)
QGeoCoordinate geodesicDestination(const QGeoCoordinate &from, double azimuth, double distance)
QGeoCoordinate convertEcefToGeodetic(const QVector3D &ecef)
QString convertGeoToMGRS(const QGeoCoordinate &coord)
double pathLength(const QList< QGeoCoordinate > &path)
double polygonArea(const QList< QGeoCoordinate > &polygon)
double geodesicDistance(const QGeoCoordinate &from, const QGeoCoordinate &to)
QVector3D convertEnuToEcef(const QVector3D &enu, const QGeoCoordinate &ref)
int convertGeoToUTM(const QGeoCoordinate &coord, double &easting, double &northing)
void convertNedToGeo(double x, double y, double z, const QGeoCoordinate &origin, QGeoCoordinate &coord)
QGeoCoordinate convertEnuToGps(const QVector3D &enu, const QGeoCoordinate &ref)
QVector3D convertGpsToEnu(const QGeoCoordinate &coord, const QGeoCoordinate &ref)
bool convertUTMToGeo(double easting, double northing, int zone, bool southhemi, QGeoCoordinate &coord)
QGeoCoordinate interpolateAtDistance(const QGeoCoordinate &from, const QGeoCoordinate &to, double distance)
bool convertMGRSToGeo(const QString &mgrs, QGeoCoordinate &coord)