Lat / Lon + Distanz + Richtung -> Lat / Lon
So: Ich habe die folgende Funktion, angepasst an eine online gefundene Formel, die zwei Lat / Lon-Koordinaten verwendet und die Entfernung zwischen ihnen in Meilen (entlang einer sphärischen Erde) ermittelt:
public static double distance (double lat1, double lon1, double lat2, double lon2) {
double theta = toRadians(lon1-lon2);
lat1 = toRadians(lat1);
lon1 = toRadians(lon1);
lat2 = toRadians(lat2);
lon2 = toRadians(lon2);
double dist = sin(lat1)*sin(lat2) + cos(lat1)*cos(lat2)*cos(theta);
dist = toDegrees(acos(dist)) * 60 * 1.1515 * 1.609344 * 1000;
return dist;
}
Soweit ich das beurteilen kann funktioniert das einwandfrei.
Was ich brauche, ist eine zweite Funktion, die unter Verwendung des exakt gleichen Modells der Erdgeometrie ein einzelnes Lat / Lon-Paar [A], einen Steuerkurs und eine Entfernung nimmt und ein neues Lat / Lon-Paar [B] ausgibt, z Wenn Sie an Punkt [A] angefangen und die angegebene Strecke in der angegebenen Richtung zurückgelegt hätten, wären Sie an Punkt [B] gelandet.
Hier kommt die Tatsache ins Spiel, dass meine geometrischen Fähigkeiten mich völlig verlassen haben:)
Jede Hilfe wäre sehr dankbar!
anke, -Dan