52 Capítulo 3. Antece<strong>de</strong>ntes, Estado <strong>de</strong> la CuestiónGldouble, con prácticamente las mismas propieda<strong>de</strong>s. De igual forma, las funciones comienzancon el prefijo “gl” (como glVertex3f (0.0, 0.0, 0.0)). El sufijo <strong>de</strong>l nombre <strong>de</strong> la funciónindica el tipo <strong>de</strong> los parámetros que recibe (en este caso, 3 Glfloat). Si le pasáramos un vector<strong>de</strong> tres elementos Glfloat, la función a utilizar sería glVertexfv (vector).Po<strong>de</strong>mos distinguir los siguientes tipos <strong>de</strong> funciones:Funciones primitivas: que <strong>de</strong>finen todos los objetos a bajo nivel, como puntos, líneasy polígonos.Funciones <strong>de</strong> atributos: que permiten <strong>de</strong>finir características <strong>de</strong> aquello que se dibujará.Funciones <strong>de</strong> visualización: utilizadas para posicionar la cámara, proyectar la geometríaa la pantalla, recortar (clipping)...Funciones <strong>de</strong> transformación: Para girar, rotar, trasladar... la geometría.Funciones <strong>de</strong> entrada: Relativas al uso <strong>de</strong>l teclado y <strong>de</strong>l ratón, u otros dispositivos <strong>de</strong>Entrada/Salida.La biblioteca OpenGL está dividida en tres módulos fundamentales. La parte <strong>de</strong>l móduloGL será la más utilizada. Contiene todo el motor <strong>de</strong> ren<strong>de</strong>rizado y las primitivas básicas <strong>de</strong>la biblioteca. El módulo GLU (Graphics Utility Library) contiene instrucciones <strong>de</strong> más altonivel para dibujar objetos comunes (esferas, cilindros...), controlar la cámara, asociar texturasa caras <strong>de</strong> objetos, etc... Por último, GLUT (GL Utility Toolkit) [30] incorpora a<strong>de</strong>más <strong>de</strong>funciones para dibujar objetos comunes, rutinas para controlar el programa <strong>de</strong>s<strong>de</strong> el ratón yel teclado. Los tres módulos actúan directamente sobre el frame buffer.OpenGL no pue<strong>de</strong> dibujar polígonos cóncavos. Para dibujar este tipo <strong>de</strong> polígonos complejos,se utilizan una serie <strong>de</strong> triángulos. Todo polígono pue<strong>de</strong> <strong>de</strong>scomponerse en triángulosy, por tanto, a partir <strong>de</strong> éstos pue<strong>de</strong> dibujarse cualquier forma. Esta técnica se conoce con elnombre <strong>de</strong> Tesselation. Ésta es la forma que utiliza OpenGL internamente para dibujar objetoscomplejos. Po<strong>de</strong>mos recurrir a GLU para dibujar, por ejemplo, una esfera (llamando agluSphere).
3.2. Técnicas <strong>de</strong> representación 3D 53Los atributos se <strong>de</strong>finen a nivel global, es <strong>de</strong>cir, a partir <strong>de</strong> la llamada a una <strong>de</strong> estasfunciones, la manera <strong>de</strong> dibujar ese atributo cambiará para todo el programa. Algunas <strong>de</strong> lasmás importantes son:glClearColor (0.0, 0.0, 0.0, 0.0): Indica el color con el que <strong>de</strong>be limpiarse cada framecada vez que dibujemos la escena <strong>de</strong> nuevo. En este caso, el color <strong>de</strong> limpiado sería elnegro. El cuarto parámetro <strong>de</strong> la función es el valor <strong>de</strong> “alpha”, que indica el grado <strong>de</strong>transparencia (totalmente opaco en este caso).glColor3f (1.0, 0.0, 0.0): Indica el color <strong>de</strong> pintado mediante las componentes RGB.En este caso, indica que todo lo que se dibuje a partir <strong>de</strong> ahora será rojo (componenteR con el valor máximo y G,B a cero).glNormal3f (1.0, 0.0, 0.0): Se asocia como vector normal <strong>de</strong> la cara <strong>de</strong> un polígono el<strong>de</strong>finido <strong>de</strong>s<strong>de</strong> el origen al eje positivo <strong>de</strong> las X.GlMaterialfv (GL FRONT, GL DIFFUSE, blanco): Cada objeto será <strong>de</strong> un materialdiferente <strong>de</strong> manera que los reflejos que se produzcan en él <strong>de</strong>bido a las luces <strong>de</strong> laescena, variarán según su rugosidad, transparencia, capacidad <strong>de</strong> reflexión, etc... Eneste caso, se <strong>de</strong>fine que todas las caras visibles <strong>de</strong>l polígono (FRONT), tendrán unacomponente difusa <strong>de</strong> color blanco (blanco es un vector <strong>de</strong> glFloat que <strong>de</strong>fine el colorcomo 1.0, 1.0, 1.0).3.2.2.3 ProyeccionesUna vez mo<strong>de</strong>lada la geometría 3D en OpenGL, <strong>de</strong>be dibujarse en una pantalla 2D dandosensación <strong>de</strong> profundidad. Para ello, hay que proyectar la geometría en un plano <strong>de</strong> proyección,que suele utilizarse por convención el plano XY. Un tipo <strong>de</strong> proyecciones muy utilizadasson las <strong>de</strong>nominadas planares. En éstas se <strong>de</strong>fine una dirección <strong>de</strong> visión que va <strong>de</strong>s<strong>de</strong> el observadorhasta el objeto por medio <strong>de</strong> proyectores (líneas) que cortan el plano <strong>de</strong> proyección,generando así la imagen 2D que aparecerá en pantalla.
- Page 1:
UNIVERSIDAD DE CASTILLA-LA MANCHAES
- Page 5:
TRIBUNAL:Presidente:Vocal1:Vocal2:S
- Page 9:
ResumenSegún datos de la CNSE (Con
- Page 15:
AgradecimientosQuiero mostrar mi m
- Page 18 and 19:
XÍNDICE GENERAL4.3.2. Proceso de d
- Page 20 and 21:
XIIÍNDICE DE FIGURAS4.7. Diagrama
- Page 22 and 23:
XIVÍNDICE DE TABLAS
- Page 24 and 25:
XVILISTA DE ALGORITMOS
- Page 26 and 27: 2 Capítulo 1. IntroducciónLa leng
- Page 28 and 29: 4 Capítulo 1. IntroducciónPor otr
- Page 30 and 31: 6 Capítulo 1. Introducciónmódulo
- Page 32 and 33: 8 Capítulo 2. Objetivos del proyec
- Page 34 and 35: 10 Capítulo 2. Objetivos del proye
- Page 36 and 37: 12 Capítulo 3. Antecedentes, Estad
- Page 38 and 39: 14 Capítulo 3. Antecedentes, Estad
- Page 40 and 41: 16 Capítulo 3. Antecedentes, Estad
- Page 42 and 43: Optical FlowRaúl Varas Martínez18
- Page 44 and 45: 20 Capítulo 3. Antecedentes, Estad
- Page 46 and 47: 22 Capítulo 3. Antecedentes, Estad
- Page 48 and 49: 24 Capítulo 3. Antecedentes, Estad
- Page 50 and 51: 26 Capítulo 3. Antecedentes, Estad
- Page 52 and 53: 28 Capítulo 3. Antecedentes, Estad
- Page 54 and 55: 30 Capítulo 3. Antecedentes, Estad
- Page 56 and 57: y =x2+ 2x+ 5mediante el polinomio d
- Page 58 and 59: 34 Capítulo 3. Antecedentes, Estad
- Page 60 and 61: 36 Capítulo 3. Antecedentes, Estad
- Page 62 and 63: 38 Capítulo 3. Antecedentes, Estad
- Page 64 and 65: 40 Capítulo 3. Antecedentes, Estad
- Page 66 and 67: 42 Capítulo 3. Antecedentes, Estad
- Page 68 and 69: 44 Capítulo 3. Antecedentes, Estad
- Page 70 and 71: 46 Capítulo 3. Antecedentes, Estad
- Page 72 and 73: 48 Capítulo 3. Antecedentes, Estad
- Page 74 and 75: 50 Capítulo 3. Antecedentes, Estad
- Page 78 and 79: 54 Capítulo 3. Antecedentes, Estad
- Page 80 and 81: 56 Capítulo 3. Antecedentes, Estad
- Page 82 and 83: 58 Capítulo 3. Antecedentes, Estad
- Page 84 and 85: trices para concatenarlas y multipl
- Page 86 and 87: 62 Capítulo 3. Antecedentes, Estad
- Page 88 and 89: 64 Capítulo 3. Antecedentes, Estad
- Page 90 and 91: 66 Capítulo 3. Antecedentes, Estad
- Page 92 and 93: 68 Capítulo 3. Antecedentes, Estad
- Page 94 and 95: 70 Capítulo 3. Antecedentes, Estad
- Page 96 and 97: 72 Capítulo 3. Antecedentes, Estad
- Page 98 and 99: 74 Capítulo 3. Antecedentes, Estad
- Page 100 and 101: 76 Capítulo 3. Antecedentes, Estad
- Page 102 and 103: 78 Capítulo 3. Antecedentes, Estad
- Page 104 and 105: 80 Capítulo 3. Antecedentes, Estad
- Page 106 and 107: 82 Capítulo 4. Metodología de Tra
- Page 108 and 109: 84 Capítulo 4. Metodología de Tra
- Page 110 and 111: 86 Capítulo 4. Metodología de Tra
- Page 112 and 113: 88 Capítulo 4. Metodología de Tra
- Page 114 and 115: 90 Capítulo 4. Metodología de Tra
- Page 116 and 117: 92 Capítulo 4. Metodología de Tra
- Page 118 and 119: 94 Capítulo 4. Metodología de Tra
- Page 120 and 121: 96 Capítulo 4. Metodología de Tra
- Page 122 and 123: 98 Capítulo 4. Metodología de Tra
- Page 124 and 125: 100 Capítulo 4. Metodología de Tr
- Page 126 and 127:
102 Capítulo 4. Metodología de Tr
- Page 128 and 129:
104 Capítulo 4. Metodología de Tr
- Page 130 and 131:
106 Capítulo 4. Metodología de Tr
- Page 132 and 133:
108 Capítulo 4. Metodología de Tr
- Page 134 and 135:
110 Capítulo 4. Metodología de Tr
- Page 136 and 137:
112 Capítulo 4. Metodología de Tr
- Page 138 and 139:
114 Capítulo 5. ResultadosTodas la
- Page 140 and 141:
116 Capítulo 5. ResultadosVídeos
- Page 142 and 143:
118 Capítulo 5. Resultados5.2. Res
- Page 144 and 145:
120 Capítulo 5. Resultados• Boca
- Page 146 and 147:
122 Capítulo 5. ResultadosVídeos
- Page 148 and 149:
124 Capítulo 6. Conclusiones y Pro
- Page 150 and 151:
126 Capítulo 6. Conclusiones y Pro
- Page 152 and 153:
128 Capítulo 6. Conclusiones y Pro
- Page 154 and 155:
130 Capítulo 6. Conclusiones y Pro
- Page 156 and 157:
132 Capítulo 6. Conclusiones y Pro
- Page 158 and 159:
134 Capítulo A. DiagramasUSERcallb
- Page 160 and 161:
136 Capítulo B. Manual de usuarioF
- Page 162 and 163:
138 Capítulo B. Manual de usuarioM
- Page 164 and 165:
140 Capítulo B. Manual de usuarioL
- Page 166 and 167:
142 Capítulo B. Manual de usuarioP
- Page 168 and 169:
144 Capítulo C. Manual de Instalac
- Page 170 and 171:
146 Capítulo D. Código fuente/src
- Page 172 and 173:
148 Capítulo D. Código fuente77 i
- Page 174 and 175:
150 Capítulo D. Código fuente113
- Page 176 and 177:
152 Capítulo D. Código fuente233
- Page 178 and 179:
154 Capítulo D. Código fuente3533
- Page 180 and 181:
156 Capítulo D. Código fuente473
- Page 182 and 183:
158 Capítulo D. Código fuente593
- Page 184 and 185:
160 Capítulo D. Código fuente713
- Page 186 and 187:
162 Capítulo D. Código fuente833
- Page 188 and 189:
164 Capítulo D. Código fuente43 /
- Page 190 and 191:
166 Capítulo D. Código fuente163
- Page 192 and 193:
168 Capítulo D. Código fuente7 *
- Page 194 and 195:
170 Capítulo D. Código fuente124
- Page 196 and 197:
172 BIBLIOGRAFÍA[17] OpenGL Archit