Estoy tratando de calcular la distorsión para poder distorsionar el texto y las formas superpuestas para que coincidan exactamente con una imagen de una proyección equirectangular.
¿Cómo se calcula la distorsión en una latitud determinada en una proyección equirectangular 1:45.000.000 (digamos, 2000 píxeles de ancho x 1000 píxeles de alto)?
He tratado de entender este post y sus enlaces sin éxito: ¿Cómo crear un Tissot Indicatrix preciso?
No soy un profesional, sólo un aficionado muy interesado.
Esta es la larga historia.
Estoy visualizando/mapeando datos usando el lenguaje de programación Processing y me gustaría que los datos mapeados en 2D (fuentes y círculos de diferentes tamaños) aparecieran sin distorsión cuando se envuelven en un globo terráqueo en 3D. Los datos están mapeados usando x, y equirectangulares y los mapas que quiero usar como fondos son todos de esta proyección, así que asumo que quiero "igualar" esta distorsión (por ejemplo, calculando la distorsión a través de la latitud usando las ecuaciones de Tissot). Utilizando el lenguaje de programación puedo distorsionar con precisión tanto el texto como los círculos. Creo que lo único que necesito son las ecuaciones para hacerlo correctamente.
Aquí está el mapa de datos 2D original:
Cuando se envuelve se ve distorsionado, así:
¿Cómo puedo hacer que mi imagen 2D no se vea distorsionada al envolverla en la esfera 3D?
Como referencia, esta es la misma pregunta formulada de manera diferente en el foro de Procesamiento.
No estoy seguro de querer reproyectar a una proyección ortográfica. Quiero que mi mapa de datos 2D se envuelva en un modelo de esfera 3D con el que se pueda interactuar (es decir, girar).
Estoy utilizando un programa de modelado 3D (Cinema 4D) para envolver una esfera con una Imagen de "Mármol Azul". (proyección equirectangular) de la NASA.
Cuando se envuelve aparece sin distorsión desde todos los hemisferios (no sólo un hemisferio, como sería una proyección ortográfica ), ver: fotograma del modelo 3D arriba. (Supongo que el programa de modelado hace la proyección ortográfica por mí al girar el objeto). Por lo tanto, creo que si distorsiono mi mapa de datos 2D de manera similar, también aparecerá sin distorsión en la esfera 3D. Aquí hay una toma que hice con una ecuación que aproxima la distorsión equirectangular. Notarás que las elipses en forma de huevo de la imagen 2D parecen un círculo cuando se envuelven en la esfera 3D. Del mismo modo, las elipses de Tissot también aparecen como círculos en la esfera 3D.
Por eso estaba mirando las ecuaciones de Tissot... para averiguar con más precisión la distorsión de la proyección equirectangular en diferentes latitudes y así poder distorsionar mi superposición en consecuencia.
Quizás debería utilizar un programa GIS. Acabo de descargarme Cartographica y voy a ver si lo resuelvo.
¿Alguna sugerencia de software para Mac para alguien que no haya emprendido esta tarea?
1 votos
¿Te refieres realmente a calcular la distorsión o quieres saber cómo calcular la proyección en sí? Tal vez podrías poner una imagen en la Web para ilustrar lo que intentas conseguir. El uso que haces de la palabra "match" sugiere que te gustaría determinar cómo transformar una imagen en otra, lo que indica que necesitas especificar de qué partes y con qué quieres terminar.
1 votos
Entendemos que es difícil describir lo que quieres hacer sin conocer la jerga, pero parece que intentas describir el proceso más que el resultado. Intenta empezar con el problema que quieres resolver y luego con los resultados que te gustaría obtener, e intentaremos rellenar los huecos :)
0 votos
En términos técnicos: quiere reproyectar de la proyección equirectangular a un ortográfico ("el mundo desde el espacio"). ¿Qué programas puede utilizar? Si dispones de un programa SIG o estás dispuesto a codificar con una biblioteca de proyecciones, el trabajo ya está hecho. De lo contrario, tendrá que aplicar las ecuaciones para sin proyectar la proyección equirectangular (fácil) y proyectando la proyección ortográfica (no es demasiado difícil, pero requiere cierta destreza en la codificación de rutinas numéricas).
1 votos
Vi este post y estoy tratando de hacer básicamente exactamente lo mismo. Quiero dibujar círculos 2D que se distorsionan correctamente cuando se proyecta sobre una esfera 3D. Me preguntaba si estaría dispuesto a compartir el algoritmo que utilizó para la distorsión de los círculos 2D. En realidad debería haber sido un comentario no una respuesta, pero lo escribí en el lugar equivocado. Lo siento.
0 votos
Debes dibujar tus datos en el espacio 3D y luego proyectarlos de nuevo en la esfera.
0 votos
El globo giratorio, cuando se representa en pantalla o en papel, se muestra con una proyección ortográfica.
0 votos
Ya no estoy seguro de la trigonometría, pero en lugar de mapear la imagen 2D a la esfera 3D, ¿no podrías tomar las descripciones geométricas de cada círculo de la imagen y calcularlas en el espacio 3D de la esfera? ¿No lo soportaría el modo 3D de Processing? (Tengo curiosidad sobre esto por otras razones)