Welche Arten von Liniensegmenten / Kanten erfordern eine hohe Genauigkeit in einer echten Oberfläche der Ellipsoiddarstellung?

8

Ich habe über eine 'projektionsfreie' geografische Codebasis mit Ihren grundlegenden Punkt-, Linien- und Polygonprimitiven nachgedacht (und Prototypcodierung durchgeführt).

Anstatt mich mit all den Opfern zu befassen, die mit der Projektion auf die Ebene einhergehen, schreibe ich Algorithmen, die direkt auf der Oberfläche des Ellipsoids funktionieren.

Eine der möglichen Komplikationen ist, dass es verschiedene Arten von "Linien" gibt:

  • (Bögen von) Großkreisen: kürzester Abstand entlang der Oberfläche (konstante Nullhöhe) zwischen zwei Punkten; sollte genau den Sichtlinienpfaden entsprechen.
  • Loxodrome: Verbinden Sie die beiden Punkte mit einem Pfad konstanter Richtung. Beispielsweise folgen einige Staatsgrenzen den Breitengraden (die keine großen Kreise sind).
  • Kurven: Kreisbögen (Pfade mit konstantem Abstand von einem bestimmten Mittelpunkt); Bezier (nicht sicher bei korrekter Neuinterpretation im Kontext einer gekrümmten Oberfläche) usw.

Welche der verschiedenen Arten von Pfaden (einschließlich der Pfade, die ich verpasst habe) sind wichtig genug, um eine "exakte" Darstellung zu haben, während sie innerhalb eines Fehlerbereichs durch kurze Segmente eines einfacheren Pfades (z. B. kurze geodätische Bogensegmente) dargestellt werden?

Klarstellungsänderungen: Mit "genau" oben meine ich parametrisch. Mit anderen Worten: Berechnbar mit jeder gewünschten Genauigkeit, ohne einen Verdichtungsschritt beim Import.

Eine Bearbeitung , viel später, um ein Zitat hinzuzufügen, auf das ich gestoßen bin, das meinen eigenen Gedanken über die Verwendung von 3D-Einheitsvektoren als geografisches Grundelement sehr nahe kommt: Eine nicht singuläre horizontale Positionsdarstellung ( alt link ). Bester Teil? Ich musste nicht alles selbst aufschreiben!

Dan S.
quelle
Wirklich genaue Darstellungen eines dieser Objekte auf einem Ellipsoid (das keine Kugel ist) sind nahezu unmöglich. Die Geodäten sind im Allgemeinen keine Teile großer Kreise mehr. die Loxodrome werden böse sein, egal was passiert; Geodätische Kreisbögen sind besonders unordentlich. Gibt es wirklich einen Grund dafür, der für jede Operation ein paar Größenordnungen zusätzliche Berechnungen wert ist?
whuber
Bei dieser Interpretation des Wortes ist nichts genau - wie wäre es stattdessen mit "parametrisch" als bessere Wortwahl? (Als Randnotiz: Wenn ich mich eher auf Sphäroide als auf allgemeine Ellipsoide beschränke, sind die parametrischen Darstellungen etwas weniger chaotisch.) Es ist jedoch wahr, dass viele dieser Dinge extrem chaotisch / schwierig bleiben - daher meine Frage! Ich bin nicht an einem System interessiert, das die vorhandene Datenqualität zerstört, aber ich habe nicht das Bedürfnis, Kurven darzustellen, die auch niemand verwendet.
Dan S.
Ich habe mit Großkreisliniensegmenten auf einem Sphäroid gearbeitet, das als Rotationspol (Punkt bei lat / long) mit einem Startwinkel und einem Endwinkel dargestellt wird. Ich fand es schwierig, die Mathematik zu visualisieren, mit der sie manipuliert wurden (Quaternionen). sciencedirect.com/…
Kirk Kuykendall
@Kirk: Eine einfachere Darstellung (Meinung hier!) Besteht darin, orthografische 3D-Koordinaten zu verwenden und die Start- / Endpunkte als Vektoren darzustellen. Sie verwenden immer noch Quaternionen (um Rotationen in 3D darzustellen), aber sie ' Es ist viel einfacher darüber nachzudenken.
Dan S.
@Dan - aber mit 3D-Koordinaten müssten Sie verdichten, um eine konstante Höhe aufrechtzuerhalten, nicht wahr?
Kirk Kuykendall

