La intención de post es explicar como poder graficar un punto de una coordenada de tercera dimensión en una gráfica de 2 dimensiones.
La forma de lograr esto es haciendo corresponder una coordenada de tipo X,Y,Z con un punto X,Y que se encuentra en el plano Z que deseamos graficar, mediante interpolación lineal.
Sabemos que la Coordenada Z es perpendicular a la coordenada X así que si lo vemos en una grafica nos damos cuenta que conforme avanza la coordenada z, visualmente existe un avance en las coordenadas x e y.
Conociendo esto, podemos tratar de determinar, cual es el punto x,y que se va desplazando a la vez que avanza Z de la siguiente manera:
Sea
Xi = Valor Inicial de X
Yi = Valor Inicial de Y
Xf = Valor Final de X
Yf = Valor Final de Y
Zi = Valor Inicial de Z
Zf = Valor Final de Z
X = (z - Zi) * (Xf - Xi) / (Zf - Zi) + Xi
Y = (z - Zi) * (Yf - Yi) / (Zf - Zi) + Yi
Una vez obtenidos estos valores X,Y desplazados en la gráfica, necesitamos saber a que posición corresponden en una pantalla, área de dibujo, formulario, o cualquier objeto que permita dibujar en él, de la siguiente forma:
Sea
Cx = La coordenada en x de la pantalla que estamos buscando
x = El valor x ya desplazado en la coordenada z (el que obtuvimos en la ecuación anterior)
y = El valor y ya desplazado en la coordenada z (el que obtuvimos en la ecuación anterior)
Cxi = La coordenada inicial x de la pantalla en la que deseamos pintar
Cyi = La coordenada inicial y de la pantalla en la que deseamos pintar
Cxf = La coordenada final x de la pantalla en la que deseamos pintar
Cyf = La coordenada final y de la pantalla en la que deseamos pintar
Cx = (x - Xi) * (CXf - CXi) / (Xf - Xi) + CXi
Cy = (y - Yi) * (CYf - CYi) / (Yf - Yi) + CYi
De esta forma ya podemos empezar a hacer nuestras funciones para graficar, un punto una linea, o cualquier cosa que se nos ocurra.
Thursday, January 17, 2008
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment