¿Qué tipos de segmentos / aristas de línea requieren una alta precisión en una verdadera representación de la superficie del elipsoide?

8

He estado reflexionando (y haciendo codificación de prototipo) para una base de código geográfico 'sin proyección' con sus primitivas básicas de punto, línea y polígono.

Sin embargo, en lugar de lidiar con todos los sacrificios que conlleva la proyección al plano, estoy escribiendo algoritmos que funcionan directamente en la superficie del elipsoide.

Una de las posibles complicaciones es que existen diferentes tipos de "líneas":

  • (arcos de) círculos grandes: la distancia más corta a lo largo de la superficie (elevación cero constante) entre dos puntos; debe corresponder exactamente a las rutas de la línea de visión.
  • Líneas de rumbo: conecta los dos puntos con un camino de dirección constante; por ejemplo, algunas fronteras estatales siguen líneas de latitud (que no son grandes círculos).
  • curvas: arcos circulares (caminos de distancia constante desde un punto central dado); Bezier (no estoy seguro de una correcta reinterpretación en el contexto de una superficie curva), etc.

¿De los diferentes tipos de rutas (incluidas las que me perdí), que son lo suficientemente importantes como para tener una representación "exacta", frente a la representación dentro de los límites de error por segmentos cortos de una ruta más simple (por ejemplo, segmentos de arco geodésico cortos)?

Ediciones de aclaración: por "exacto" arriba, quiero decir paramétrico. En otras palabras: computable a cualquier precisión deseada, sin un paso de densificación en la importación.

Una edición , mucho más tarde, para agregar una cita que he encontrado que es muy similar a mis propios pensamientos sobre el uso de vectores de unidades 3D como primitivo geográfico: una representación de posición horizontal no singular ( enlace alternativo ). ¿Mejor parte? ¡No tuve que escribirlo todo yo mismo!

Dan S.
fuente
Las representaciones verdaderamente exactas de cualquiera de estos objetos en cualquier elipsoide (que no es una esfera) es casi imposible. Las geodésicas ya no son porciones de grandes círculos en general; las líneas de rumbo serán desagradables pase lo que pase; los arcos circulares geodésicos serán particularmente desordenados. ¿Realmente hay algún punto para hacer esto que valga un par de órdenes de magnitud de cómputo adicional para cada operación?
whuber
Nada es exacto con esa interpretación de la palabra. ¿Qué tal "paramétrico" como una mejor opción de palabra? (Además, como nota al margen: si me limito a los esferoides en lugar de a los elipsoides generales, las representaciones paramétricas son algo menos desordenadas). Sin embargo, es cierto que muchas de esas cosas siguen siendo extremadamente desordenadas / difíciles, ¡de ahí mi pregunta! No estoy interesado en un sistema que destruya la calidad de los datos existentes, pero tampoco siento la necesidad de representar curvas que nadie esté usando.
Dan S.
He trabajado con grandes segmentos de línea circular en un esferoide representado como un polo de rotación (punto en lat / long) con un ángulo inicial y un ángulo final. Me resultó difícil visualizar las matemáticas utilizadas para manipularlos (cuaterniones). sciencedirect.com/…
Kirk Kuykendall
@Kirk: Una representación más fácil de trabajar (¡opinión aquí!) Es usar coordenadas ortográficas en 3D y representar los puntos de inicio / finalización como vectores; todavía está usando cuaterniones (para representar rotaciones en 3D) pero ' son mucho más fáciles de pensar.
Dan S.
@Dan, pero con las coordenadas 3D, necesitarías densificarte para mantener una elevación constante, ¿no?
Kirk Kuykendall

Respuestas:

6

La pregunta se refiere a qué tipos de curvas merecen una representación implícitamente exacta en lugar de una aproximación discreta. El quid de la cuestión es este: para tener éxito, la clase de curvas que admite de esta manera debe cerrarse bajo la clase de operaciones de creación de curvas y polígonos admitidas en el SIG.

