Perspectiva curvilínea: convierta 3D a 2D
-
10-07-2019 - |
Pregunta
Estoy buscando la expresión matemática que convierte una coordenada 3D (x0, y0, z0)
en una coordenada 2D (x1, y1)
en una perspectiva curvilínea de radio R
donde los valores de x1 e y1 son los ángulos de vistas {-90 ° .. + 90 °} del punto original.
(fuente: ntua.gr )
(imagen a través de http://www.ntua.gr/arch/ geometry / mbk / histor.htm )
¡Gracias!
Solución
Aproximadamente un año después, la solución fue realmente simple. Para un punto que tiene las coordenadas:
(x1,y1,z1)
Luego, para transformar este punto en un dibujo curvilíneo de radio R :
dist=sqrt(x1^2 + y1^2 + z1^2)
x= R*(1+x/dist)
y= R*(1+y/dist)
Ahora puedo generar mis propios dibujos (imagen a través de wikipedia) :-)
Otros consejos
Es posible que primero necesite usar una matriz de transformación para proyectar el objeto 3D en un plano 2D. http://en.wikipedia.org/wiki/Graphical_projection , elija el que mejor se adapte sus necesidades.
Como segundo paso, querrá usar las conversiones generales para llevar las coordenadas al espacio euclidiano. http://en.wikipedia.org/wiki/Curvilinear_coordinates