Contains math for Great Circle calculations. More...
#include <GreatCircleMath.hpp>
Public Member Functions | |
Geo | CalcPointOnGC (double angRatio, const Geo &geoStart, const Geo &geoEnd, bool bQuartDistOptimisation) |
Calculates a geographical point on a great circle. | |
Vect3 | CalcPointOnGCNumerical (double angRatio, const Vect3 &v1, const Vect3 &v2) |
Calculates an approximate geographical point on a great circle on its portion, smaller or equal than its quarter. | |
double | CalcDistBetweenPoints (const Geo &geoStart, const Geo &geoEnd) |
Calculates radial distance between two geographical locations. | |
Geo | CalcPointOnWholeGC (double angRatio, const Geo &geoStart) |
Calculates a geographical point on a great circle. |
Contains math for Great Circle calculations.
Calculates radial distance between two geographical locations.
Calculates radial distance between two geographical locations
geoStart | starting geographical position |
geoEnd | ending geographical position |
Geo GreatCircleMath::CalcPointOnGC | ( | double | angRatio, |
const Geo & | geoStart, | ||
const Geo & | geoEnd, | ||
bool | bQuartDistOptimisation | ||
) |
Calculates a geographical point on a great circle.
Calculates a geographical point on a great circle, given ratio (0,1) between starting and ending geographical locations. If the distance between them is equal to 90*, you can speed up the calculations by setting the last parameter to true
angRatio | angular ratio of position between the two defined points (0,1) |
geoStart | starting geographical position |
geoEnd | ending geographical position |
bQuartDistOptimisation | set it to true if distance between positions = 90*, which would speed up calculations |
Vect3 GreatCircleMath::CalcPointOnGCNumerical | ( | double | angRatio, |
const Vect3 & | v1, | ||
const Vect3 & | v2 | ||
) |
Calculates an approximate geographical point on a great circle on its portion, smaller or equal than its quarter.
Calculates an approximate geographical point on a great circle, given ratio (0,1) between starting and ending locations. The calculation is just a bit faster but approximate so should never be used for other calculations, but rather for displaying data. For getting the great circle data, it is wise to loop this method with angRatio being the control variable.
angRatio | angular ratio of position between the two defined points (0,1) |
v1 | starting position |
v2 | ending position. Usually it should be rotated 90* from v1, and not more |
Calculates a geographical point on a great circle.
Calculates a geographical point on a great circle, given ratio (0,1) of the whole distance of the circle
angRatio | angular ratio of position between the two defined points (0,1) |
geoStart | starting geographical position. Could consist of satellite's inclination and longitude of its most northern GC point |