Estas operaciones incluyen:

  • Buffering. En este proceso, debe construir curvas paralelas a las entidades. ("Paralelo" significa en el sentido de mantener una distancia fija). Esto incluye círculos y porciones de los mismos (para puntos de amortiguación), paralelos oblicuos (que son curvas equidistantes a las geodésicas en el esferoide, y pueden reducirse a puntos aislados en casos especiales) y círculos concéntricos. En la esfera (pero no, generalmente, en un elipsoide), los paralelos oblicuos son en sí mismos círculos.

  • Polígonos de influencia (polígonos de Thiessen; polígonos de Voronoi; células de Dirichlet). Para construir los polígonos de Thiessen para una colección de entidades de puntos, necesitamos encontrar líneas bisectantes, que son geodésicas (son rectas); pero para una colección de otros tipos de características, como puntos y segmentos, los límites de los polígonos de Thiessen incluyen porciones de parábolas (en el plano). Tal vez no quieras apoyar esto ...

  • Superposiciones teóricas de conjuntos (intersección, unión, diferencia, complemento). Estas operaciones no crean nuevos tipos de curvas.

  • Traslación paralela y rotación . Por lo general, no es posible realizarlas exactamente en un elipsoide (porque no es un espacio homogéneo ), pero son sencillas en la esfera. En la esfera, estas operaciones no crean nuevos tipos de curvas.

La clase de curvas realmente problemática que propone consiste en las líneas generales de rumbo (loxodromos). Las líneas de latitud son líneas de rumbo pero (al menos en la esfera) también son círculos, por lo que no presentan ningún problema adicional. Pero las líneas generales de rumbo son bestias complicadas: si no son meridianos o paralelos, se enrollan en espiral en un polo u otro. Los buffers y las traducciones paralelas de líneas de rumbo serán tipos de curvas realmente nuevos. Tendría que representar estos resultados como segmentos rotos de líneas y círculos, lo que frustraría su propósito (y sería bastante difícil de calcular). Por lo tanto, sugiero no tratar de soportar exactamente las líneas de rumbo.

En resumen, parece que puede tener éxito en su programa si (a) trabaja en un modelo esférico de la tierra en lugar del modelo elipsoidal ("esferoidal") más general y (b) limita ciertas construcciones como los polígonos de Thiessen (y ejes mediales, que están estrechamente relacionados) con colecciones de puntos.

whuber
fuente
Realmente me gusta esta forma de pensar al respecto. Algunos pensamientos al azar en los siguientes comentarios ...
Dan S.
Nit: El almacenamiento en búfer es de distancia fija, no paralela (excepto para líneas infinitas).
Dan S.
En el plano, las áreas de influencia para las características de lados rectos tienen curvas de línea recta y de sección cónica en sus bordes, pero dudo que esté cerrado. En realidad, no tengo idea de qué curvas forman el límite de influencia para las características curvas (sección cónica); Tal vez un poco de pensamiento / investigación profunda revelará que también son secciones cónicas, pero soy escéptico. Estar cerrado en general bajo estas operaciones parece muy poco probable.
Dan S.
Operaciones de teoría de conjuntos: los sistemas SIG planos generalmente no se cierran bajo el complemento de conjunto, ya que crea un polígono de tamaño infinito; Esfera / Esferoide / Elipsoide puede hacerlo mejor. Tenga en cuenta que, a veces, los puntos de intersección no pueden (o son difíciles) de representar para muchos tipos de curvas, incluso en el plano.
Dan S.
Traducción / rotación: las transformaciones afines son posibles en el plano, aunque hay otras transformaciones no afines posibles que en realidad podrían tener más sentido al hacerlas específicamente no afines. Por ejemplo: "mover cada punto hacia el norte 150 metros" es a menudo lo que se entiende por una traducción simple en muchas proyecciones, pero, por supuesto, las distorsiones de la proyección significan que la intención está ligeramente socavada ...
Dan S.
4

Dan

