3 Stimmen

Konvertierung von Breiten-/Längenwerten (DMS+Kompass-Richtungsformat) in entsprechende Dezimalpunktwerte in Android

Ich arbeite an einem Java-Android-Projekt und habe das folgende Problem. Ich suchte so viel, aber immer noch habe ich das Problem der Konvertierung der Latitude/Longitude-Werte, die im DMS-Format (z. B.: 38°2'56''N, 122°9'28''W) für ihre entsprechenden Dezimal-Grad-Format sind.

Beispielwerte, die für ihr entsprechendes Dezimalgradformat umgewandelt werden müssen.

38°49'59''N, 26°56'59''E

38°2'56''N, 122°9'28''W

34°52'58''S, 56°10'58''W

Dankeschön

9voto

Glendon Trullinger Punkte 4032

Wenn Sie DMS in Dezimalgrade umrechnen, müssen Sie lediglich durch 60 dividieren. Teilen Sie S durch 60, addieren Sie es zu M, teilen Sie das Ergebnis durch 60 und addieren Sie es dann zu D.

Der zweite Teil befasst sich mit der Richtung, in die die Koordinaten zeigen. Stellen Sie sich ein Achsenpaar vor, bei dem die Himmelsrichtungen an den richtigen Stellen liegen (d. h. oben ist N, rechts ist E, unten ist S, links ist W). Das bedeutet, dass jeder dezimale Gradwert, der einem DMS-Wert entspricht, der entweder nach S oder nach W zeigt, negativ sein wird.

38°2'56''N, 122°9'28'' W -> 38.048889, -122.157778

3voto

Sherif elKhatib Punkte 45328

D°M'S''

  1. Teilen Sie S durch 60 und Sie erhalten X
  2. Finden Sie Y, indem Sie X zu M addieren
  3. Teilen Sie Y durch 60, um F zu erhalten.
  4. Antwort = D + F

ZUSAMMENFASSUNG

ZUM UMRECHNEN VON DMS IN GRAD

Grad = D + ((S/60)+M)/60

Dabei sind D und M und S die Werte, aus denen sich das DMS-Format zusammensetzt: D°M'S''

1voto

Jennifer S Punkte 1397

Und Sie können Ihre Arbeit jederzeit mit Sherifs Formel hier überprüfen: http://transition.fcc.gov/mb/audio/bickel/DDDMMSS-decimal.html

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X