Sie sind auf Seite 1von 7

Primitivas OpenGL

Sintaxis bsica Tipos de datos Primitivas de dibujo


Tipos de Primitivas Suavizado Caras y Modos de Relleno Patrones

Formas predefinidas

Sintaxis
Todos los comandos OpenGL comienzan con gl, y cada una de las palabras glMatrixMode(....) glEnable(...) Las constantes (y variables de estado) en OpenGL se escriben en maysculas, y todas ellas empiezan por GL, separacion _. GL_MODELVIEW GL_COLOR_BUFFER_BIT Existen comandos en OpenGL que admiten distinto nmero de argumentos y distintos tipos. Estos comandos terminan con el sufijo nt, donde n indica el nmero de argumentos y t el tipo de los mismos. glVertex2i(10,21) indica que estamos usando vrtices 2D del tipo GLint. glVertex3fv(vector) indica que estamos pasando un vector 3D con coordenadas GLfloat.
Primitivas OpenGL

que . componen el comando comienzan por letra mayscula.

Tipos Tipos de datos propios: para hacer el cdigo ms fcilmente portable, aunque estos tipos de datos corresponden con los tipos de datos de C, y por tanto se podrn utilizar unos u otros indistintamente.
Tipo en OpenGL GLbyte GLshort GLint, GLsizei GLfloat, GLclampf GLdouble, GLclampd GLubyte, GLboolean GLushort GLuint, GLenum, GLbitfield
Primitivas OpenGL

Tipo de C char con signo short int float double unsigned char unsigned short unsigned long

Representacin interna Entero de 8 bits Entero de 16 bits Entero de 32 bits Coma flotante de 32bits Coma flotante de 64 bits Entero de 8 bits sin signo Entero de 16 bits sin signo Entero de 32 bits sin signo

Primitivas de Dibujo Habilitar el modo de dibujado, glBegin(<MODO_DE_DIBUJADO>)

Establecer los atributos: glColor, glNormal, glTexCoord Lanzar Vrtices, glVertex Terminar el modo de dibujado glEnd()
Primitivas OpenGL

Primitivas de Dibujo Comandos vlidos entre glBegin y glEnd:


Estos comandos sitan la mquina OpenGL en un ESTADO para interpretar los vrtices

Primitivas OpenGL

Primitivas de Dibujo

Primitivas OpenGL

Primitivas de Dibujo
glPointSize(GLfloat tamao) glEnable(GL_POINT_SMOOTH)

glLineWidth(GLfloat ancho)

Primitivas OpenGL

Primitivas de Dibujo

Para polgonos de ms lados se pueden utiliza: GL_QUAD, GL_POLYGON


Primitivas OpenGL

Primitivas de Dibujo

Para activar el antialiasing de polgonos: glEnable(GL_POLYGON_SMOOTH) Si se quiere modificar la calidad glHint()


Primitivas OpenGL

Primitivas de Dibujo

Primitivas OpenGL

Primitivas de Dibujo
glEnable(GL_LINE_STIPPLE), glLineStepple(GLint factor, GLushort patron)

glEnable(GL_POLYGON_STIPPLE), glPolygonStepple(GLubyte matriz[32x4])

Primitivas OpenGL

Primitivas de dibujo Debido a la optimizacin de los algoritmos internos y a la implementacin hardware:


1. Los polgonos deben ser Planares 2. Las aristas no deben interceptarse 3. Los polgonos deben ser convexos

Se puede reducir a tringulos:

Primitivas OpenGL

Formas Predefinidas Las libreras GLAUX y GLU, permiten generar formas predefinidas. Formas de GLAUX (Solid/Wire):
auxSolidBox auxSolidCone auxSolidCube auxSolidCylinder auxSolidDodecahedron auxSolidIcosahedron auxSolidOctahedron auxSolidSphere auxSolidTeapot auxSolidTetrahedron auxSolidTorus
Primitivas OpenGL

Prctica 1

Das könnte Ihnen auch gefallen