Namespaces
Variants
Actions

Archived:Primitivas gráficas com OpenGL ES e PySymbian

Jump to: navigation, search
Archived.png
Aquivado: Este artigo foi arquivado, pois o conteúdo não é mais considerado relevante para se criar soluções comerciais atuais. Se você achar que este artigo ainda é importante, inclua o template {{ForArchiveReview|escreva a sua justificativa}}.

Acredita-se que este artigo ainda seja válido no contexto original (quando ele foi escrito)


Dados do artigo

Artigo
Criado por cabezonxdg em 10 Sep 2008
Última alteração feita por hamishwillee em 07 May 2013

O exemplo abaixo ilustra como desenhar primitivas gráficas do OpenGL ES no Symbian OS utilizando o PySymbian. No exemplo é renderizado um triângulo.


import appuifw
import glcanvas
import e32
from gles import *
 
vertices = array(GL_BYTE, 3,
( -1, 0, 0, # v1
0, 1, 0, # v2
1, 0, 0 # v3
))
 
class HelloOpenGL:
def __init__(self):
appuifw.app.exit_key_handler = self.sair # evento de saida
appuifw.app.screen = 'normal' # tipo da tela
appuifw.app.title = u"Exemplo OpenGL" # title pane
self.executando = 1 # estado da aplicacao
self.ogl_iniciado = 0 # estado do ogl
self.canvas = glcanvas.GLCanvas(redraw_callback = self.desenhar)
appuifw.app.body = self.canvas
self.initGl() # inicia o openGl
self.run() # inicia o loop da aplicacao
 
def initGl(self):
glClearColor( 0.0, 0.0, 0.0, 1.0 ) # cor de fundo
glClear( GL_COLOR_BUFFER_BIT ) # limpa o buffer com a cor definida acima
glVertexPointer(3, GL_BYTE, 0, vertices) # define o vertex array
glEnableClientState( GL_VERTEX_ARRAY ) # habilita o uso de vertex array
self.ogl_iniciado = 1 # altera o estado do ogl
 
def desenhar(self, frame):
if self.ogl_iniciado:
glDrawArrays( GL_TRIANGLES, 0, 3) # desenha o triangulo
 
def run(self):
while self.executando:
self.canvas.drawNow() # callback para redraw_callback do canvas
e32.ao_sleep(0.0001)
 
def sair(self):
self.canvas = None
self.executando = 0
 
instancia = HelloOpenGL()
This page was last modified on 7 May 2013, at 13:53.
191 page views in the last 30 days.
Nokia Developer aims to help you create apps and publish them so you can connect with users around the world.

京ICP备05048969号  © Copyright Nokia 2013 All rights reserved