Quizás te interese parte del trabajo que he estado haciendo sobre geodésicas. Esto se describe en este preprint . En particular, tenga en cuenta:

  • Los problemas geodésicos directos e inversos pueden resolverse con precisión de máquina. Esto significa unos 15 nm para doble precisión. Puedo cambiar a dobles largos, agregar un término adicional en la serie y obtener una precisión de 6 pm. Tenga en cuenta, en particular, que la solución al problema inverso siempre converge (a diferencia del método de Vincenty). La velocidad es comparable al método de Vincenty (la solución directa es algo más rápida, la solución inversa es algo más lenta).

  • Calculo la longitud reducida y las escalas geodésicas. Estas cantidades dan las propiedades diferenciales de la geodésica y permiten resolver varios problemas geodésicos (intersecciones, líneas medias, etc.) de manera rápida y precisa utilizando el método de Newton. La curvatura de los límites de las regiones de amortiguación se puede expresar en términos de estas cantidades. Vea esta nota que envié a la lista de correo del proyecto 4.

  • Defino una proyección gnomónica elipsoidal en la que las geodésicas son casi rectas. Esto permite que los problemas en la superficie del elipsoide se asignen a problemas en la geometría plana. Por ejemplo, la intersección de dos geodésicas se puede encontrar exactamente estimando un punto de intersección, realizando una proyección gnomónica sobre ese punto, volviendo a estimar la intersección e iterando.

  • Doy expresiones para el área de un polígono geodésico. No es necesario subdividir los bordes largos para obtener un resultado preciso.

  • GeographicLib (en sourceforge) implementa los algoritmos.

  • Finalmente, observo que, para muchos propósitos, la geodésica es preferible a cualquier otro tipo de curva (en particular, grandes elipses o líneas de rumbo) porque obedecen a la desigualdad del triángulo. Esto tiene varias consecuencias:

    • Los círculos geodésicos y geodésicos se cruzan en ángulo recto.
    • La línea XXX más corta entre un punto P y una curva arbitraria C se cruza con C en ángulo recto solo si XXX = geodésico.
    • La geodésica es una forma natural de particionar datos usando un árbol cuádruple porque los límites se pueden colocar en el rango de distancias entre un punto arbitrario y todos los puntos dentro de un cuadnodo.
cffk
fuente
Gracias por compartir estas ideas; Es un papel muy bonito que contiene un gran trabajo. ¡Bienvenido a nuestro sitio! Algunas observaciones y preguntas siguen. (1) ¿En qué sentido las "geodésicas y los círculos geodésicos se cruzan en ángulo recto"? Debe tener alguna restricción en mente porque esto generalmente no es cierto. (2) Las distancias euclidianas 3D a las que @Dan se refiere también satisfarán la desigualdad del triángulo.
whuber
(1) Considere todas las geodésicas que emanan de un punto A; Esto define una familia de curvas. Considere a continuación todos los círculos geodésicos centrados en A; Esto define una segunda familia de curvas. Debido a la desigualdad del triángulo, estas dos familias son ortogonales. Esto proporciona una de las propiedades básicas de la proyección equidistante azimutal. (2) Sí, tienes razón, por supuesto. Si está completamente en el mundo de la geometría de las superficies, retrocede ante la idea de cualquier propiedad que dependa de cómo se incrusta la superficie en el espacio 3d. (Ver "Teorema notable" de Gauss.)
cffk
En realidad (1) es más general: en cualquier múltiple riemanniano, una geodésica desde un punto P fuera de una curva suave c hasta un punto en c que minimiza la distancia entre P y c debe ser ortogonal a c . Su declaración sobre "círculos geodésicos" sigue inmediatamente (siempre que P sea ​​el centro: esa es la restricción previamente no establecida). Estoy de acuerdo con el sentimiento expresado después de (2), pero debemos recordar que el objetivo aquí es realizar cálculos eficientes y precisos, en lugar de investigar las propiedades intrínsecas de la superficie. Una inclusión bien elegida podría facilitar eso.
whuber
Un agradecimiento tardío por esta respuesta. :) Estoy demasiado bajo el agua para hacer algo más que descremada en este momento, pero parece ser un tesoro bastante fantástico. Una nota rápida sobre las intersecciones geodésicas desde que las llamó, principalmente para que las revise como una comprobación de mi propia intuición descafeinada: las intersecciones exactas de la geodésica esférica se pueden encontrar fácilmente intersectando los planos de los grandes círculos correspondientes, y ese resultado lleva a los elipsoides usando una esfera auxiliar, ¿o me estoy perdiendo algo allí?
Dan S.
@ Dan, escribí una respuesta a tu pregunta. Pero parece que los comentarios tienen límites de longitud. Entonces vea la siguiente respuesta en su lugar.
cffk
2

