Frage

Ich bin verantwortlich für ein Programm, das verwendet wird, eine Menge von Knoten und Wege für den Verzehr durch ein autonomes Landfahrzeug zu schaffen. Das Programm verfolgt die Standorte aller Elemente in seiner Karte durch die Position des Elements angibt, wie nördlich x Meter und mehr y Meter östlich von einem Ausgangspunkt von 0,0. In der realen Welt, kennt das Fahrzeug die Position des Ursprungs des lat und lange, wie es durch ein DGPS-System bestimmt und ist genau bis auf ein paar Zentimeter. Mein Programm ist nichts von irgendwelchen lat langen Koordinaten.

Es ist eines meiner Ziele, das Programm zu ändern Spur von lat langen coords der Elemente zusätzlich zu einem Ausgangspunkt und Gegenstände x, y-Position in Bezug auf diesen Ursprung zu halten. Auf dem ersten Blick scheint es, dass ich das Programm ändern, werde die lat langen coords des Ursprungs zu ermöglichen, in weitergegeben werden, und danach habe ich wünsche, dass das Programm die lat lange jedes Element zur Zeit in einer Karte automatisch berechnen. Von dem, was ich bisher erforscht habe, glaube ich, dass ich die Mathematik herauszufinden, hinter der Umstellung auf lat langen coords von einem UTM wie Projektion, wo ich die Ursprungspunkte angeben muß und Meridiane etc. im Gegensatz zu, was bereits für UTM definiert ist.

Ich bin gekommen, zu fragen, von Ihnen GIS Programmierer, bin ich auf dem richtigen Weg? Es scheint mir, wie es so viel diejenigen, um den Kopf zu wickeln, und ich bin nicht sicher, ob die Antwort nicht etwas so einfach ist wie, „oh ja Theres eine Umwandlung von Metern lang lat, hier“

Zur Zeit aufgrund der Art von DGPS, das System braucht wirklich nicht über Standorte mehr als oh kümmern, was ... 40 km? Radius vom Ursprung entfernt. Vor diesem Hintergrund und der Tatsache, dass ich sicherstellen müssen, dass der Fehler auf meine Koordinaten nicht größer als 0,5 Meter, muss ich etwas komplexer als eine einfache lat / long zu Meter Umwandlung konstant?

Ich bin knietief hier in Materialien. Ich konnte einige Hinweise über das, was Konzepte verwenden, um zu erforschen.

Dank viel!

War es hilfreich?

Lösung

Bei einem Startpunkt in lat / long und einen Abstand und Lager, um den Endpunkt zu finden, ist eine geodätische Berechnung. Es gibt eine große Zusammenfassung der geodätischen Berechnungen und Fehler auf der proj.4 Website . Sie kommen zu dem Schluss, dass ein kugelförmiges Modell Ergebnisse für Abstand zwischen den Punkten mit höchstens 0,51% Fehlern bekommen. Das, mit einer Formel kombiniert übersetzen zwischen WGS -84 und ECEF (siehe „LLA zu ECEF“ und „ECEF zu LLA“ Abschnitte, scheint, wie es Sie bekommt, was man braucht.

Wenn Sie wirklich wollen, um die Fehler von genagelt bekommen inverse Ihre flache Karte zu WGS-84 vorsteht, proj .4 ist ein Projektions Software-Paket. Es hat Quellcode, und kommt mit drei Befehlszeilen-Dienstprogramme - proj, das umwandelt nach / von kartographischer Projektion und kartesischen Daten; cs2cs, die zwischen verschiedenen kartographischen Projektionen umwandelt; und geod, die geodätischen Beziehungen berechnet.

Die USGS veröffentlicht eine sehr umfassende Behandlung von Kartenprojekt .

Andere Tipps

Ich würde tun, um eine Voll up-Berechnung, wenn Sie können. Auf diese Weise sind Sie immer so genau, wie Sie sein können.

Wenn Sie geschehen, C werden mit ++ die GDAL ist eine sehr gute Bibliothek.

Für einen Bereich von 40km, können Sie feststellen, dass die Welt in eine 2D flache Oberfläche annähert arbeiten kann, obwohl eine UTM der ideale Weg, zu verwandeln wäre zu gehen - in jedem Fall, würde ich befürworten die tatsächliche WGS84 Zusammenarbeit mit Koordinaten & Ellipsoid für Berechnungen wie Großkreisentfernung oder Berechnung Lager.

Wenn Sie sich langweilen, können Sie eine ähnliche Linie etwas nach unten gehen ich gearbeitet habe, die als Basisklasse für unterschiedliche Bezugspunkte wie OSGB36 oder WGS84 ...

verwendet werden können,
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top