Antworten:

6

Die Frage betrifft, welche Arten von Kurven eher eine implizit genaue Darstellung als eine diskretisierte Annäherung verdienen. Der Kern der Sache ist folgender: Um erfolgreich zu sein, muss die Klasse von Kurven, die Sie auf diese Weise unterstützen, unter der Klasse von Kurven- und Polygonerstellungsoperationen geschlossen werden, die im GIS unterstützt werden.

Diese Operationen umfassen:

  • Pufferung. In diesem Prozess müssen Sie Kurven erstellen, die parallel zu Features sind. ("Parallel" bedeutet im Sinne der Einhaltung eines festen Abstands.) Dies umfasst Kreise und Teile davon (zum Puffern von Punkten), schräge Parallelen (Kurven, die äquidistant zur Geodäten auf dem Sphäroid sind und in besonderen Fällen auf isolierte Punkte reduziert werden können). und konzentrische Kreise. Auf der Kugel (aber im Allgemeinen nicht auf einem Ellipsoid) sind die schrägen Parallelen selbst Kreise.

  • Einflusspolygone (Thiessen-Polygone; Voronoi-Polygone; Dirichlet-Zellen). Um die Thiessen-Polygone für eine Sammlung von Punktmerkmalen zu konstruieren, müssen wir halbierende Linien finden, die Geodäten sind (sie sind gerade). Für eine Sammlung anderer Arten von Merkmalen wie Punkte und Segmente umfassen die Grenzen der Thiessen-Polygone Teile von Parabeln (in der Ebene). Vielleicht möchten Sie das nicht unterstützen ...

  • Mengen-theoretische Überlagerungen (Schnittmenge, Vereinigung, Differenz, Komplement). Diese Operationen erzeugen keine neuen Arten von Kurven.

  • Parallele Translation und Rotation . Diese können normalerweise nicht exakt auf einem Ellipsoid ausgeführt werden (da es sich nicht um einen homogenen Raum handelt ), sind jedoch auf der Kugel unkompliziert. Auf der Kugel erzeugen diese Operationen keine neuen Arten von Kurven.

Die wirklich problematische Klasse von Kurven, die Sie vorschlagen, besteht aus den allgemeinen Loxodromen (Loxodromen). Breitengradlinien sind Loxodrome, aber (zumindest auf der Kugel) auch Kreise, sodass sie kein zusätzliches Problem darstellen. Aber allgemeine Loxodrome sind komplizierte Tiere: Wenn sie keine Meridiane oder Parallelen sind, drehen sie sich in den einen oder anderen Pol. Puffer und parallele Übersetzungen von Loxodromen sind wirklich neue Arten von Kurven. Sie müssten diese Ergebnisse als unterbrochene Segmente von Linien und Kreisen darstellen, was Ihren Zweck zunichte machen würde (und ziemlich schwer zu berechnen wäre). Daher schlage ich vor, nicht genau zu versuchen, Loxodrome zu unterstützen.

Insgesamt sieht es so aus, als könnten Sie in Ihrem Programm erfolgreich sein, wenn Sie (a) an einem sphärischen Modell der Erde arbeiten und nicht an dem allgemeineren ellipsoiden ("sphäroidalen") Modell, und (b) Sie bestimmte Konstruktionen wie Thiessen-Polygone einschränken (und Mittelachsen, die eng miteinander verbunden sind) zu Punktsammlungen.

