Procurar
Últimos assuntos
Quem está conectado?
Há 1 usuário online :: 0 registrados, 0 invisíveis e 1 visitante Nenhum
[ Ver toda a lista ]
O recorde de usuários online foi de 192 em Ter Out 26, 2021 6:07 am
OpenGl + GLUT p/ linux**
Página 1 de 1
OpenGl + GLUT p/ linux**
- Código:
// Quadrado.c - Isabel H. Manssour
// Um programa OpenGL simples que desenha um
// quadrado em uma janela GLUT.
// Este código está baseado no GLRect.c, exemplo
// disponível no livro "OpenGL SuperBible",
// 2nd Edition, de Richard S. e Wright Jr.
#include<stdlib.h>
#include <GL/glut.h>
// Função callback chamada para fazer o desenho
void Desenha(void)
{
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
// Limpa a janela de visualização com a cor de fundo especificada
glClear(GL_COLOR_BUFFER_BIT);
// Especifica que a cor corrente é vermelha
// R G B
glColor3f(1.0f, 0.0f, 0.0f);
// Desenha um quadrado preenchido com a cor corrente
glBegin(GL_POLYGON);
glVertex2i(100,150);
glColor3f(0.0f, 0.0f, 0.0f);
glVertex2i(100,100);
// Especifica que a cor corrente é azul
glColor3f(0.0f, 0.0f, 1.0f);
glVertex2i(150,100);
glColor3f(1.0f, 1.0f, 0.0f);
glVertex2i(150,150);
glColor3f(0.0f, 0.0f, 0.0f);
glVertex2i(125,200);
glEnd();
// Executa os comandos OpenGL
glFlush();
}
// Inicializa parâmetros de rendering
void Inicializa (void)
{
// Define a cor de fundo da janela de visualização como preta
glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
}
// Função callback chamada quando o tamanho da janela é alterado
void AlteraTamanhoJanela(GLsizei w, GLsizei h)
{
// Evita a divisao por zero
if(h == 0) h = 1;
// Especifica as dimensões da Viewport
glViewport(0, 0, w, h);
// Inicializa o sistema de coordenadas
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
// Estabelece a janela de seleção (left, right, bottom, top)
if (w <= h)
gluOrtho2D (0.0f, 250.0f, 0.0f, 250.0f*h/w);
else
gluOrtho2D (0.0f, 250.0f*w/h, 0.0f, 250.0f);
}
// Programa Principal
int main(int argc, char **argv)
{
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
glutInitWindowSize(400,400);
glutInitWindowPosition(10,10);//ponto onde a janela vai abrir
glutCreateWindow("Quadrado");
glutDisplayFunc(Desenha);
glutReshapeFunc(AlteraTamanhoJanela);
Inicializa();
glutMainLoop();
}
- Código:
gcc -lGL -lglut -lGLU qua.c -o qua
Tabela de Cores RBG(Dividir por 255 para usar em openGL (Exep.:Amarelo 255 255 0 -> 255/255 255/255 0/255 -> 1.0 1.0 0.0 (glColor3f(1.0f, 1.0f, 0.0f)
Fonte: http://www.inf.pucrs.br/~manssour/OpenGL/Desenhando.html
juk- Mensagens : 274
Data de inscrição : 02/04/2012
Tópicos semelhantes
» Instalação da biblioteca OpenGL/Glut no Linux
» Configurando o Code Blocks para biblioteca Gl GLut GLU
» Estudos em OpenGL II
» Estudos em OpenGL
» Um projeto em openGL - Logo do curso em 3D
» Configurando o Code Blocks para biblioteca Gl GLut GLU
» Estudos em OpenGL II
» Estudos em OpenGL
» Um projeto em openGL - Logo do curso em 3D
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
Qui maio 16, 2024 9:29 pm por juk
» Atividade Prática 5: Classes Abstratas e Interfaces
Seg maio 13, 2024 10:24 pm por juk
» Atividade Prática 4: Exercitando Herança e Polimorfismo
Seg maio 13, 2024 10:15 pm por juk
» Atividade Prática 4: Exercitando Herança e Polimorfismo
Seg maio 13, 2024 10:11 pm por juk
» Atividade Prática 3: Exercitando o relacionamento entre classes
Seg maio 13, 2024 10:06 pm por juk
» Atividade Complementar: Exercitando a criação de classes e objetos
Seg maio 13, 2024 10:01 pm por juk
» Atividade Prática 2: Exercitando a criação de classes e objetos
Seg maio 13, 2024 9:54 pm por juk
» Atividade Prática 1: Problemas Básicos de Programação
Seg maio 13, 2024 9:50 pm por juk
» Principais IDEs para Java
Qui Abr 25, 2024 9:27 pm por juk