Modelador interactivo de curvas de Bezier

Mayo 19, 2008

Hola!!!

Como en el grupo de en la tarde voy atrasado una clase teórica (falto la del jueves que fue dia del maestro).

Pongo un adelanto de la clase sobre curvas de Bezier, para que vayan leyendo el código, desde luego lo explicare en la clase teórica la cuestión es que probablemente sea hasta dos clases después. Y como se que podría ser de utilidad para el proyecto final aquí les va:

Para usar las curvas de Bezier en OpenGL hay que seguir tres pasos:

  1. Prender el estado de curvas de Bezier
  2. Crear el polinomio de Bernstein (o polinomio de Bezier, como quieran llamarlo)
  3. Llamar al evaluador para que nos de los vértices de la curva creada

Estos se llevan a cabo con las siguientes instrucciones:

glEnable(GL_MAP1_VERTEX_3);

Para prender el modo de Bezier, el GL_MAP1_VERTEX_3, significa que con un solo parametro (MAP_1), vamos a hacer vertices en tres dimensiones (VERTEX_3)

glMap1f(GL_MAP1_VERTEX_3, tinicial, tfinal, incrementoEnMemoriaDeLosPuntos, numPtos, *puntosptr);

Donde el primer parámetro es consistente con la llamada anterior, T inicial es el valor inicial del parámetro (usualmente 0), tfinal es el valor final del parámetro (usualmente 1), numPtos es el numero de puntos de control, puntosptr es un arreglo que contiene los puntos de control y incrementoEnMemorioaDeLosPuntos es cada cuantas posiciones del arreglo hay un nuevo punto de control (usualmente 3).

glEvalCoord1f( t );

Internamente manda llamar un glVertex con las coordenadas de los punto de la curva correspondiente de el valor de t, que le mandemos como parametro.

Aquí esta el código del ejemplo. Y estos son algunos pantallazos:

Entry Filed under: Clase, OpenGL. .

Leave a Comment

Required

Required, hidden

Some HTML allowed:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <pre> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Trackback this post  |  Subscribe to the comments via RSS Feed


Calendar

Mayo 2008
L M X J V S D
« Abr   Jun »
 1234
567891011
12131415161718
19202122232425
262728293031  

Most Recent Posts