whuber
quelle
Ich mag diese Art, darüber nachzudenken. Ein paar zufällige Gedanken in folgenden Kommentaren ...
Dan S.
Nit: Die Pufferung ist ein fester Abstand, nicht parallel (außer bei unendlichen Linien).
Dan S.
In der Ebene haben Einflussbereiche für geradlinige Merkmale geradlinige und konische Kurven in ihren Rändern - aber ich bezweifle, dass sie geschlossen sind. Ich habe eigentlich keine Ahnung, welche Kurven die Einflussgrenze für (Kegelschnitt-) gekrümmte Merkmale selbst bilden; Vielleicht werden einige gründliche Überlegungen / Forschungen zeigen, dass es sich auch um Kegelschnitte handelt, aber ich bin skeptisch. Eine generelle Schließung im Rahmen dieser Operation erscheint sehr unwahrscheinlich.
Dan S.
Mengen-theoretische Operationen: Planare GIS-Systeme werden normalerweise nicht unter Mengen-Komplement geschlossen, da sie ein Polygon mit unendlich großer Größe erzeugen. Kugel / Sphäroid / Ellipsoid kann es besser machen. Beachten Sie, dass Schnittpunkte manchmal nicht (oder nur schwer) für viele Kurventypen dargestellt werden können, selbst in der Ebene.
Dan S.
Translation / Rotation: Affine Transformationen sind möglich auf der Ebene, obwohl es auch andere nicht-affine möglich verwandeln , die tatsächlich machen könnten mehr Sinn , indem sie speziell nicht-affine machen. ZB: "Bewegen Sie jeden Punkt genau um 150 Meter nach Norden" ist oft das, was mit einer einfachen Übersetzung in vielen Projektionen gemeint ist, aber natürlich führen die Verzerrungen der Projektion dazu, dass die Absicht leicht untergraben wird ...
Dan S.
4

Dan,

Vielleicht interessieren Sie sich für einige meiner Arbeiten zur Geodäsie. Dies ist in diesem Preprint beschrieben . Beachten Sie insbesondere:

  • Die direkten und inversen geodätischen Probleme können maschinengenau gelöst werden. Dies bedeutet etwa 15 nm für doppelte Genauigkeit. Ich kann zu langen Doppelbetten wechseln, einen zusätzlichen Begriff in die Serie aufnehmen und eine Genauigkeit von 18 Uhr erhalten. Beachten Sie insbesondere, dass die Lösung des inversen Problems immer konvergiert (im Gegensatz zu Vincentys Methode). Die Geschwindigkeit ist vergleichbar mit der von Vincenty (direkte Lösung ist etwas schneller, die inverse Lösung ist etwas langsamer).

  • Ich berechne die reduzierte Länge und die geodätischen Skalen. Diese Größen geben die unterschiedlichen Eigenschaften der Geodäten an und ermöglichen die schnelle und genaue Lösung verschiedener geodätischer Probleme (Schnittpunkte, Mittellinien usw.) mit der Newtonschen Methode. Die Krümmung der Grenzen von Pufferbereichen kann in Form dieser Größen ausgedrückt werden. Siehe diesen Hinweis , den ich an die proj.4-Mailingliste gesendet habe.

  • Ich definiere eine ellipsoidale gnomonische Projektion, bei der die Geodäten nahezu gerade sind. Dadurch können Probleme auf der Oberfläche des Ellipsoids auf Probleme in der Ebenengeometrie abgebildet werden. Zum Beispiel kann der Schnittpunkt zweier Geodäten genau gefunden werden, indem ein Schnittpunkt geschätzt, eine gnomonische Projektion über diesen Punkt durchgeführt, der Schnittpunkt neu geschätzt und iteriert wird.

  • Ich gebe Ausdrücke für den Bereich eines geodätischen Polygons. Es ist nicht erforderlich, lange Kanten zu unterteilen, um ein genaues Ergebnis zu erhalten.

  • GeographicLib (on sourceforge) implementiert die Algorithmen.

  • Schließlich stelle ich fest, dass Geodäten für viele Zwecke jeder anderen Art von Kurve (insbesondere großen Ellipsen oder Loxodromen) vorzuziehen sind, da sie der Dreiecksungleichung gehorchen. Dies hat mehrere Konsequenzen:

    • Geodäten und geodätische Kreise schneiden sich rechtwinklig.
    • Die kürzeste XXX-Linie zwischen einem Punkt P und einer beliebigen Kurve C schneidet C nur dann im rechten Winkel, wenn XXX = geodätisch ist.
    • Geodäten sind eine natürliche Methode zum Partitionieren von Daten mithilfe eines Quadtrees, da Grenzen für den Entfernungsbereich zwischen einem beliebigen Punkt und allen Punkten innerhalb eines Quadknotens festgelegt werden können.