Esta es la respuesta a la pregunta de @ Dan sobre el uso de la esfera auxiliar para resolver problemas de intersección.

No, la esfera auxiliar no te permite resolver las intersecciones directamente. El problema es que el mapeo desde el elipsoide a la esfera depende de la geodésica (por ejemplo, su acimut en el ecuador). Por lo tanto, la esfera auxiliar es buena para resolver una única geodésica pero no para resolver ningún problema que implique más de una geodésica.

Mi forma recomendada de hacer intersecciones e intercepciones geodésicas (la ruta más corta entre un punto y una geodésica) es usar la proyección gnomónica. La geodésica en un mapa de esfera a líneas rectas en la proyección gnomónica y, por lo tanto, siempre que su problema se limite a un hemisferio, la proyección gnomónica convierte estos problemas en 2d.

No hay proyección que preserve la rectitud de las geodésicas para un elipsoide (porque su curvatura no es constante). Sin embargo, GeographicLib proporciona una generalización de la proyección gnomónica en la que las geodésicas son casi rectas. Esto conduce a algoritmos que convergen rápidamente para la intersección e intercepciones geodésicas (una vez más, siempre que los puntos estén bien dentro del hemisferio). Vea mis respuestas (¡con código!) A gpesquero en

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

Finalmente, me gustaría señalar que recientemente he convertido las rutinas geodésicas de GeographicLib a Javascript, para que pueda jugar con ellas en Google Maps. Ver

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

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

(Todavía no convertí la proyección gnomónica a Javascript. Eso sería razonablemente sencillo. También convertiría la proyección equidistante azimutal al mismo tiempo, ya que es una forma conveniente de resolver otra clase de problemas geodésicos que involucran "líneas medianas" .)

ADENDA (2014-08-19)

También es posible resolver el momento de aproximación más cercana para dos embarcaciones que viajan a velocidad constante a lo largo de geodesia. Como conocemos las propiedades diferenciales de la geodésica, es posible utilizar el método de Newton para obtener una solución precisa en unas pocas iteraciones. El código para implementar esto se publica en

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

cffk
fuente
Estoy bastante seguro de que estoy fuera de pista, pero no estoy seguro de dónde; Me encantaría que pudieras ayudar a depurar mi razonamiento. (Siguiente comentario). De lo contrario: muchas gracias por el útil código + comentario + enlace; Es tremendamente útil.
Dan S.
Aquí va, tan concisamente como pude hacerlo. Mi razonamiento se expresa en cartesiano 3D, no en coordenadas angulares: (a) En una esfera, todos los puntos en un gran círculo son coplanares. (b) La transformación a la esfera auxiliar es lineal e invertible. (¿Pensamiento erróneo?) (C) Todos los puntos en una geodésica elíptica se transforman en puntos a lo largo de un gran círculo en el auxiliar. esfera. (d) Todos los puntos en una geodésica elíptica también son coplanares, debido a (b). Finalmente, (e): debido a la coplanaridad, se pueden encontrar dos puntos de intersección geodésica candidatos en el elipsoide por intersección plana.
Dan S.
1
@ Dan, una geodésica elipsoidal no se encuentra en un plano. (Si lo hiciera, tendría que ser una curva plana; y, sin embargo, sabemos que, en general, en cada circuito del globo, la geodésica se queda corta en una cantidad O (f)). La falla en su razonamiento es (b ) - la conexión entre el auxiliar. esfera y el elipsoide no es lineal. La transformación de latitud es equivalente a un estiramiento en la dirección z y, por lo tanto, es lineal. Sin embargo, las longitudes están relacionadas por una integral elíptica y esto evita que haya una relación lineal simple.
cffk