[C con Clase] Gráficos ... Era: parametro -l
Steven Davidson
srd4121 en njit.edu
Lun Abr 12 07:09:37 CEST 2010
Hola Álex,
ALEX HUAMANI wrote:
>
> alguien me puede ayudar con funcion graphics.h
> necesito que alguien me ayude para crear un sistema planetario en 3D,
> noce si hacerlo con matrices o lado por lado
> ademas necesito darle giro al elipsoide.. una orientacion,
> posteriormente les mando mi avance..
>
En primer lugar, <graphics.h> es un fichero de cabecera y no una
función. En segundo lugar, <graphics.h> pertenece a la BGI: Interfaz
Gráfica de Borland para MS-DOS. Esto significa que sólo sirve para los
compiladores de Borland bajo MS-DOS. Los compiladores actuales de
Borland no soportan esta biblioteca gráfica. Existen emuladores de la
BGI para MS-Windows. Puedes dirigirte a:
http://www.codecutter.net/tools/winbgim/ para descargarlo.
Algunas otras bibliotecas y API's gráficas que puedes usar son:
- SDL: http://www.libsdl.org/
- OpenGL: http://www.opengl.org/
- GDI del API de MS-Windows. Puedes consultar el capítulo 16 de nuestro
curso del API de MS-Windows. El enlace es:
http://winapi.conclase.net/curso/index.php?cap=016#inicio
El problema de la GDI es que sólo contiene funciones para 2D; no hay 3D.
Por lo tanto, tendrás que crear la programación para definir y usar las
operaciones 3D.
Existen otras bibliotecas gráficas, pero quizá sean algo más complejas
que las que he presentado.
En cuanto al diseño, puedes usar operaciones matriciales para
representar las transformaciones afines como la rotación. Otra solución
es usando la definición de una trayectoria elíptica. Por ejemplo,
podemos usar una línea curva definida paramétricamente. Sospecho que
quieres hacer una animación, por lo que la línea elíptica te servirá ya
que puedes imponer que el parámetro, t, represente el tiempo y así
puedes calcular la coordenada (x,y,z) que requieres para la posición del
elipsoide. Claro que seguramente querrás un vector y por tanto el
parámetro, 't', te servirá de igual manera.
Espero que esto te oriente.
Steven
Más información sobre la lista de distribución Cconclase