1 votos

Claridad sobre la conversión entre diferentes sistemas de coordenadas cartesianas

Este problema me molesta a mí y probablemente a todos los desarrolladores en el campo de la infografía desde entonces. Coge dos bibliotecas/marcos gráficos cualquiera y puedes estar casi seguro de que utilizan una definición de sistema de coordenadas diferente. Los ejemplos más famosos son, por supuesto, DirectX y OpenGL.

DirectX utiliza un sistema de mano izquierda en el que

positive X = (1, 0, 0) points to the right
positive Y = (0, 1, 0) to the top and
positive Z = (0, 0, 1) to the back.

OpenGL utiliza un sistema de mano derecha en el que

positive X = (1, 0, 0) also points to the right
positive Y = (0, 1, 0) also to the top but
positive Z = (0, 0, 1) to the front.

Para empeorar las cosas, su interpretación de los 16 valores de una matriz 4x4 está transpuesta entre sí (fila mayor <-> columna mayor).

Otro ejemplo sería OpenCV, que también tiene un sistema de mano derecha pero la Y apunta hacia abajo... ¡es un lío!

Pregunta 1:

¿Cómo se puede resolver de forma general, de manera que un objeto definido y transformado en el sistema A aparezca en la misma posición/orientación en el otro sistema B desde la posición (independiente) del espectador (por ejemplo, una persona frente a la pantalla)?

Supongo que se necesitarían los vectores base del sistema A (de donde procede el objeto) definidos en el sistema B (en el que se quiere visualizar) y configurar algún sistema de ecuaciones lineales a resolver para obtener una matriz de transformación que también esté definida en B y aplicarla a las coordenadas del objeto.

Pregunta 2:

La misma pregunta va para las matrices, ¿qué matriz (definida en el sistema B) transforma una transformación definida en el sistema A en una transformación definida en el sistema B para que tenga visualmente el mismo "efecto"? esperemos que sea la misma matriz que en la pregunta A con la excepción de que hay que transponer la matriz en caso de que los dos sistemas utilicen otras interpretaciones de los 16 valores.

0voto

Tras algunas semanas de investigación, he recopilado todos los conocimientos que he podido encontrar en esta presentación:

Sistemas de coordenadas en la infografía 3D

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X