GATO
Crear un programa que dibuje la siguiente figura en color azul con linea 10px en el centro de una pantalla de 480*480 con fondo blanco.UNIVERSIDAD AUTONOMA DEL ESTADO DE MEXICO
FACULTAD DE INGENIERIA
INGENIERIA EN COMPUTACION
GRAFICACION 2016B
OBJETIVO DEL PROGRAMA: CREAR UN PROGRAMA QUE DIBUJE LA FIGURA DE UN GATO EN COLOR AZUL,CON LINEA DE 10PX EN EL CENTRO DE UNA PANTALLA DE 480 * 480 CON FONDO BLANCO.
INTEGRANTES:
GARNICA AYALA HECTOR DANIEL
RICARDO DANIEL GONZALEZ GOMEZ
DAVID GOMEZ JARAMILLO
JUAN GARCIA GARCIA
IVAN CHAVEZ GUTIERREZ
**/
Código
#include <stdlib.h>
#include <math.h>
#include <stdio.h>
#include <windows.h>
#include <GL/gl.h>
#include <GL/glut.h>
void display(void)
{
glClear(GL_COLOR_BUFFER_BIT);
glLineWidth(10.0);//tamaño de linea de 10px
glColor3f(0.0,0.0,1.0);//color azul de la linea
// cuerpo o contorno del gato
glEnable(GL_LINE_SMOOTH);//suavizado de linea
glBegin(GL_LINE_LOOP);
glVertex2f(1,2);
glVertex2f(5,2);
glVertex2f(5,4);
glVertex2f(3,4);
glVertex2f(3,5);
glVertex2f(4,6);
glVertex2f(6,6);
glVertex2f(6,2);
glVertex2f(9,2);
glVertex2f(9,4);
glVertex2f(8,4);
glVertex2f(8,7);
glVertex2f(9,6);
glVertex2f(11,5);
glVertex2f(13,5);
glVertex2f(15,6);
glVertex2f(16,7);
glVertex2f(16,13);
glVertex2f(14,11);
glVertex2f(10,11);
glVertex2f(8,13);
glVertex2f(8,9);
glVertex2f(6,11);
glVertex2f(4,11);
glVertex2f(2,9);
glVertex2f(2,12);
glVertex2f(3,12);
glVertex2f(5,14);
glVertex2f(5,15);
glVertex2f(3,15);
glVertex2f(0,12);
glVertex2f(0,8);
glEnd();
//ojo derecho del gato
glEnable(GL_LINE_SMOOTH);
glBegin(GL_LINE_LOOP);
glVertex2f(9,10);
glVertex2f(11,10);
glVertex2f(11,8);
glVertex2f(9,8);
glEnd();
//ojo izquierdo del gato
glEnable(GL_LINE_SMOOTH);
glBegin(GL_LINE_LOOP);
glVertex2f(13,10);
glVertex2f(15,10);
glVertex2f(15,8);
glVertex2f(13,8);
glEnd();
//Nariz
glEnable(GL_LINE_SMOOTH);
glBegin(GL_LINE_LOOP);
glVertex2f(12,8);
glVertex2f(11,7);
glVertex2f(13,7);
glEnd();
glFlush();
}
void Init()
{
glClearColor(1.0,1.0,1.0,0);
gluOrtho2D(0,16,0, 16);
//glMatrixMode(GL_PROJECTION);
}
int main(int argc, char **argv)
{
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
glutInitWindowPosition(100,100);
glutInitWindowSize(480,480);
glutCreateWindow("Gato");//tiulo de la pantalla
Init();//
glutDisplayFunc(display);
glutMainLoop();
return 0;
}
Captura de pantalla
Descargar Archivo
Gato.txt
FLOR
#include </usr/include/GL/glut.h>
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#define PI 3.14159265
#define ANCHO 640//Ancho pantalla
#define ALTO 480//Alto pantalla
#define PETALOS 6//Numero de petalos
int tam_px=4;
float cx = 320, cy=240, radio=100;
float r,g,b,dx,dy;
void display(void){
glClear(GL_COLOR_BUFFER_BIT);
//glLineWidth(tam_ln);
glPointSize(tam_px);
glColor3f(0.5f, 0.0f, 1.0f);
glBegin(GL_TRIANGLE_FAN);
float i;
for (i = 0.0; i < PI * 2; i += 0.01)
{
dx = radio*cos(i) + cx;
dy = radio*sin(i) + cy;
glVertex2f(dx,dy);
}
glEnd();
/*Petalos*/
int ind;
int radio2 = (radio / 2) + 4;
int angDef = 360/PETALOS;
int ang = 20;
for (ind = 0; ind < PETALOS; ind++){
glBegin(GL_TRIANGLE_FAN);
float i;
for (i = 0.0; i < PI * 2; i += 0.01)
{
dx = radio2*cos(i) + cx;
dy = radio2*sin(i) + cy;
glVertex2f(dx + (radio*cos(ang * (PI/180))), dy + (radio*sin(ang * (PI/180))) );
}
glEnd();
ang = ang + angDef;
}
/*Centro*/
radio = 40;
glColor3f(1.0f, 1.0f, 1.0f);
glBegin(GL_TRIANGLE_FAN);
for (i = 0.0; i < PI * 2; i += 0.01)
{
dx = radio*cos(i) + cx;
dy = radio*sin(i) + cy;
glVertex2f(dx,dy);
}
glEnd();
glFlush();
}
void Init(){
glClearColor(1.0,1.0,1.0,0);
gluOrtho2D(0, ANCHO, 0, ALTO);
glEnable(GL_POINT_SMOOTH);
}
int main(int argc, char **argv){
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB);
glutInitWindowPosition(100,100);
glutInitWindowSize(ANCHO, ALTO);
glutCreateWindow("Flor");
glClearColor(0.8,0.4,0.0,0);//fondo
Init();
glutDisplayFunc(display);//muestra lo que quiero ver
glutMainLoop();
/*
El VIEWPORT es diferente
*/
return 0;
}
Dibujar la letra G de google
/**
UNIVERSIDAD AUTONOMA DEL ESTADO DE MEXICO
FACULTAD DE INGENIERIA
INGENIERIA EN COMPUTACION
GRAFICACION 2016B
OBJETIVO DEL PROGRAMA: CREAR EL LOGO DE GOOGLE
INTEGRANTES:
GARNICA AYALA HECTOR DANIEL
RICARDO DANIEL GONZALEZ
DAVID GOMEZ JARAMILLO
JUAN GARCIA GARCIA
**/
#include <windows.h>
#include <stdlib.h>
#include <math.h>
#include <stdio.h>
#include <GL/glut.h>
int tam_px=4, ancho=500, alto=500;
float cx=250, cy=250, radio=100, pi=3.1416;
float r,g,b,dx,dy;
void display(void){
glClear(GL_COLOR_BUFFER_BIT);
glPointSize(tam_px);
//glBegin(GL_POINTS);//IMPORTANTE, QUE ES LO QUE SE VA A DIBUJAR
glBegin(GL_TRIANGLE_FAN);
glVertex2f(cx,cy);
r = (float)rand() / RAND_MAX;
g = (float)rand() / RAND_MAX;
b = (float)rand() / RAND_MAX;
glColor3f(1,0,0);
float i;
for (i = 0.7; i < pi/1.9; i += 0.03)
{
dx = radio*cos(i) + cx;
dy = radio*sin(i) + cy;
glVertex2f(dx,dy);
}
glColor3f(1,1,0);
for (i = 1.7; i < pi; i += 0.03)
{
dx = radio*cos(i) + cx;
dy = radio*sin(i) + cy;
glVertex2f(dx,dy);
}
glColor3f(0,1,0);
for (i = 2.5; i < pi; i += 0.03)
{
dx = radio*cos(i) + cx;
dy = radio*sin(i) + cy;
glVertex2f(dx,dy);
}
glColor3f(0,0,1);
for (i = 3.2; i < 2*pi; i += 0.03)
{
dx = radio*cos(i) + cx;
dy = radio*sin(i) + cy;
glVertex2f(dx,dy);
}
glColor3f(1,1,1);
for (i = 0; i < 2*pi; i += 0.03)
{
dx = 50*cos(i) + cx;
dy = 50*sin(i) + cy;
glVertex2f(dx,dy);
}
glEnd();
glFlush();
}
void Init(){
glClearColor(1.0,1.0,1.0,0);
gluOrtho2D(0,ancho,0,alto);
glEnable(GL_POINT_SMOOTH);
}
int main(int argc, char **argv){
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB);
glutInitWindowPosition(100,100);
glutInitWindowSize(ancho,alto);
glutCreateWindow("Google");
glClearColor(0.8,0.4,0.0,0);//fondo
Init();
glutDisplayFunc(display);//muestra lo que quiero ver
glutMainLoop();
/*
El VIEWPORT es diferente
*/
return 0;
}
UNIVERSIDAD AUTONOMA DEL ESTADO DE MEXICO
FACULTAD DE INGENIERIA
INGENIERIA EN COMPUTACION
GRAFICACION 2016B
OBJETIVO DEL PROGRAMA: CREAR EL LOGO DE GOOGLE
INTEGRANTES:
GARNICA AYALA HECTOR DANIEL
RICARDO DANIEL GONZALEZ
DAVID GOMEZ JARAMILLO
JUAN GARCIA GARCIA
**/
#include <windows.h>
#include <stdlib.h>
#include <math.h>
#include <stdio.h>
#include <GL/glut.h>
int tam_px=4, ancho=500, alto=500;
float cx=250, cy=250, radio=100, pi=3.1416;
float r,g,b,dx,dy;
void display(void){
glClear(GL_COLOR_BUFFER_BIT);
glPointSize(tam_px);
//glBegin(GL_POINTS);//IMPORTANTE, QUE ES LO QUE SE VA A DIBUJAR
glBegin(GL_TRIANGLE_FAN);
glVertex2f(cx,cy);
r = (float)rand() / RAND_MAX;
g = (float)rand() / RAND_MAX;
b = (float)rand() / RAND_MAX;
glColor3f(1,0,0);
float i;
for (i = 0.7; i < pi/1.9; i += 0.03)
{
dx = radio*cos(i) + cx;
dy = radio*sin(i) + cy;
glVertex2f(dx,dy);
}
glColor3f(1,1,0);
for (i = 1.7; i < pi; i += 0.03)
{
dx = radio*cos(i) + cx;
dy = radio*sin(i) + cy;
glVertex2f(dx,dy);
}
glColor3f(0,1,0);
for (i = 2.5; i < pi; i += 0.03)
{
dx = radio*cos(i) + cx;
dy = radio*sin(i) + cy;
glVertex2f(dx,dy);
}
glColor3f(0,0,1);
for (i = 3.2; i < 2*pi; i += 0.03)
{
dx = radio*cos(i) + cx;
dy = radio*sin(i) + cy;
glVertex2f(dx,dy);
}
glColor3f(1,1,1);
for (i = 0; i < 2*pi; i += 0.03)
{
dx = 50*cos(i) + cx;
dy = 50*sin(i) + cy;
glVertex2f(dx,dy);
}
glEnd();
glFlush();
}
void Init(){
glClearColor(1.0,1.0,1.0,0);
gluOrtho2D(0,ancho,0,alto);
glEnable(GL_POINT_SMOOTH);
}
int main(int argc, char **argv){
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_SINGLE|GLUT_RGB);
glutInitWindowPosition(100,100);
glutInitWindowSize(ancho,alto);
glutCreateWindow("Google");
glClearColor(0.8,0.4,0.0,0);//fondo
Init();
glutDisplayFunc(display);//muestra lo que quiero ver
glutMainLoop();
/*
El VIEWPORT es diferente
*/
return 0;
}
Descargar Archivo
G.txt
No hay comentarios:
Publicar un comentario