Este documento presenta un manual de prácticas de OpenGL con Dev C++ que incluye 20 ejemplos de programas gráficos 2D y 3D utilizando esta biblioteca. El primer ejemplo muestra cómo dibujar un tablero de ajedrez, y los ejemplos subsecuentes ilustran cómo crear formas geométricas como estrellas, cubos, muñecos y más, además de animaciones y la interacción con el mouse y teclado. El documento proporciona el código fuente para cada ejemplo con comentarios explicativos.
Este documento presenta un manual de prácticas de OpenGL con Dev C++ que incluye 20 ejemplos de programas gráficos 2D y 3D utilizando esta biblioteca. El primer ejemplo muestra cómo dibujar un tablero de ajedrez, y los ejemplos subsecuentes ilustran cómo crear formas como estrellas, cubos con líneas, muñecos con triángulos y más, además de animaciones y la interacción con el mouse y teclado. El documento proporciona el código fuente para cada ejemplo con comentarios
Este documento presenta un manual de prácticas en OpenGL utilizando Dev C++. Incluye 16 prácticas que muestran funciones básicas y avanzadas de OpenGL como la creación de un tablero de ajedrez, una estrella, un cubo con líneas y más, explicando el código necesario para cada objeto.
Este documento presenta un manual de prácticas en OpenGL utilizando Dev C++. Contiene 16 prácticas que muestran funciones básicas y avanzadas de OpenGL como dibujar un tablero de ajedrez, una estrella, cubos con líneas, un muñeco con triángulos, una pirámide, una casita y más. Cada práctica incluye una breve descripción y el código necesario para crear la figura correspondiente utilizando primitivas de OpenGL.
Este documento presenta tres prácticas de dibujo en Open GL: 1) la creación de un tablero de ajedrez utilizando puntos, 2) el dibujo de una estrella de cinco picos utilizando líneas y 3) la representación de un cubo tridimensional mediante líneas. Cada práctica incluye el código necesario para generar la figura correspondiente en Open GL.
Este documento presenta un manual de prácticas en OpenGL utilizando Dev C++. Incluye 16 ejercicios que muestran el uso de diferentes primitivas de OpenGL para crear figuras 2D y 3D, como un tablero de ajedrez, una estrella, un cubo con líneas, un muñeco con triángulos y más. Explica el código necesario para cada figura utilizando conceptos básicos de OpenGL como definir colores, tamaños de puntos y líneas, y establecer coordenadas para vértices.
Este documento presenta varios resúmenes de prácticas realizadas utilizando el software Photoshop. Las prácticas incluyen blanquear dientes, hacer fotomontajes, fusionar capas, agregar fondos, crear nombres con efectos, convertir una foto en un avatar, agregar luz neón y más. El documento provee instrucciones detalladas para cada práctica junto con resultados y referencias bibliográficas.
Este documento presenta un simulador gráfico 3D del sistema digestivo humano con el objetivo de facilitar la enseñanza de este tema en estudiantes de primaria de una manera más dinámica y entretenida. El simulador permitirá al usuario seleccionar los órganos del sistema digestivo y ver descripciones de sus funciones y una simulación de cómo funciona todo el sistema. Se utilizó el software Blender para la creación del modelo 3D debido a su facilidad de uso en comparación con otros programas similares.
Este documento presenta un manual de prácticas de OpenGL con Dev C++ que incluye 20 ejemplos de programas gráficos 2D y 3D utilizando esta biblioteca. El primer ejemplo muestra cómo dibujar un tablero de ajedrez, y los ejemplos subsecuentes ilustran cómo crear formas geométricas como estrellas, cubos, muñecos y animaciones circulares, así como el uso de interacción con el mouse y teclado. El documento proporciona el código fuente para cada ejemplo con explicaciones breves.
Este documento presenta un manual de prácticas de OpenGL con Dev C++ que incluye 20 ejemplos de programas gráficos 2D y 3D utilizando esta biblioteca. El primer ejemplo muestra cómo dibujar un tablero de ajedrez, y los ejemplos subsecuentes ilustran cómo crear formas como estrellas, cubos con líneas, muñecos con triángulos y más, además de animaciones y la interacción con el mouse y teclado. El documento proporciona el código fuente para cada ejemplo con comentarios
Este documento presenta un manual de prácticas en OpenGL utilizando Dev C++. Incluye 16 prácticas que muestran funciones básicas y avanzadas de OpenGL como la creación de un tablero de ajedrez, una estrella, un cubo con líneas y más, explicando el código necesario para cada objeto.
Este documento presenta un manual de prácticas en OpenGL utilizando Dev C++. Contiene 16 prácticas que muestran funciones básicas y avanzadas de OpenGL como dibujar un tablero de ajedrez, una estrella, cubos con líneas, un muñeco con triángulos, una pirámide, una casita y más. Cada práctica incluye una breve descripción y el código necesario para crear la figura correspondiente utilizando primitivas de OpenGL.
Este documento presenta tres prácticas de dibujo en Open GL: 1) la creación de un tablero de ajedrez utilizando puntos, 2) el dibujo de una estrella de cinco picos utilizando líneas y 3) la representación de un cubo tridimensional mediante líneas. Cada práctica incluye el código necesario para generar la figura correspondiente en Open GL.
Este documento presenta un manual de prácticas en OpenGL utilizando Dev C++. Incluye 16 ejercicios que muestran el uso de diferentes primitivas de OpenGL para crear figuras 2D y 3D, como un tablero de ajedrez, una estrella, un cubo con líneas, un muñeco con triángulos y más. Explica el código necesario para cada figura utilizando conceptos básicos de OpenGL como definir colores, tamaños de puntos y líneas, y establecer coordenadas para vértices.
Este documento presenta varios resúmenes de prácticas realizadas utilizando el software Photoshop. Las prácticas incluyen blanquear dientes, hacer fotomontajes, fusionar capas, agregar fondos, crear nombres con efectos, convertir una foto en un avatar, agregar luz neón y más. El documento provee instrucciones detalladas para cada práctica junto con resultados y referencias bibliográficas.
Este documento presenta un simulador gráfico 3D del sistema digestivo humano con el objetivo de facilitar la enseñanza de este tema en estudiantes de primaria de una manera más dinámica y entretenida. El simulador permitirá al usuario seleccionar los órganos del sistema digestivo y ver descripciones de sus funciones y una simulación de cómo funciona todo el sistema. Se utilizó el software Blender para la creación del modelo 3D debido a su facilidad de uso en comparación con otros programas similares.
Este documento presenta un manual de prácticas de OpenGL con Dev C++ que incluye 20 ejemplos de programas gráficos 2D y 3D utilizando esta biblioteca. El primer ejemplo muestra cómo dibujar un tablero de ajedrez, y los ejemplos subsecuentes ilustran cómo crear formas geométricas como estrellas, cubos, muñecos y animaciones circulares, así como el uso de interacción con el mouse y teclado. El documento proporciona el código fuente para cada ejemplo con explicaciones breves.
El código crea un tablero de ajedrez de 8x8 usando OpenGL. Usa dos colores (amarillo y negro) y puntos de 50 píxeles de diámetro para dibujar las celdas en una cuadrícula, alternando los colores en filas y columnas para formar el patrón de ajedrez.
El documento describe cómo crear diferentes figuras geométricas utilizando código OpenGL: (1) Un tablero de ajedrez utilizando puntos, (2) Una estrella de cinco puntas utilizando líneas, (3) Un cubo utilizando líneas para delimitar sus caras y bordes, (4) Un cubo delineado utilizando cuadriláteros para las caras y líneas para los bordes.
Este documento presenta un manual de prácticas en OpenGL para el lenguaje de programación C++. Incluye 16 prácticas que muestran funciones básicas y avanzadas de OpenGL como dibujar formas 2D y 3D, animación, y más. La primera práctica muestra cómo crear un tablero de ajedrez usando puntos. La segunda crea una estrella usando líneas. La tercera dibuja un cubo con líneas usando cuadrados y líneas.
Este documento presenta 16 prácticas de programación en OpenGL utilizando Dev C++. Las prácticas van desde lo básico como dibujar un tablero de ajedrez hasta objetos 3D más complejos e incluso animaciones. Se explican funciones como glBegin, glVertex, glColor y el uso de bucles for para crear formas repetitivas.
Universidad Autónoma del Noreste
Campus Sabinas
Trabajo final
Procedimiento de cómo resolver un cubo de rubik
Modelos de calidad
Anselmo Treviño Serrano 1430123
Dimas Iván Farias Valdéz 1430138
Dulce Dádiva Chacón Landois 1030062
Griselda Cervantes González 1530004
Vicente Hernández Pérez 1430116
Mtro. Juan Alejandro Garza Rodríguez
Maestría en Administración y Liderazgo
Sabinas, Coahuila 28 de marzo del 2015
El documento describe tres métodos para representar objetos en 3D: modelos bidimensionales, modelos de alambre (wireframe) y modelos sólidos. También explica conceptos como el espacio 3D virtual, diferentes técnicas de modelado 3D como primitivas, box modeling y NURBS modeling, y el proceso de renderizado para generar imágenes 2D a partir de escenas 3D.
Este documento trata sobre la visualización científica y sus aplicaciones. Explica que la visualización científica es una rama interdisciplinaria que se enfoca en la representación tridimensional de fenómenos a través de imágenes, diagramas y animaciones. Luego describe ejemplos como la animación computarizada, simulación computarizada y representaciones de superficies, volúmenes y datos. Finalmente, detalla algunas aplicaciones de la visualización científica en ciencias naturales, geografía y otras áreas.
El documento presenta 10 prácticas de OpenGL para crear diferentes figuras geométricas 2D como un tablero de ajedrez, una estrella, un cubo con líneas. También incluye prácticas más complejas como un cubo delineado, un muñeco con triángulos y formas, y animaciones de un círculo y el sistema solar.
Este documento describe varios ejemplos de animaciones y figuras geométricas creadas con OpenGL. Incluye el código para crear una animación de un círculo que se mueve de izquierda a derecha y de arriba abajo, el código para dibujar una casa con diferentes colores y formas geométricas como cuadrados y triángulos, y un índice con otros ejemplos como una estrella, sistema solar, cubo, pirámide y más.
Este documento presenta el código y descripción de varias prácticas de dibujo 2D y 3D utilizando OpenGL. La primera práctica dibuja un tablero de ajedrez con puntos. La segunda dibuja una estrella utilizando líneas. La tercera dibuja un cubo con líneas. La cuarta mejora el cubo delineando sus líneas. La quinta crea un muñeco con diferentes formas geométricas.
Este documento presenta el código y descripción de varias prácticas de dibujo 2D y 3D utilizando OpenGL. La primera práctica dibuja un tablero de ajedrez con puntos. La segunda dibuja una estrella utilizando líneas. La tercera dibuja un cubo con líneas. La cuarta mejora el cubo delineando sus líneas. La quinta crea un muñeco con diferentes formas geométricas.
Este documento presenta un manual de prácticas de OpenGL. Incluye códigos para crear varias figuras geométricas 3D como un tablero de ajedrez, estrellas, un cubo con líneas y más. Explica que OpenGL es una API para crear gráficos 2D y 3D usando primitivas geométricas simples como puntos, líneas y triángulos. Los códigos están basados en coordenadas cartesianas para formar las figuras.
Este documento presenta 14 prácticas de diseño utilizando el software OpenGL. La introducción explica que OpenGL es una API para crear gráficos 2D y 3D a partir de primitivas geométricas como puntos, líneas y triángulos. Las prácticas 1-4 muestran cómo crear formas básicas como un tablero de ajedrez, una estrella, un cubo con líneas y un cubo delineado utilizando comandos como glBegin, glVertex y glEnd.
Manual de Practicas de Open GL con Dev C++Alincita Simon
Este documento presenta un manual de prácticas para OpenGL. Explica brevemente qué es OpenGL y describe algunas librerías relacionadas como GLU, GLUT y GLAUX. Luego detalla los pasos para configurar el entorno de desarrollo Dev-C++ en Windows para usar OpenGL. Finalmente incluye un índice con 20 ejemplos prácticos de dibujo 2D y 3D usando OpenGL.
El documento presenta un manual sobre OpenGL. Explica que OpenGL es una interfaz de hardware gráfico que define funciones para acceder a las capacidades de una tarjeta gráfica. Incluye ejemplos de código para crear primitivas gráficas como un tablero de ajedrez, un cubo con líneas, una estrella y una pirámide usando OpenGL.
Este documento presenta 13 prácticas de programación en OpenGL. La primera práctica muestra cómo crear un tablero de ajedrez usando puntos. La segunda práctica dibuja una estrella con líneas. La tercera práctica mejora el uso de líneas para dibujar un cubo. La cuarta práctica enseña a rellenar cuadrados y delinearlos para formar un cubo.
Este documento presenta un manual de prácticas sobre el uso de software de diseño para el manejo de gráficos. Incluye investigación sobre OpenGL, código para crear varias figuras geométricas como un tablero de ajedrez, una estrella, un cubo con líneas y uno delineado, y explica cómo configurar OpenGL en Dev C++. El manual proporciona código y explicaciones detalladas para crear diferentes objetos 2D y 3D usando funciones de OpenGL.
Este documento presenta un manual de prácticas de OpenGL con 15 ejercicios que incluyen: 1) la creación de un tablero de ajedrez, 2) una estrella, 3) un cubo con líneas, 4) un cubo delineado, 5) un muñeco con triángulos, 6) una casita, 7) un oso, 8) un cubo con cubitos, 9) un muñeco con formas, 10) una animación de círculo rotando, 11) un sistema solar, 12) un movimiento en ocho, 13) un semáfor
Este programa permite resolver sistemas de ecuaciones lineales mediante el método de Gauss-Jordan. El programa guía al usuario a través de un menú con opciones para introducir el número de variables, capturar los coeficientes de la matriz, aplicar el método de Gauss-Jordan para reducir la matriz a escalonada reducida e imprimir los resultados.
El código crea un tablero de ajedrez de 8x8 usando OpenGL. Usa dos colores (amarillo y negro) y puntos de 50 píxeles de diámetro para dibujar las celdas en una cuadrícula, alternando los colores en filas y columnas para formar el patrón de ajedrez.
El documento describe cómo crear diferentes figuras geométricas utilizando código OpenGL: (1) Un tablero de ajedrez utilizando puntos, (2) Una estrella de cinco puntas utilizando líneas, (3) Un cubo utilizando líneas para delimitar sus caras y bordes, (4) Un cubo delineado utilizando cuadriláteros para las caras y líneas para los bordes.
Este documento presenta un manual de prácticas en OpenGL para el lenguaje de programación C++. Incluye 16 prácticas que muestran funciones básicas y avanzadas de OpenGL como dibujar formas 2D y 3D, animación, y más. La primera práctica muestra cómo crear un tablero de ajedrez usando puntos. La segunda crea una estrella usando líneas. La tercera dibuja un cubo con líneas usando cuadrados y líneas.
Este documento presenta 16 prácticas de programación en OpenGL utilizando Dev C++. Las prácticas van desde lo básico como dibujar un tablero de ajedrez hasta objetos 3D más complejos e incluso animaciones. Se explican funciones como glBegin, glVertex, glColor y el uso de bucles for para crear formas repetitivas.
Universidad Autónoma del Noreste
Campus Sabinas
Trabajo final
Procedimiento de cómo resolver un cubo de rubik
Modelos de calidad
Anselmo Treviño Serrano 1430123
Dimas Iván Farias Valdéz 1430138
Dulce Dádiva Chacón Landois 1030062
Griselda Cervantes González 1530004
Vicente Hernández Pérez 1430116
Mtro. Juan Alejandro Garza Rodríguez
Maestría en Administración y Liderazgo
Sabinas, Coahuila 28 de marzo del 2015
El documento describe tres métodos para representar objetos en 3D: modelos bidimensionales, modelos de alambre (wireframe) y modelos sólidos. También explica conceptos como el espacio 3D virtual, diferentes técnicas de modelado 3D como primitivas, box modeling y NURBS modeling, y el proceso de renderizado para generar imágenes 2D a partir de escenas 3D.
Este documento trata sobre la visualización científica y sus aplicaciones. Explica que la visualización científica es una rama interdisciplinaria que se enfoca en la representación tridimensional de fenómenos a través de imágenes, diagramas y animaciones. Luego describe ejemplos como la animación computarizada, simulación computarizada y representaciones de superficies, volúmenes y datos. Finalmente, detalla algunas aplicaciones de la visualización científica en ciencias naturales, geografía y otras áreas.
El documento presenta 10 prácticas de OpenGL para crear diferentes figuras geométricas 2D como un tablero de ajedrez, una estrella, un cubo con líneas. También incluye prácticas más complejas como un cubo delineado, un muñeco con triángulos y formas, y animaciones de un círculo y el sistema solar.
Este documento describe varios ejemplos de animaciones y figuras geométricas creadas con OpenGL. Incluye el código para crear una animación de un círculo que se mueve de izquierda a derecha y de arriba abajo, el código para dibujar una casa con diferentes colores y formas geométricas como cuadrados y triángulos, y un índice con otros ejemplos como una estrella, sistema solar, cubo, pirámide y más.
Este documento presenta el código y descripción de varias prácticas de dibujo 2D y 3D utilizando OpenGL. La primera práctica dibuja un tablero de ajedrez con puntos. La segunda dibuja una estrella utilizando líneas. La tercera dibuja un cubo con líneas. La cuarta mejora el cubo delineando sus líneas. La quinta crea un muñeco con diferentes formas geométricas.
Este documento presenta el código y descripción de varias prácticas de dibujo 2D y 3D utilizando OpenGL. La primera práctica dibuja un tablero de ajedrez con puntos. La segunda dibuja una estrella utilizando líneas. La tercera dibuja un cubo con líneas. La cuarta mejora el cubo delineando sus líneas. La quinta crea un muñeco con diferentes formas geométricas.
Este documento presenta un manual de prácticas de OpenGL. Incluye códigos para crear varias figuras geométricas 3D como un tablero de ajedrez, estrellas, un cubo con líneas y más. Explica que OpenGL es una API para crear gráficos 2D y 3D usando primitivas geométricas simples como puntos, líneas y triángulos. Los códigos están basados en coordenadas cartesianas para formar las figuras.
Este documento presenta 14 prácticas de diseño utilizando el software OpenGL. La introducción explica que OpenGL es una API para crear gráficos 2D y 3D a partir de primitivas geométricas como puntos, líneas y triángulos. Las prácticas 1-4 muestran cómo crear formas básicas como un tablero de ajedrez, una estrella, un cubo con líneas y un cubo delineado utilizando comandos como glBegin, glVertex y glEnd.
Manual de Practicas de Open GL con Dev C++Alincita Simon
Este documento presenta un manual de prácticas para OpenGL. Explica brevemente qué es OpenGL y describe algunas librerías relacionadas como GLU, GLUT y GLAUX. Luego detalla los pasos para configurar el entorno de desarrollo Dev-C++ en Windows para usar OpenGL. Finalmente incluye un índice con 20 ejemplos prácticos de dibujo 2D y 3D usando OpenGL.
El documento presenta un manual sobre OpenGL. Explica que OpenGL es una interfaz de hardware gráfico que define funciones para acceder a las capacidades de una tarjeta gráfica. Incluye ejemplos de código para crear primitivas gráficas como un tablero de ajedrez, un cubo con líneas, una estrella y una pirámide usando OpenGL.
Este documento presenta 13 prácticas de programación en OpenGL. La primera práctica muestra cómo crear un tablero de ajedrez usando puntos. La segunda práctica dibuja una estrella con líneas. La tercera práctica mejora el uso de líneas para dibujar un cubo. La cuarta práctica enseña a rellenar cuadrados y delinearlos para formar un cubo.
Este documento presenta un manual de prácticas sobre el uso de software de diseño para el manejo de gráficos. Incluye investigación sobre OpenGL, código para crear varias figuras geométricas como un tablero de ajedrez, una estrella, un cubo con líneas y uno delineado, y explica cómo configurar OpenGL en Dev C++. El manual proporciona código y explicaciones detalladas para crear diferentes objetos 2D y 3D usando funciones de OpenGL.
Este documento presenta un manual de prácticas de OpenGL con 15 ejercicios que incluyen: 1) la creación de un tablero de ajedrez, 2) una estrella, 3) un cubo con líneas, 4) un cubo delineado, 5) un muñeco con triángulos, 6) una casita, 7) un oso, 8) un cubo con cubitos, 9) un muñeco con formas, 10) una animación de círculo rotando, 11) un sistema solar, 12) un movimiento en ocho, 13) un semáfor
Este programa permite resolver sistemas de ecuaciones lineales mediante el método de Gauss-Jordan. El programa guía al usuario a través de un menú con opciones para introducir el número de variables, capturar los coeficientes de la matriz, aplicar el método de Gauss-Jordan para reducir la matriz a escalonada reducida e imprimir los resultados.
El documento describe un programa en C++ que dibuja líneas de diferentes colores en una ventana gráfica utilizando OpenGL. Inicializa la ventana, establece el color de fondo en negro y carga las matrices de proyección y modelado. Luego dibuja tres líneas de colores rosa, azul y morado usando coordenadas de vértices y funciones de dibujo de líneas de OpenGL.
Similar a Manual de practicas de open gl con dev c (16)
1. Manual de Practicas de Open GL con Dev C++
4. Colegio de Estudios Científicos Y Tecnológicos del Estado de México Índice
1. Tablero de Ajedrez
2. Estrella
3. Cubo con líneas
4. Cubo delineado
5. Muñeco con triángulos
6. Casita
7. Oso
8. Cubo con cubitos
9. Muñeco con formas
10. Animación circulo
11. Animación circulo rotando
12. Animación sistema solar
13. Movimiento en ocho
14. Semáforo
15. Objetos 3D Wire (9)
16. Objetos 3D Solid (9)
17. Interacción Teclado
18. Interacción con mouse
19. Interacción de objetos 3D con mouse y teclado
20. Cubo 3D con líneas 4
tablero de ajedrez
#include <GL/glut.h>
#include <GL/gl.h>
2. #include <GL/glu.h>void inicializa(void){glClearColor(0.0,3.0,5.0,1.0); //color de
fondoglMatrixMode(GL_PROJECTION); //Modo de proyeccionglLoadIdentity(); //Establece los
parametros de proyecciongluOrtho2D(0.0, 1050.0, 0.0, 1000.0); //vista ortogonal}void dibuja(void)
//funcion dibuja{glClear(GL_COLOR_BUFFER_BIT); //borra pantallaglColor3f(0.0 , 0.0 ,
0.0);glPointSize(60);glBegin(GL_POINTS);glVertex2i(100,100);glVertex2i(347,100);glVertex2i(597,1
00);glVertex2i(848,100);glVertex2i(220,220);glVertex2i(473,220);glVertex2i(723,220); 5
6. Colegio de Estudios Científicos Y Tecnológicos del Estado de
MéxicoglVertex2i(970,220);glVertex2i(100,340);glVertex2i(347,340);glVertex2i(597,340);glVertex2
i(848,340);glVertex2i(220,460);glVertex2i(473,460);glVertex2i(723,460);glVertex2i(970,460);glVert
ex2i(100,580);glVertex2i(347,580);glVertex2i(597,580);glVertex2i(848,580);glVertex2i(220,700);gl
Vertex2i(473,700);glVertex2i(723,700);glVertex2i(970,700);glVertex2i(100,820);glVertex2i(347,820
);glVertex2i(597,820);glVertex2i(848,820);glEnd();glColor3f(1.0 , 1.0 ,
1.0);glPointSize(60);glBegin(GL_POINTS);glVertex2i(220,100);glVertex2i(473,100); 6
7. Colegio de Estudios Científicos Y Tecnológicos del Estado de
MéxicoglVertex2i(723,100);glVertex2i(970,100);glVertex2i(100,220);glVertex2i(347,220);glVertex2
i(597,220);glVertex2i(848,220);glVertex2i(220,340);glVertex2i(473,340);glVertex2i(723,340);glVert
ex2i(970,340);glVertex2i(100,460);glVertex2i(347,460);glVertex2i(597,460);glVertex2i(848,460);gl
Vertex2i(220,580);glVertex2i(473,580);glVertex2i(723,580);glVertex2i(970,580);glVertex2i(100,700
);glVertex2i(347,700);glVertex2i(597,700);glVertex2i(848,700);glVertex2i(220,820);glVertex2i(473,
820);glVertex2i(723,820);glVertex2i(970,820);glEnd(); 7
8. Colegio de Estudios Científicos Y Tecnológicos del Estado de MéxicoglFlush(); //forza dibujo}int
main (int argc, char** argv) //metodo main{glutInit(&argc, argv); //incializa
GLUTglutInitDisplayMode(GLUT_SINGLE | GLUT_RGBA); //establece el modo
devisualizaciónglutInitWindowSize(500,500); //tamaño de la ventanaglutInitWindowPosition(0,0);
//posicion inicial de la ventanaglutCreateWindow("TABLERO DE AJEDREZ"); //nombre de la
ventanainicializa();glutDisplayFunc(dibuja); //Envia los graficos a la ventana
devisualizaciónglutMainLoop(); //muestra todo y esperareturn 0; //retorna un valor de cero} 8
9. Colegio de Estudios Científicos Y Tecnológicos del Estado de MéxicoEstrella//estrella#include
<GL/glut.h>#include <GL/gl.h>#include <GL/glu.h>void
inicializa(void){glClearColor(0.0,1.0,1.0,0.0); //color de fondoglMatrixMode(GL_PROJECTION);
//Modo de proyeccionglLoadIdentity(); //Establece los parametros de proyecciongluOrtho2D(0.0,
1000.0, 0.0, 1000.0); //vista ortogonal}void dibuja(void) //funcion
dibuja{glClear(GL_COLOR_BUFFER_BIT); //borra
pantallaglLineWidth(2);glBegin(GL_LINES);glVertex2i(50,50);glVertex2i(250,400);glVertex2i(250,40
0);glVertex2i(400,50);glVertex2i(400,50);glVertex2i(50,300);glVertex2i(50,300);glVertex2i(400,300
); 9
10. Colegio de Estudios Científicos Y Tecnológicos del Estado de
MéxicoglVertex2i(400,300);glVertex2i(50,50);glEnd();glFlush(); //forza dibujo}int main (int argc,
char** argv) //metodo main{glutInit(&argc, argv); //incializa
3. GLUTglutInitDisplayMode(GLUT_SINGLE | GLUT_RGBA); //establece el modo
devisualizaciónglutInitWindowSize(500,500); //tamaño de la ventanaglutInitWindowPosition(0,0);
//posicion inicial de la ventanaglutCreateWindow("estrella"); //nombre de la
ventanainicializa();glutDisplayFunc(dibuja); //Envia los graficos a la ventana
devisualizaciónglutMainLoop(); //muestra todo y esperareturn 0; //retorna un valor de cero} 10
11. Colegio de Estudios Científicos Y Tecnológicos del Estado de MéxicoCubo con líneas//cubo con
lineas#include <GL/glut.h>#include <GL/gl.h>#include <GL/glu.h>void
inicializa(void){glClearColor(0.0,1.0,1.0,0.0); //color de fondoglMatrixMode(GL_PROJECTION);
//Modo de proyeccionglLoadIdentity(); //Establece los parametros de proyecciongluOrtho2D(0.0,
1000.0, 0.0, 1000.0); //vista ortogonal}void dibuja(void) //funcion
dibuja{glClear(GL_COLOR_BUFFER_BIT); //borra
pantallaglLineWidth(2);glBegin(GL_LINES);//enfrenteglVertex2i(50,50);glVertex2i(50,300);glVertex
2i(50,300); 11
12. Colegio de Estudios Científicos Y Tecnológicos del Estado de
MéxicoglVertex2i(300,300);glVertex2i(300,300);glVertex2i(300,50);glVertex2i(300,50);glVertex2i(5
0,50);//atrasglVertex2i(150,150);glVertex2i(150,400);glVertex2i(150,400);glVertex2i(400,400);glVe
rtex2i(400,400);glVertex2i(400,150);glVertex2i(400,150);glVertex2i(150,150);//linea
izquierdaglVertex2i(50,300);glVertex2i(150,400);//linea
derechaglVertex2i(300,300);glVertex2i(400,400);//linea izquierda
abajoglVertex2i(50,50);glVertex2i(150,150);//linea derecha abajoglVertex2i(300,50); 12
13. Colegio de Estudios Científicos Y Tecnológicos del Estado de
MéxicoglVertex2i(400,150);glEnd();glFlush(); //forza dibujo}int main (int argc, char** argv)
//metodo main{glutInit(&argc, argv); //incializa GLUTglutInitDisplayMode(GLUT_SINGLE |
GLUT_RGBA); //establece el modo devisualizaciónglutInitWindowSize(500,500); //tamaño de la
ventanaglutInitWindowPosition(0,0); //posicion inicial de la ventanaglutCreateWindow("mi
primera ventana"); //nombre de la ventanainicializa();glutDisplayFunc(dibuja); //Envia los graficos
a la ventana devisualizaciónglutMainLoop(); //muestra todo y esperareturn 0; //retorna un valor
de cero} 13
14. Colegio de Estudios Científicos Y Tecnológicos del Estado de MéxicoCubo delineado//cubo
delineado#include <GL/glut.h>#include <GL/gl.h>#include <GL/glu.h>void
inicializa(void){glClearColor(0.0,1.0,1.0,0.0); //color de fondoglMatrixMode(GL_PROJECTION);
//Modo de proyeccionglLoadIdentity(); //Establece los parametros de proyecciongluOrtho2D(0.0,
1000.0, 0.0, 1000.0); //vista ortogonal}void dibuja(void) //funcion dibuja{ 14
15. Colegio de Estudios Científicos Y Tecnológicos del Estado de
MéxicoglClear(GL_COLOR_BUFFER_BIT); //borra pantallaglColor3f(1.0 , 0.0 ,
0.0);glPointSize(50);glBegin(GL_QUADS);//ATRASglColor3f(0.0 , 0.0 ,
0.0);glVertex2d(100,150);glVertex2d(300,100);glVertex2d(300,350);glVertex2d(100,350);//ABAJOg
lColor3f(0.0 , 0.0 ,
0.0);glVertex2d(200,100);glVertex2d(400,100);glVertex2d(300,150);glVertex2d(100,150);//izquier
4. doglColor3f(0.0 , 0.1 ,
0.1);glVertex2d(100,150);glVertex2d(200,100);glVertex2d(200,300);glVertex2d(100,350);//derech
oglColor3f(1.1 , 1.1 , 1.1); 15
16. Colegio de Estudios Científicos Y Tecnológicos del Estado de
MéxicoglVertex2d(300,150);glVertex2d(400,100);glVertex2d(400,300);glVertex2d(300,350);//arrib
aglColor3f(1.2 , 0.0 ,
0.0);glVertex2d(200,300);glVertex2d(400,300);glVertex2d(300,350);glVertex2d(100,350);//enfrent
eglColor3f(1.5 , 1.5 ,
0.0);glVertex2d(200,100);glVertex2d(400,100);glVertex2d(400,300);glVertex2d(200,300);glEnd();gl
Flush(); //forza dibujo}int main (int argc, char** argv) //metodo main{glutInit(&argc, argv);
//incializa GLUTglutInitDisplayMode(GLUT_SINGLE | GLUT_RGBA); //establece el modo
devisualizaciónglutInitWindowSize(500,500); //tamaño de la ventana 16
17. Colegio de Estudios Científicos Y Tecnológicos del Estado de
MéxicoglutInitWindowPosition(0,0); //posicion inicial de la ventanaglutCreateWindow("mi
primera ventana"); //nombre de la ventanainicializa();glutDisplayFunc(dibuja); //Envia los graficos
a la ventana devisualizaciónglutMainLoop(); //muestra todo y esperareturn 0; //retorna un valor
de cero}Muñeco con Triángulos#include <GL/glut.h>#include <GL/gl.h>#include <GL/glu.h> 17
18. Colegio de Estudios Científicos Y Tecnológicos del Estado de Méxicovoid
inicializa(void){glClearColor(0.0,0.0,0.0,0.0); //color de fondoglMatrixMode(GL_PROJECTION);
//Modo de proyeccionglLoadIdentity(); //Establece los parametros de proyecciongluOrtho2D(0.0,
1000.0, 0.0, 1000.0); //vista ortogonal}void dibuja(void) //funcion
dibuja{glClear(GL_COLOR_BUFFER_BIT); //borra pantallaglColor3f(1.0 , 0.0 ,
1.0);glLineWidth(5);glBegin(GL_TRIANGLES);glVertex2i(97,12);glColor3f(1.0 , 0.0 ,
1.0);glVertex2i(167,12);glColor3f(0.0 , 0.0 , 1.0);glVertex2i(167,54);glVertex2i(140,55);glColor3f(1.0
, 0.0 , 1.0);glVertex2i(190,55);glColor3f(0.0 , 0.0 , 1.0);glVertex2i(190,145);glVertex2i(260,12); 18
19. Colegio de Estudios Científicos Y Tecnológicos del Estado de MéxicoglColor3f(1.0 , 0.0 ,
1.0);glVertex2i(333,12);glColor3f(0.0 , 0.0 , 1.0);glVertex2i(260,54);glVertex2i(240,54);glColor3f(1.0
, 0.0 , 1.0);glVertex2i(290,54);glColor3f(0.0 , 0.0 ,
1.0);glVertex2i(240,145);glVertex2i(145,375);glColor3f(1.0 , 0.0 ,
1.0);glVertex2i(300,375);glColor3f(0.0 , 0.0 ,
1.0);glVertex2i(230,455);glVertex2i(320,300);glColor3f(1.0 , 0.0 ,
1.0);glVertex2i(320,150);glColor3f(0.0 , 0.0 ,
1.0);glVertex2i(275,300);glVertex2i(150,300);glColor3f(1.0 , 0.0 ,
1.0);glVertex2i(110,300);glColor3f(0.0 , 0.0 , 1.0);glVertex2i(110,150); 19
20. Colegio de Estudios Científicos Y Tecnológicos del Estado de
MéxicoglVertex2i(150,300);glColor3f(1.0 , 0.0 , 1.0);glVertex2i(110,300);glColor3f(0.0 , 0.0 ,
1.0);glVertex2i(110,150);glVertex2i(260,380);glColor3f(1.0 , 0.0 ,
1.0);glVertex2i(183,380);glColor3f(0.0 , 0.0 , 1.0);glVertex2i(219,309);glColor3f(1.0 , 0.0 ,
1.0);glVertex2i(340,30);glVertex2i(395,30);glVertex2i(420,130);glColor3f(1.0 , 0.0 ,
5. 1.0);glVertex2i(340,30);glVertex2i(395,30);glVertex2i(420,130);glColor3f(1.0 , 0.0 ,
1.0);glVertex2i(372,181);glVertex2i(330,208);glColor3f(0.0 , 0.0 ,
1.0);glVertex2i(326,150);glColor3f(1.0 , 0.0 , 1.0); 20
21. Colegio de Estudios Científicos Y Tecnológicos del Estado de
MéxicoglVertex2i(102,152);glVertex2i(59,179);glColor3f(0.0 , 0.0 ,
1.0);glVertex2i(101,208);glEnd();glBegin(GL_QUADS);glVertex2i(155,155);glColor3f(1.0 , 0.0 ,
1.0);glVertex2i(155,305);glVertex2i(280,305);glColor3f(1.0 , 0.0 ,
1.0);glVertex2i(280,155);glColor3f(010 , 1.0 , .0);glVertex2i(350,250);glColor3f(0.0 , 1.0 ,
.0);glVertex2i(370,420);glColor3f(0.0 , 1.0 , .0);glVertex2i(490,250);glColor3f(1.0 , 1.0 ,
.0);glVertex2i(420,135);glEnd();glFlush(); //forza dibujo}int main (int argc, char** argv) //metodo
main{ 21
22. Colegio de Estudios Científicos Y Tecnológicos del Estado de MéxicoglutInit(&argc, argv);
//incializa GLUTglutInitDisplayMode(GLUT_SINGLE | GLUT_RGBA); //establece el modo
devisualizaciónglutInitWindowSize(500,500); //tamaño de la ventanaglutInitWindowPosition(0,0);
//posicion inicial de la ventanaglutCreateWindow("Muñeco con triangulos"); //nombre de la
ventanainicializa();glutDisplayFunc(dibuja); //Envia los graficos a la ventana
devisualizaciónglutMainLoop(); //muestra todo y esperareturn 0; //retorna un valor de cero}Casita
22
23. Colegio de Estudios Científicos Y Tecnológicos del Estado de México#include
<GL/glut.h>#include <GL/gl.h>#include <GL/glu.h>void
inicializa(void){glClearColor(0.0,0.0,1.0,1.0);glMatrixMode(GL_PROJECTION);glLoadIdentity();gluOr
tho2D(0.0, 900.0, 0.0, 900.0);}void dibuja(void){glClear(GL_COLOR_BUFFER_BIT);glColor3f(0.12
,0.12 ,0.12
);glLineWidth(2);glBegin(GL_QUADS);glVertex2i(0,80);glVertex2i(1000,80);glVertex2i(1000,0);glVer
tex2i(0,0);glEnd();glColor3f(1.0,1.0,1.0);glBegin(GL_LINES);glVertex2i(0,40);glVertex2i(50,40); 23
24. Colegio de Estudios Científicos Y Tecnológicos del Estado de
MéxicoglVertex2i(70,40);glVertex2i(120,40);glVertex2i(140,40);glVertex2i(190,40);glVertex2i(210,
40);glVertex2i(260,40);glVertex2i(280,40);glVertex2i(330,40);glVertex2i(350,40);glVertex2i(400,40
);glVertex2i(420,40);glVertex2i(470,40);glVertex2i(490,40);glVertex2i(540,40);glVertex2i(560,40);gl
Vertex2i(610,40);glVertex2i(630,40);glVertex2i(680,40);glVertex2i(700,40);glVertex2i(750,40);glVe
rtex2i(770,40);glVertex2i(820,40);glVertex2i(840,40);glVertex2i(890,40);glEnd(); 24
25. Colegio de Estudios Científicos Y Tecnológicos del Estado de MéxicoglColor3f(1.0 ,1.0 ,0.0
);glLineWidth(5);glBegin(GL_LINES);glVertex2i(0,84);glVertex2i(1000,84);glEnd();glColor3f(0.21,0.2
1,0.21);glBegin(GL_POLYGON);glVertex2i(0,118);glVertex2i(345,118);glVertex2i(345,193);glVertex
2i(405,193);glVertex2i(405,118);glVertex2i(1000,118);glVertex2i(1000,88);glVertex2i(0,88);glEnd();
glColor3f(0.0,1.0,0.0);glBegin(GL_POLYGON);glVertex2i(0,118);glVertex2i(0,238);glVertex2i(75,238
);glVertex2i(75,193);glVertex2i(345,193); 25
6. 26. Colegio de Estudios Científicos Y Tecnológicos del Estado de
MéxicoglVertex2i(345,118);glVertex2i(0,118);glEnd();glColor3f(0.0,1.0,0.0);glBegin(GL_POLYGON);
glVertex2i(405,119);glVertex2i(405,193);glVertex2i(540,193);glVertex2i(540,239);glVertex2i(1000,
239);glVertex2i(1000,119);glVertex2i(405,119);glEnd();glColor3f(1.0,0.52,0.05);glBegin(GL_QUADS
);glVertex2i(75,193);glVertex2i(75,313);glVertex2i(90,313);glVertex2i(90,193);glEnd();glColor3f(1.0
,0.0,0.0);glBegin(GL_POLYGON);glVertex2i(61,313);glVertex2i(75,345); 26
27. Colegio de Estudios Científicos Y Tecnológicos del Estado de
MéxicoglVertex2i(210,345);glVertex2i(210,313);glEnd();glColor3f(0.80,0.80,0.80);glBegin(GL_QUA
DS);glVertex2i(90,193);glVertex2i(90,313);glVertex2i(210,313);glVertex2i(210,193);glEnd();glColor
3f(1.0,1.0,0.28);glBegin(GL_QUADS);glVertex2i(210,193);glVertex2i(210,450);glVertex2i(540,450);g
lVertex2i(540,193);glEnd();glColor3f(0.95,0.47,0.0);glBegin(GL_QUADS);glVertex2i(210,313);glVert
ex2i(210,328);glVertex2i(540,328);glVertex2i(540,313);glEnd(); 27
28. Colegio de Estudios Científicos Y Tecnológicos del Estado de
MéxicoglColor3f(0.95,0.47,0.0);glBegin(GL_QUADS);glVertex2i(330,193);glVertex2i(330,434);glVer
tex2i(344,434);glVertex2i(344,193);glEnd();glColor3f(0.95,0.47,0.0);glBegin(GL_QUADS);glVertex2i
(405,434);glVertex2i(420,434);glVertex2i(420,193);glVertex2i(405,193);glEnd();glColor3f(0.77,0.0,0
.0);glBegin(GL_TRIANGLES);glVertex2i(316,434);glVertex2i(375,480);glVertex2i(434,434);glEnd();gl
Color3f(1.0,0.0,0.0);glBegin(GL_POLYGON);glVertex2i(164,449);glVertex2i(209,494);glVertex2i(539
,494); 28
29. Colegio de Estudios Científicos Y Tecnológicos del Estado de
MéxicoglVertex2i(584,449);glVertex2i(449,415);glVertex2i(374,480);glVertex2i(335,449);glEnd();gl
Flush();}int main (int argc, char** argv){glutInit(&argc, argv);glutInitDisplayMode(GLUT_SINGLE |
GLUT_RGBA);glutInitWindowSize(1000,1000);glutInitWindowPosition(0,0);glutCreateWindow("Cas
a");inicializa();glutDisplayFunc(dibuja);glutMainLoop();return 0;} 29
30. Colegio de Estudios Científicos Y Tecnológicos del Estado de MéxicoOso//oso#include
<GL/glut.h>#include <GL/gl.h>#include <math.h>void inicializa(void){glClearColor(1.0,1.0,1.0,0.0);
//color de fondoglMatrixMode(GL_PROJECTION); //Modo de proyeccionglLoadIdentity();
//Establece los parametros de proyecciongluOrtho2D(0.0, 500.0, 0.0, 500.0); //vista
ortogonal}void circuloc(int x, int y, int t, int radio) 30
31. Colegio de Estudios Científicos Y Tecnológicos del Estado de México{ int angulo=0;
glPointSize(t); glBegin(GL_POINTS);//glColor3f (1.0, 0.0, 1.0); glVertex2f(x,y); //glColor3f(0,0.0,0.0);
for (angulo=0;angulo<=360; angulo+=1){ glVertex2f(x + sin(angulo) * radio,y + cos(angulo) *
radio);} glEnd();}void circulo(int x, int y, int radio){int angulo=0; glBegin(GL_TRIANGLE_FAN);//
glColor3f (1.0, 0.0, 1.0); glVertex2f(x,y); for (angulo=0;angulo<=360; angulo+=1){ glVertex2f(x +
sin(angulo) * radio,y + cos(angulo) * radio);} glEnd();}void dibuja(void) //funcion dibuja 31
32. Colegio de Estudios Científicos Y Tecnológicos del Estado de
México{glClear(GL_COLOR_BUFFER_BIT);glColor3f(0.8,0.5,0.4); //borra
pantallacirculo(190,190,40);glColor3f(0.7,0.2,0.4);circulo(190,190,20);glColor3f(0.8,0.5,0.4);circulo
7. (315,315,40);glColor3f(0.7,0.2,0.4);circulo(315,315,20);glColor3f(0.8,0.5,0.4);circulo(190,315,40);gl
Color3f(0.7,0.2,0.4);circulo(190,315,20);glColor3f(0.8,0.5,0.4);circulo(315,190,40);glColor3f(0.7,0.2
,0.4);circulo(315,190,20);glColor3f(0.8,0.5,0.4);circulo(250,360,60);glColor3f(1.0,1.0,1.0);circulo(27
0,380,15);glColor3f(0.0,0.0,0.0);circulo(270,380,10);glColor3f(1.0,1.0,1.0); 32
33. Colegio de Estudios Científicos Y Tecnológicos del Estado de
Méxicocirculo(230,380,15);glColor3f(0.0,0.0,0.0);circulo(230,380,10);glColor3f(0.0,0.0,0.0);circulo(
250,340,15);glColor3f(0.8,0.5,0.4);circulo(300,420,25);glColor3f(0.7,0.2,0.4);circulo(300,420,10);gl
Color3f(0.8,0.5,0.4);circulo(200,420,25);glColor3f(0.7,0.2,0.4);circulo(200,420,10);glColor3f(0.7,0.2
,0.6);circulo(250,250,50);glColor3f(0.8,0.5,0.4);circuloc(250,250,5,50);glFlush(); //forza dibujo}int
main (int argc, char** argv) //metodo main{glutInit(&argc, argv); //incializa
GLUTglutInitDisplayMode(GLUT_SINGLE | GLUT_RGBA); //establece el modo
devisualizaciónglutInitWindowSize(500,500); //tamaño de la ventana 33
34. Colegio de Estudios Científicos Y Tecnológicos del Estado de
MéxicoglutInitWindowPosition(100,100); //posicion inicial de la
ventanaglutCreateWindow("Ventana"); //nombre de la ventanainicializa();glutDisplayFunc(dibuja);
//Envia los graficos a la ventana devisualizaciónglutMainLoop(); //muestra todo y esperareturn 0;
//retorna un valor de cero} 34
35. Colegio de Estudios Científicos Y Tecnológicos del Estado de MéxicoCubo con Cubitos//cubo de
cubos#include <GL/glut.h>#include <GL/gl.h>void inicializa(void){glClearColor(1.0,1.0,1.0,0.0);
//color de fondoglMatrixMode(GL_PROJECTION); //Modo de proyeccionglLoadIdentity();
//Establece los parametros de proyecciongluOrtho2D(0.0, 570.0, 0.0, 570.0); //vista
ortogonal}void cubo (int x, int y,int t,int l){ double a=.8,b=.6;glColor3f(0.0 , 0.0 ,
0.0);glBegin(GL_QUADS);glVertex2f(x,y);glVertex2f(x+t,y);glVertex2f(x+t,y+t);glVertex2f(x,y+t);glCo
lor3f(0.0 , 0.0 , 0.0);glVertex2f(x,y+t);glVertex2f(x+t,y+t);glVertex2f(x+t+(t*a),y+t+(t*b)); 35
36. Colegio de Estudios Científicos Y Tecnológicos del Estado de
MéxicoglVertex2f(x+(t*a),y+t+(t*b));glColor3f(0.0 , 0.0 ,
0.0);glVertex2f(x+t,y+t);glVertex2f(x+t+(t*a),y+t+(t*b));glVertex2f(x+t+(t*a),y+(t*b));glVertex2f(x+t
,y);glEnd();glColor3f(1.0 , 0.0 ,
0.0);glLineWidth(.8);glBegin(GL_LINES);glVertex2f(x,y);glVertex2f(x+t,y);glVertex2f(x+t,y);glVertex2
f(x+t,y+t);glVertex2f(x+t,y+t);glVertex2f(x,y+t);glVertex2f(x,y);glVertex2f(x,y+t);glVertex2f(x+t,y+t);
glVertex2f(x+t,y+t);glVertex2f(x+t+(t*a),y+t+(t*b));glVertex2f(x+t+(t*a),y+t+(t*b));glVertex2f(x+(t*
a),y+t+(t*b));glVertex2f(x,y+t);glVertex2f(x+t+(t*a),y+t+(t*b)); 36
37. Colegio de Estudios Científicos Y Tecnológicos del Estado de
MéxicoglVertex2f(x+(t*a),y+t+(t*b));glVertex2f(x+t,y+t);glVertex2f(x+t+(t*a),y+t+(t*b));glVertex2f(
x+t+(t*a),y+t+(t*b));glVertex2f(x+t+(t*a),y+(t*b));glVertex2f(x+t+(t*a),y+(t*b));glVertex2f(x+t,y);gl
Vertex2f(x+t,y+t);glEnd(); }void dibuja(void) //funcion dibuja{glClear(GL_COLOR_BUFFER_BIT);
//borra pantallaglColor3f(1.0 , 0.0 , 0.0);//columna izquierda atrasfor(int
i=0;i<=10;i++){cubo(260,220+20*i,20,5);}//abajo atrasfor(int
8. j=0;j<=9;j++){cubo(280+20*j,220,20,5);}//arriba de atrasfor(int
j=0;j<=10;j++){cubo(260+20*j,420,20,5); 37
38. Colegio de Estudios Científicos Y Tecnológicos del Estado de México}//columna derecha
atrasfor(int i=0;i<=10;i++){cubo(480,220+20*i,20,5);}//los de enfrente//diagonales izquiercafor(int
k=0;k<=8;k++){cubo(245-20*k*.8,407-20*k*.6,20,5);cubo(245-20*k*.8,207-
20*k*.6,20,5);}//columna izquierda frentefor(int i=0;i<=10;i++){cubo(100,100+20*i,20,5);}//abajo
frentefor(int j=0;j<=10;j++){cubo(120+20*j,100,20,5);//arriba
frentecubo(120+20*j,300,20,5);}//diagonales derechafor(int k=0;k<=8;k++){cubo(466-20*k*.8,408-
20*k*.6,20,5);cubo(466-20*k*.8,208-20*k*.6,20,5); 38
39. Colegio de Estudios Científicos Y Tecnológicos del Estado de México}//columna derecha
frentefor(int i=0;i<=10;i++){cubo(320,100+20*i,20,5);}glFlush(); //forza dibujo}int main (int argc,
char** argv) //metodo main{glutInit(&argc, argv); //incializa
GLUTglutInitDisplayMode(GLUT_SINGLE | GLUT_RGBA); //establece el modo
devisualizaciónglutInitWindowSize(500,500); //tamaño de la
ventanaglutInitWindowPosition(100,100); //posicion inicial de la
ventanaglutCreateWindow("Ventana"); //nombre de la ventanainicializa();glutDisplayFunc(dibuja);
//Envia los graficos a la ventana devisualizaciónglutMainLoop(); //muestra todo y esperareturn 0;
//retorna un valor de cero} 39
40. Colegio de Estudios Científicos Y Tecnológicos del Estado de MéxicoMuñeco con
formas//muñeco#include <GL/glut.h>#include <GL/gl.h>#include <math.h>void
inicializa(void){glClearColor(1.0,1.0,1.0,0.0); //color de fondoglMatrixMode(GL_PROJECTION);
//Modo de proyeccionglLoadIdentity(); //Establece los parametros de proyecciongluOrtho2D(0.0,
500.0, 0.0, 500.0); //vista ortogonal 40
41. Colegio de Estudios Científicos Y Tecnológicos del Estado de México}void circuloc(int x, int y,
int t, int radio){ int angulo=0; glPointSize(t); glBegin(GL_POINTS);//glColor3f (1.0, 0.0, 1.0);
glVertex2f(x,y); //glColor3f(0,0.0,0.0); for (angulo=0;angulo<=360; angulo+=1){ glVertex2f(x +
sin(angulo) * radio,y + cos(angulo) * radio);} glEnd();}void circulo(int x, int y, int radio){ int
angulo=0; glBegin(GL_TRIANGLE_FAN);// glColor3f (1.0, 0.0, 1.0); glVertex2f(x,y); for
(angulo=0;angulo<=360; angulo+=1){ glVertex2f(x + sin(angulo) * radio,y + cos(angulo) * radio);}
glEnd();} 41
42. Colegio de Estudios Científicos Y Tecnológicos del Estado de Méxicovoid dibuja(void) //funcion
dibuja{glClear(GL_COLOR_BUFFER_BIT);glColor3f(0.8,0.5,0.4); //borra
pantallacirculo(225,400,80);glColor3f(0.0,0.0,0.0);circulo(200,440,7);glColor3f(0.0,0.0,0.0);circulo(
240,440,7);glEnd();glColor3f(0.0 , 0.0 ,
0.0);glBegin(GL_TRIANGLES);glVertex2i(260,469);glVertex2i(250,499);glVertex2i(240,480);glEnd();g
lColor3f(0.0 , 0.0 ,
0.0);glBegin(GL_TRIANGLES);glVertex2i(240,480);glVertex2i(230,500);glVertex2i(220,480);glEnd();g
lColor3f(0.0 , 0.0 , 0.0);glBegin(GL_TRIANGLES); 42
9. 43. Colegio de Estudios Científicos Y Tecnológicos del Estado de
MéxicoglVertex2i(220,480);glVertex2i(200,500);glVertex2i(180,465);glEnd();glBegin(GL_LINES);glV
ertex2i(220,480);glEnd();glBegin(GL_POLYGON);glColor3f(0.8,0.1,0.1);glVertex2i(160,160);glVertex
2i(300,160);glVertex2i(300,320);glVertex2i(260,320);glVertex2i(225,280);glVertex2i(200,320);glVer
tex2i(160,320);glEnd();glBegin(GL_POLYGON);glVertex2i(160,320);glVertex2i(160,280);glVertex2i(
120,200);glVertex2i(80,200);glEnd();glBegin(GL_POLYGON);glVertex2i(300,320); 43
44. Colegio de Estudios Científicos Y Tecnológicos del Estado de
MéxicoglVertex2i(300,280);glVertex2i(340,200);glVertex2i(380,200);glEnd();//diglColor3f(1.0 , 1.0 ,
0.0);glBegin(GL_POLYGON);glVertex2i(160,140);glVertex2i(160,160);glVertex2i(300,160);glVertex2
i(300,140);glEnd();glColor3f(0.0 , 0.0 ,
0.0);glBegin(GL_POLYGON);glVertex2i(220,140);glVertex2i(220,160);glVertex2i(240,160);glVertex2
i(240,140);glEnd();glColor3f(0.0 , 0.2 ,
0.6);glBegin(GL_POLYGON);glVertex2i(160,140);glVertex2i(100,40);glVertex2i(160,20);glVertex2i(2
25,140); 44
45. Colegio de Estudios Científicos Y Tecnológicos del Estado de MéxicoglEnd();glColor3f(0.0 , 0.2 ,
0.6);glBegin(GL_POLYGON);glVertex2i(225,140);glVertex2i(280,20);glVertex2i(340,40);glVertex2i(3
00,140);glEnd();glColor3f(0.0 , 0.0 ,
0.0);glBegin(GL_TRIANGLES);glVertex2i(275,20);glVertex2i(380,10);glVertex2i(340,40);glEnd();glCol
or3f(0.0 , 0.0 ,
0.0);glBegin(GL_TRIANGLES);glVertex2i(160,20);glVertex2i(100,40);glVertex2i(50,20);glEnd();glFlus
h(); //forza dibujo}int main (int argc, char** argv) //metodo main{glutInit(&argc, argv); //incializa
GLUT 45
46. Colegio de Estudios Científicos Y Tecnológicos del Estado de
MéxicoglutInitDisplayMode(GLUT_SINGLE | GLUT_RGBA); //establece el modo
devisualizaciónglutInitWindowSize(500,500); //tamaño de la
ventanaglutInitWindowPosition(100,100); //posicion inicial de la
ventanaglutCreateWindow("Ventana"); //nombre de la ventanainicializa();glutDisplayFunc(dibuja);
//Envia los graficos a la ventana devisualizaciónglutMainLoop(); //muestra todo y esperareturn 0;
//retorna un valor de cero}Animación circulo#include <unistd.h>#include <GL/glut.h> 46
47. Colegio de Estudios Científicos Y Tecnológicos del Estado de México#include <GL/gl.h>#include
<math.h>int x=1, y=1, z=1, a=1;void
inicializa(void){glClearColor(0.0,0.0,1.0,0.0);glMatrixMode(GL_PROJECTION);glLoadIdentity();gluOr
tho2D(0.0, 900.0, 0.0, 900.0);// el ancho y largo de nuestra pantalla}void circulo(int x, int y, int
radio){ int angulo=0; glBegin(GL_TRIANGLE_FAN); glColor3f (0.5, 0.5, 0.5); glVertex2f(x,y);
glColor3f(0,0.0,0.0); for (angulo=0;angulo<=360; angulo+=6){ glVertex2f(x + sin(angulo) * radio,y +
cos(angulo) * radio);} glEnd();}void dibuja(void){glClear(GL_COLOR_BUFFER_BIT |
GL_DEPTH_BUFFER_BIT);if(x>=1 && x<800){circulo(5+1*x,900,15); 47
48. Colegio de Estudios Científicos Y Tecnológicos del Estado de MéxicoglFlush();x++;}if(y>=1 &&
y<800 && x==800){circulo(805,900-y,15);glFlush();y++;}if(z>=1 && z<800 && x==800 &&
10. y==800){circulo(805-z,100,15);glFlush();z++;}if(a>=1 && a<800 && x==800 && y==800 &&
z==800){circulo(5,100+a,15);glFlush();a++;if(a==800){x=1; y=1; z=1;}}glutSwapBuffers();}int main
(int argc, char** argv){glutInit(&argc, argv); 48
49. Colegio de Estudios Científicos Y Tecnológicos del Estado de
MéxicoglutInitDisplayMode(GLUT_DOUBLE | GLUT_RGBA|
GLUT_DEPTH);glutInitWindowSize(1000,1000);glutInitWindowPosition(10,10);glutCreateWindow("
Movimiento de
bolita");inicializa();glutDisplayFunc(dibuja);glutIdleFunc(dibuja);glutMainLoop();return
0;}Animación Sistema solar#include <unistd.h>#include <GL/glut.h>#include <GL/gl.h>#include
<math.h> 49
50. Colegio de Estudios Científicos Y Tecnológicos del Estado de Méxicoint rad=100;double
ang=0;double a=0;double b=0;double c=0;double d=0;double e=0;double f=0;double g=0;void
inicializa(void){glClearColor(0.0,0.0,0.0,0.0);glMatrixMode(GL_PROJECTION);glLoadIdentity();gluOr
tho2D(0.0, 1000.0, 0.0, 1000.0);// el ancho y largo de nuestra pantalla}void circulo(int x, int y, int
radio){ int angulo=0; glBegin(GL_TRIANGLE_FAN); glVertex2f(x,y);for (angulo=0;angulo<=360;
angulo++){ glVertex2f(x + sin(angulo) * radio, y +cos(angulo) * radio);} glEnd();} 50
51. Colegio de Estudios Científicos Y Tecnológicos del Estado de Méxicovoid circuloc(int x, int y, int
t, int radio){ int angulo=0; glPointSize(t); glBegin(GL_POINTS);//glColor3f (1.0, 0.0, 1.0);
glVertex2f(x,y); //glColor3f(0,0.0,0.0); for (angulo=0;angulo<=100; angulo+=1){ glVertex2f(x +
sin(angulo) * radio,y + cos(angulo) * radio);} glEnd();}void
dibuja(void){glClear(GL_COLOR_BUFFER_BIT |
GL_DEPTH_BUFFER_BIT);//estoglColor3f(1.0,1.0,1.0);circuloc(500,500,1,100);circuloc(500,500,1,2
00);circuloc(500,500,1,300);circuloc(500,500,1,400);circuloc(500,500,1,55);circuloc(500,500,1,150)
;circuloc(500,500,1,250);circuloc(500,500,1,350); 51
52. Colegio de Estudios Científicos Y Tecnológicos del Estado de
MéxicoglColor3f(1.0,1.0,1.0);circulo( 500+ sin(ang) * rad,500 - cos(ang) * rad,10); //funcion
circuloglColor3f(1.0,0.0,0.0);circulo( 500+ sin(a) * 55,500 + cos(a) *
55,10);glColor3f(0.0,0.0,1.0);circulo( 500+ sin(b) * 150,500 - cos(b) *
150,13);glColor3f(0.0,1.0,0.0);circulo( 500+ sin(c) * 200,500 + cos(c) *
200,10);glColor3f(0.0,1.0,0.9);circulo( 500+ sin(d) * 250,500 - cos(d) *
250,20);glColor3f(0.0,1.0,1.0);circulo( 500+ sin(g) * 300,500 + cos(g) *
300,10);glColor3f(0.0,1.0,0.5);circulo( 500+ sin(e) * 350,500 - cos(e) *
350,20);glColor3f(1.0,1.0,0.0);circulo( 500+ sin(f) * 400,500 + cos(f) *
400,10);ang=ang+0.06;a=a+0.07;b=b+0.01;c=c+0.03;d=d+0.05;e=e+0.04;f=f+0.05;g=g+0.06;
//velocidad entre mas grande mas rapido y entre menos maslento 52
53. Colegio de Estudios Científicos Y Tecnológicos del Estado de Méxicofor(int
j=1;j<=10000000;j++){}//pausaif(ang==360){ang=0;}// se repite
idefinidamenteglColor3f(1.0,0.9,0.0);circulo(500,500,35);//solglFlush(); //forzar
dibujadoglutSwapBuffers(); //y esto}int main (int argc, char** argv){glutInit(&argc,
11. argv);glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGBA|
GLUT_DEPTH);//estotambienglutInitWindowSize(1000,1000);glutInitWindowPosition(10,10);glutCr
eateWindow("Sistema Solar");inicializa();glutDisplayFunc(dibuja);glutIdleFunc(dibuja);//esto es lo
que cambiaglutMainLoop();return 0;} 53
54. Colegio de Estudios Científicos Y Tecnológicos del Estado de MéxicoMovimiento en
Ocho#include <unistd.h>#include <GL/glut.h>#include <GL/gl.h>#include <math.h>int x=1,
x2=1,y=1;double a=6.15, b=6.15;void
inicializa(void){glClearColor(0.0,0.0,0.0,0.0);glMatrixMode(GL_PROJECTION);glLoadIdentity();gluOr
tho2D(0.0, 1000.0, 0.0, 1000.0);// el ancho y largo de nuestra pantalla}void circulo(int x, int y, int
radio){ int angulo=0; glBegin(GL_TRIANGLE_FAN); glVertex2f(x,y); 54
55. Colegio de Estudios Científicos Y Tecnológicos del Estado de México for
(angulo=0;angulo<=360; angulo+=6){ glVertex2f(x + sin(angulo) * radio,y + cos(angulo) * radio);}
glEnd();}void dibuja(void){glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);glColor3f
(1.0,0.9, 0.0);circulo(500,300,250);glColor3f (0.0,0.0, 0.0);circulo(500,300,150);glColor3f (1.0,0.9,
0.0);circulo(500,700,250);glColor3f (0.0,0.0, 0.0);circulo(500,700,150);//ocho//la otra
bolitaif(a>=6.15 && a<=12.41){circulo(500 - sin (a)*200,700 - cos(a)*200,40);a=a+
0.031;}else{circulo(500 - sin (b) *200,300 - cos(b)*-200,40);b=b +
0.1;if(b>12.4){a=6.15;b=6.15;}for(int j=0; j<=10000000; j++) {}} 55
56. Colegio de Estudios Científicos Y Tecnológicos del Estado de México// se repite
idefinidamenteglFlush(); //forzar dibujadoglutSwapBuffers(); //y esto}int main (int argc, char**
argv){glutInit(&argc, argv);glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGBA|
GLUT_DEPTH);//estotambienglutInitWindowSize(1000,1000);glutInitWindowPosition(10,10);glutCr
eateWindow("Movimiento en 8");inicializa();glutDisplayFunc(dibuja);glutIdleFunc(dibuja);//esto es
lo que cambiaglutMainLoop();return 0;} 56
57. Colegio de Estudios Científicos Y Tecnológicos del Estado de MéxicoSemáforoNombre
3D#include <GL/gl.h>#include <GL/glu.h>#include <GL/glut.h>#include <stdio.h>#include
<math.h>#include <stdlib.h>GLfloat anguloEsfera = 0.0f;GLfloat
girax=0,giray=0,zoom=0,e,f;GLboolean malla=GL_FALSE, ejes=GL_TRUE;void mover(void){
glTranslated(0,0,zoom); glRotated(girax,1.0,0.0,0.0); glRotated(giray,0.0,1.0,0.0); }void
creaMalla(void){ 57
58. Colegio de Estudios Científicos Y Tecnológicos del Estado de México int i, long_eje=10;
glColor3f(1.0,1.0,0.0); glBegin(GL_LINES); for(i=-long_eje;i<=long_eje;i++){ glVertex3f(i,-
long_eje,0); glVertex3f(i,long_eje,0); glVertex3f(-long_eje,i,0); glVertex3f(long_eje,i,0);
glVertex3f(i,0,-long_eje); glVertex3f(i,0,long_eje); glVertex3f(-long_eje,0,i);
glVertex3f(long_eje,0,i); } glEnd(); }void creaEjes(void){ glColor3f(0.0,0.0,0.0); glBegin(GL_LINES);
glColor3f(0.0,0.0,1.0); glVertex3f(-11.0,0.0,0.0); glVertex3f(11.0,0.0,0.0); glColor3f(1.0,0.0,0.0);
glVertex3f(0.0,-11.0,0.0); glVertex3f(0.0,11.0,0.0); 58
12. 59. Colegio de Estudios Científicos Y Tecnológicos del Estado de México glColor3f(0.0,1.0,0.0);
glVertex3f(0.0,0.0,-11.0); glVertex3f(0.0,0.0,11.0); glEnd(); glBegin(GL_TRIANGLES);
glColor3f(0.0,0.0,1.0); glVertex3f(11.0,0.0,0.0);glVertex3f(10.5,0.0,-.50); glVertex3f(10.5,0.0,.50);
glColor3f(1.0,0.0,0.0); glVertex3f(0.0,11.0,0.0); glVertex3f(-.50,10.5,0.0); glVertex3f(.50,10.5,0.0);
glColor3f(0.0,1.0,0.0); glVertex3f(0.0,0.0,11.0); glVertex3f(-.50,0.0,10.5); glVertex3f(.50,0.0,10.5);
//puntas otras glColor3f(0.0,0.0,1.0); glVertex3f(-11.0,0.0,0.0); glVertex3f(-10.5,0.0,.50);
glVertex3f(-10.5,0.0,-.50); glColor3f(1.0,0.0,0.0); glVertex3f(0.0,-11.0,0.0); glVertex3f(.50,-
10.5,0.0); 59
60. Colegio de Estudios Científicos Y Tecnológicos del Estado de México glVertex3f(-.50,-
10.5,0.0);glColor3f(0.0,1.0,0.0); glVertex3f(0.0,0.0,-11.0); glVertex3f(.50,0.0,-10.5); glVertex3f(-
.50,0.0,-10.5); glEnd(); }void init ( void ){ glClearColor(1.0,1.0,1.0,0.0) ;// Definimos el negro como
color de fondo glEnable(GL_DEPTH_TEST); // Activamos el z-Buffer glEnable(GL_LIGHTING); //
Activamos la iluminación glEnable(GL_LIGHT0); // Activamos la luz 0
glMatrixMode(GL_PROJECTION); // set the view volume shape glLoadIdentity(); glOrtho(-15,15,-
15,15,-30,30); glMatrixMode(GL_MODELVIEW); // position and aim the camera glLoadIdentity();
gluLookAt(5.0, 5.0, 5.0, 0.0, 0.0, 0.0, 0.0, 2.0, 0.0);}void dibuja( void ){glClear (
GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT ); 60
61. Colegio de Estudios Científicos Y Tecnológicos del Estado de México
glEnable(GL_DEPTH_TEST); // Activamos el z-Buffer glEnable(GL_LIGHTING); // Activamos la
iluminación glEnable(GL_LIGHT0); // Activamos la luz 0 //glShadeModel(GL_FLAT);glShadeModel
(GL_SMOOTH);// Cargamos la matriz identidad para reiniciar las transformaciones/* float angulo;
int i;glLineWidth(20);glBegin(GL_LINES); glColor3d(1,1,1);for (i=0; i<360; i+=10) { angulo =
(GLfloat)i*3.14159f/180.0f; // grados a radianes glColor3d(1,1,1); glVertex3i(0,0,-
3);glVertex3f(0+cos(angulo)*45, 0+sin(angulo)*45,0);}glEnd();*/ // Colocamos una
luzglLightfv(GL_LIGHT0,GL_DIFFUSE,(GLfloat []){1.0f,1.0f,1.0f,0.0f}); // Color de
laluzglLightfv(GL_LIGHT0,GL_AMBIENT,(GLfloat []){1.0, 1.0, 1.0, 4.0}); // Luz
ambienteglLightfv(GL_LIGHT0,GL_POSITION,(GLfloat []){0.0f,12.0f,5.0f,0.0f}); // Posiciónde la luz
61
62. Colegio de Estudios Científicos Y Tecnológicos del Estado de
MéxicoglLightfv(GL_LIGHT0,GL_EMISSION,(GLfloat []){0.5,0.5,0.5,1.0});//glShadeModel
(GL_SMOOTH);// esferaglPushMatrix();mover();if(malla) creaMalla();if(ejes)
creaEjes();//glRotatef(anguloEsfera, 1.0f, 1.0f,0.0f);glColor3f(1.0,1.0,0.0);//AglTranslatef(-7.2,0.0,
0.0);glutSolidCube(1);glTranslatef(0.0,-0.9, 0.0);glutSolidCube(1);glTranslatef(0.9,0.0,
0.0);glutSolidCube(1);glTranslatef(0.9,0.0, 0.0);glutSolidCube(1);glTranslatef(0.0,-0.3,
0.0);glutSolidCube(1);glTranslatef(0.0,1.2, 0.0);glutSolidCube(1);glTranslatef(-0.9,0.2,
0.0);glutSolidCube(1);//l 62
63. Colegio de Estudios Científicos Y Tecnológicos del Estado de MéxicoglTranslatef(2.3,-1.6,
0.0);glutSolidCube(1);glTranslatef(0.0,0.9, 0.0);glutSolidCube(1);glTranslatef(0.0,0.9,
0.0);glutSolidCube(1);glTranslatef(0.0,0.9, 0.0);glutSolidCube(1);//iglTranslatef(1.4,-2.7,
13. 0.0);glutSolidCube(1);glTranslatef(0.0,0.9, 0.0);glutSolidCube(1);glTranslatef(0.0,1.2,
0.0);glutSolidCube(1);//nglTranslatef(1.4,-1.0, 0.0);glutSolidCube(1);glTranslatef(0.9,0.0,
0.0);glutSolidCube(1);glTranslatef(0.9,0.0, 0.0);glutSolidCube(1);glTranslatef(0.0,-0.9,
0.0);glutSolidCube(1);glTranslatef(-1.6,0.0, 0.0); 63
64. Colegio de Estudios Científicos Y Tecnológicos del Estado de MéxicoglutSolidCube(1);// AQUI
PONES TU NOMBRE//AQUI//AQUI//AQUI//AQUI//AQUI//AQUI//AQUI//AQUIglPopMatrix
();glFlush();glutSwapBuffers ();//anguloEsfera+=2.0f;}void reshape(int w, int
h){glClearColor(1.0,1.0,1.0,0.0);glMatrixMode(GL_PROJECTION);glLoadIdentity();glOrtho(-15,15,-
15,15,-30,30);glMatrixMode(GL_MODELVIEW);glLoadIdentity();glClear(GL_DEPTH_TEST);}void
activo(int x,int y){// x= e; //y= f;girax=y; 64
65. Colegio de Estudios Científicos Y Tecnológicos del Estado de Méxicogiray=700-x;
glutPostRedisplay(); }void teclado(unsigned char key, int x, int y){ switch(key){ case 27: exit(0); case
+: zoom++; break; case -: zoom--; break; case p: glMatrixMode(GL_PROJECTION); glLoadIdentity();
gluPerspective(45,1,10,100); zoom=-40; break; case o: glMatrixMode(GL_PROJECTION);
glLoadIdentity(); glOrtho(-15,15,-15,15,-30,30); 65
66. Colegio de Estudios Científicos Y Tecnológicos del Estado de México zoom=0; break; case m:
malla= !malla; break; case e: ejes= !ejes;default: break; } glutPostRedisplay(); }void flechas(int key,
int x, int y){switch(key){ case GLUT_KEY_LEFT:giray-=15;break; case GLUT_KEY_RIGHT: giray+=15;
break; case GLUT_KEY_UP:girax-=15; break; case GLUT_KEY_DOWN:girax+=15; 66
67. Colegio de Estudios Científicos Y Tecnológicos del Estado de México break; default: break;}
glutPostRedisplay(); }int main ( int argc, char** argv ){glutInit (&argc, argv);glutInitDisplayMode
(GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH);glutInitWindowSize
(600,600);glutInitWindowPosition (100,100);glutCreateWindow ("Objetos 3D");//init (
);glutDisplayFunc (dibuja);//glutIdleFunc(dibuja);glutReshapeFunc ( reshape
);glutKeyboardFunc(teclado);glutSpecialFunc(flechas);glutMotionFunc(activo);glutMainLoop(
);return 0;} 67
68. Colegio de Estudios Científicos Y Tecnológicos del Estado de MéxicoSemáforo. SEMAFOROEn
esta práctica realizaremos un semáforo en el cual los colores se cambiensegún la ubicación de
dicho semáforo, para ello utilizaremos, rectángulos ycírculos así como se muestra a
continuación:Código:#include <unistd.h> 68
69. Colegio de Estudios Científicos Y Tecnológicos del Estado de México#include
<GL/glut.h>#include <GL/gl.h>#include <math.h>int rad=100;double
ang=0,a=0,b=0,c=0,d=0,e=0,f=0,g=0;void
inicializa(void){glClearColor(0.2,0.6,0.8,1.0);glMatrixMode(GL_PROJECTION);glLoadIdentity();gluOr
tho2D(0.0, 500.0, 0.0, 500.0);// el ancho y largo de nuestra pantalla}void circuloc(int x, int y, int t,
int radio){ int angulo=0; glPointSize(t); glBegin(GL_POINTS);//glColor3f (1.0, 0.0, 1.0);
glVertex2f(x,y); //glColor3f(0,0.0,0.0); for (angulo=0;angulo<=360; angulo+=1){ glVertex2f(x +
sin(angulo) *radio, y + cos(angulo) * radio);} glEnd();}void circulo(int x, int y, int radio){ 69
14. 70. Colegio de Estudios Científicos Y Tecnológicos del Estado de México int angulo=0;
glBegin(GL_TRIANGLE_FAN); glVertex2f(x,y); for (angulo=0;angulo<=360; angulo++){ glVertex2f(x +
sin(angulo) *radio, y + cos(angulo) * radio);} glEnd();}void
dibuja(void){glClear(GL_COLOR_BUFFER_BIT |
GL_DEPTH_BUFFER_BIT);//estoglBegin(GL_QUADS);//Cuadros fondo semaforoglColor3f(0.2 , 0.6 ,
0.);glVertex2i(170,437);glVertex2i(320,437);glVertex2i(320,182);glVertex2i(170,182);glVertex2i(22
9,183);glVertex2i(278,183);glVertex2i(278,3);glVertex2i(229,3);glEnd();glColor3f(0.0,0.0,0.0);//Luc
es Rojacirculo(247,226,34); 70
71. Colegio de Estudios Científicos Y Tecnológicos del Estado de
MéxicoglColor3f(0.0,0.0,0.0);//Luces Amarrillacirculo(247,302,34);glColor3f(0.0,0.0,0.0);//Luces
Verdecirculo(247,381,34);a=a+1; //velocidad entre mas grande mas rapido y entre menos mas
lentofor(int j=1;j<=10000000;j++){}//pausaif(a>1 && a<20){glColor3f(1.0,0.0,0.0);//Luces
Rojacirculo(247,381,34);}// se repite idefinidamenteif(a>20 &&
a<40){glColor3f(0.0,1.0,0.0);//Luces Rojacirculo(247,226,34);}// se repite idefinidamenteif(a>40
&& a<50){glColor3f(1.0,1.0,0.0);//Luces Rojacirculo(247,302,34);}// se repite
idefinidamenteif(a>55 && a<50){glColor3f(1.0,1.0,0.0);//Luces Roja 71
72. Colegio de Estudios Científicos Y Tecnológicos del Estado de Méxicocirculo(247,302,34);}// se
repite idefinidamenteif(a>60 && a<55){glColor3f(1.0,1.0,0.0);//Luces Rojacirculo(247,302,34);}//
se repite idefinidamenteif(a>60){a=0;}glFlush(); //forzar dibujadoglutSwapBuffers(); //y esto}int
main (int argc, char** argv){glutInit(&argc, argv);glutInitDisplayMode(GLUT_DOUBLE |
GLUT_RGBA| GLUT_DEPTH);//esto
tambienglutInitWindowSize(500,500);glutInitWindowPosition(10,10);glutCreateWindow("Ventana
");inicializa();glutDisplayFunc(dibuja);glutIdleFunc(dibuja);//esto es lo que
cambiaglutMainLoop();return 0; 72
73. Colegio de Estudios Científicos Y Tecnológicos del Estado de México} 73