21.12.2022 Views

python_para_desenvolvedores_2ed

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

264 Imagens em três dimensões

# Limpa a vista

glViewport(0, 0, x, y)

# Seleciona a matriz de projeção

glMatrixMode(GL_PROJECTION)

# Limpa a matriz de projeção

glLoadIdentity()

# Calcula o aspecto da perspectiva

gluPerspective(45., float(x)/float(y), 0.1, 100.0)

# Seleciona a matriz de visualização

glMatrixMode(GL_MODELVIEW)

def draw():

"""

Função que desenha os objetos

"""

global ar, dr

# Limpa a janela e o buffer de profundidade

glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT)

# Limpa a matriz de visualização

glLoadIdentity()

# Move o objeto (translação)

# Parâmetros: x, y e z (deslocamento)

glTranslatef(-0.5, -0.5, -4.)

# Rotação (em graus)

# Parâmetros: graus, x, y e z (eixo)

glRotatef(ar, 1.0 , 1.0, 1.0)

# Mudança de escala

# Parâmetros: x, y e z (tamanho)

glScalef(ar / 1000, ar / 1000, ar / 1000)

for i in xrange(0, 360, 10):

# Rotação das faces do objeto

glRotatef(10, 1.0 , 1.0, 1.0)

# Inicia a criação de uma face retangular

glBegin(GL_QUADS)

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!