cffk
quelle
Vielen Dank, dass Sie diese Ideen geteilt haben. Es ist ein sehr schönes Papier, das großartige Arbeit enthält. Willkommen auf unserer Webseite! Einige Bemerkungen und Fragen folgen. (1) In welchem ​​Sinne schneiden sich "Geodäten und geodätische Kreise rechtwinklig"? Sie müssen einige Einschränkungen beachten, da dies im Allgemeinen nicht der Fall ist. (2) Die euklidischen 3D-Abstände, auf die sich @Dan bezieht, erfüllen auch die Dreiecksungleichung.
whuber
(1) Betrachten Sie alle Geodäten, die von einem Punkt A ausgehen. Dies definiert eine Kurvenfamilie. Betrachten Sie als nächstes alle geodätischen Kreise, die bei A zentriert sind. Dies definiert eine zweite Kurvenfamilie. Aufgrund der Dreiecksungleichheit sind diese beiden Familien orthogonal. Dies ergibt eine der grundlegenden Eigenschaften der azimutalen äquidistanten Projektion. (2) Ja, du hast natürlich Recht. Wenn Sie sich gründlich mit der Welt der Geometrie von Oberflächen beschäftigen, werden Sie von der Idee zurückgeworfen, welche Eigenschaften davon abhängen, wie die Oberfläche in den 3D-Raum eingebettet ist. (Siehe Gauß '"Bemerkenswerter Satz".)
cffk
Tatsächlich ist (1) allgemeiner: In jeder Riemannschen Mannigfaltigkeit muss eine Geodät von einem Punkt P außerhalb einer glatten Kurve c zu einem Punkt auf c , der den Abstand zwischen P und c minimiert , orthogonal zu c sein . Ihre Aussage zu "geodätischen Kreisen" folgt unmittelbar (vorausgesetzt, P ist das Zentrum: das ist die zuvor nicht angegebene Einschränkung). Ich stimme dem nach (2) geäußerten Gefühl zu, aber wir müssen uns daran erinnern, dass das Ziel hier darin besteht, genaue, effiziente Berechnungen durchzuführen, anstatt die intrinsischen Eigenschaften der Oberfläche zu untersuchen. Eine gut gewählte Einbettung könnte dies erleichtern.
whuber
Ein verspäteter Dank für diese Antwort. :) Ich bin im Moment zu unter Wasser, um mehr als nur zu überfliegen, aber es scheint eine fantastische Fundgrube zu sein. Ein kurzer Hinweis zu geodätischen Schnittpunkten, seit Sie sie aufgerufen haben - hauptsächlich, damit Sie meine eigene unterkaffinierte Intuition überprüfen können: Genaue Schnittpunkte der sphärischen Geodäten können leicht gefunden werden, indem Sie die Ebenen der entsprechenden Großkreise schneiden, und dieses Ergebnis trägt über Ellipsoide mit einer Hilfskugel - oder fehlt mir dort etwas?
Dan S.
@ Dan Ich habe eine Antwort auf Ihre Frage verfasst. Aber es scheint, dass Kommentare in der Länge begrenzt sind. Sehen Sie sich stattdessen die nächste Antwort an.
cffk
2

Dies ist die Antwort auf @ Dans Frage nach der Verwendung der Hilfskugel zur Lösung von Schnittproblemen.

Nein, mit der Hilfskugel können Sie nicht direkt nach Kreuzungen suchen. Das Problem ist, dass die Abbildung vom Ellipsoid zur Kugel von der Geodät abhängt (z. B. ihrem Azimut am Äquator). Somit ist die Hilfskugel gut für die Lösung einer einzelnen Geodät, aber nicht für die Lösung von Problemen, die mehr als eine Geodät betreffen.

