25 #ifndef DIGIKAM_GEODETIC_TOOLS_H
26 #define DIGIKAM_GEODETIC_TOOLS_H
51 return (deg * M_PI / 180.0);
56 return (M_PI / 180.0);
61 return (rad * 180.0 / M_PI);
66 return (180.0 / M_PI);
120 static Ellipsoid createEllipsoid(
const QString& name,
121 double semiMajorAxis,
122 double semiMinorAxis);
132 static Ellipsoid createFlattenedSphere(
const QString& name,
133 double semiMajorAxis,
134 double inverseFlattening);
142 double semiMajorAxis()
const;
150 double semiMinorAxis()
const;
157 double eccentricity()
const;
171 double inverseFlattening()
const;
183 bool isIvfDefinitive()
const;
192 bool isSphere()
const;
207 double orthodromicDistance(
double x1,
double y1,
double x2,
double y2);
215 double radiusOfCurvature(
double latitude);
233 double semiMajorAxis,
234 double semiMinorAxis,
235 double inverseFlattening,
321 void setStartingGeographicPoint(
double longitude,
double latitude);
333 void setDestinationGeographicPoint(
double longitude,
double latitude);
346 bool destinationGeographicPoint(
double* longitude,
double* latitude);
347 QPointF destinationGeographicPoint();
358 void setDirection(
double azimuth,
double distance);
383 double orthodromicDistance();
390 bool checkOrthodromicDistance();
396 bool computeDestinationPoint();
406 double meridianArcLength(
double latitude1,
double latitude2);
416 double meridianArcLengthRadians(
double P1,
double P2);
423 bool computeDirection();
427 double castToAngleRange(
const double alpha);
436 bool checkLatitude(
double* latitude);
445 bool checkLongitude(
double* longitude);
454 bool checkAzimuth(
double* azimuth);
462 bool checkOrthodromicDistance(
const double distance);
503 double A, B, C, D, E,
F;
512 double fo,
f, f2, f3, f4;
517 double T1, T2, T4, T6;
522 double a01, a02, a03, a21, a22, a23, a42, a43, a63;
Definition: geodetictools.h:81
bool m_ivfDefinitive
Definition: geodetictools.h:270
static Ellipsoid WGS84()
Definition: geodetictools.cpp:667
bool m_isSphere
Definition: geodetictools.h:272
double m_inverseFlattening
Definition: geodetictools.h:263
QString name
Definition: geodetictools.h:243
double m_semiMajorAxis
Definition: geodetictools.h:249
double m_semiMinorAxis
Definition: geodetictools.h:255
Definition: geodetictools.h:278
double TOLERANCE_0
Definition: geodetictools.h:468
double TOLERANCE_CHECK
Definition: geodetictools.h:473
double f
Definition: geodetictools.h:512
double m_maxOrthodromicDistance
Definition: geodetictools.h:498
double m_semiMinorAxis
Definition: geodetictools.h:488
bool m_directionValid
Definition: geodetictools.h:553
bool m_destinationValid
Definition: geodetictools.h:547
double A
Definition: geodetictools.h:503
double m_lat2
Definition: geodetictools.h:534
double m_lat1
Definition: geodetictools.h:528
double m_azimuth
Definition: geodetictools.h:541
Ellipsoid m_ellipsoid
Definition: geodetictools.h:478
double m_eccentricitySquared
Definition: geodetictools.h:493
double a01
Definition: geodetictools.h:522
double T1
Definition: geodetictools.h:517
double m_semiMajorAxis
Definition: geodetictools.h:483
double toDegrees(double rad)
Definition: geodetictools.h:59
double toRadians(double deg)
Converting between radians and degrees.
Definition: geodetictools.h:49
double toDegreesFactor()
Definition: geodetictools.h:64
double toRadiansFactor()
Definition: geodetictools.h:54
Definition: datefolderview.cpp:43