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!