Meine empfohlene Methode für geodätische Schnittpunkte und Interceptions (kürzester Weg zwischen einem Punkt und einer geodätischen) ist die Verwendung der gnomonischen Projektion. Geodäten auf einer Kugelkarte auf gerade Linien in der gnomonischen Projektion. Sofern Ihr Problem auf eine Halbkugel beschränkt ist, konvertiert die gnomonische Projektion diese Probleme in zweidimensionale.

Es gibt keine Projektion, die die Geradheit der Geodäten für ein Ellipsoid bewahrt (weil seine Krümmung nicht konstant ist). GeographicLib bietet jedoch eine Verallgemeinerung der gnomonischen Projektion, bei der die Geodäten nahezu gerade sind. Dies führt zu schnell konvergierenden Algorithmen für geodätische Schnittpunkte und Interceptions (wiederum vorausgesetzt, die Punkte befinden sich alle gut innerhalb einer Hemisphäre). Siehe meine Antworten (mit Code!) Auf gpesquero unter

https://sourceforge.net/projects/geographiclib/forums/forum/1026621/topic/4085561

Abschließend möchte ich darauf hinweisen, dass ich kürzlich die geodätischen Routinen von GeographicLib in Javascript konvertiert habe, damit Sie in Google Maps damit herumspielen können. Sehen

http://geographiclib.sourceforge.net/scripts/geod-google.html

http://geographiclib.sourceforge.net/scripts/geod-calc.html

(Ich habe die gnomonische Projektion noch nicht in Javascript konvertiert. Das wäre ziemlich einfach. Gleichzeitig würde ich auch die azimutale äquidistante Projektion konvertieren, da dies eine bequeme Möglichkeit ist, eine andere Klasse geodätischer Probleme mit "Medianlinien" zu lösen. .)

ADDENDUM (19.08.2014)

Es ist auch möglich, die Zeit der nächsten Annäherung für zwei Schiffe zu ermitteln, die mit konstanter Geschwindigkeit entlang der Geodäten fahren. Da wir die unterschiedlichen Eigenschaften der Geodäten kennen, ist es möglich, die Newtonsche Methode zu verwenden, um in wenigen Iterationen eine genaue Lösung zu erhalten. Der Code zur Implementierung ist unter veröffentlicht

https://sourceforge.net/p/geographiclib/discussion/1026620/thread/33ce09e0

cffk
quelle
Ich bin mir ziemlich sicher, dass ich nicht auf dem richtigen Weg bin, aber nicht sicher, wo; Ich würde es lieben, wenn Sie mir helfen könnten, meine Argumentation zu debuggen. (Nächster Kommentar.) Ansonsten: Danke an einen Haufen für den hilfreichen Code + Kommentar + Link; es ist enorm nützlich.
Dan S.
Hier geht es so kurz ich konnte. Meine Argumentation wird in kartesischen 3D-Koordinaten ausgedrückt, nicht in Winkelkoordinaten: (a) Auf einer Kugel sind alle Punkte in einem Großkreis koplanar. (b) Die Transformation zur Hilfskugel ist linear und invertierbar. (Falsches Denken?) (C) Alle Punkte in einer elliptischen geodätischen Transformation in Punkte entlang eines großen Kreises auf dem Aux. Kugel. (d) Alle Punkte auf einer elliptischen Geodät sind aufgrund von (b) ebenfalls koplanar. Schließlich (e): Aufgrund der Koplanarität können zwei mögliche geodätische Schnittpunkte auf dem Ellipsoid durch ebenen Schnitt gefunden werden.
Dan S.
1
@Dan, Eine ellipsoidale Geodät liegt nicht in einer Ebene. (Wenn dies der Fall wäre, müsste es sich um eine ebene Kurve handeln. Wir wissen jedoch, dass die Geodät im Allgemeinen auf jedem Erdkreis um einen Betrag O (f) unterschritten wird.) Der Fehler in Ihrer Argumentation ist (b ) - die Verbindung zwischen dem Aux. Kugel und das Ellipsoid ist nicht linear. Die Breitengradtransformation entspricht einer Dehnung in z-Richtung und ist daher linear. Die Längengrade sind jedoch durch ein elliptisches Integral verbunden, und dies verhindert, dass es eine einfache lineare Beziehung gibt.
cffk