SlideShare una empresa de Scribd logo
1 de 9
Gráficas en 2D - OpenGL
Inicializacion
#se define a l i n i c i o e indica como debe proyectar l a imagen en l a
ventana gluOrtho2D(0.0,width,0.0,height)
#define una matriz de proyeccion ortogonal 2D
#se llama antes de redibujar e l contenido en l a pant alla #sino l a
nueva f igura se superpone a l a a n t e r i o r
glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT)
#limpia l a pant alla
#borra e l contenido del buffer
Graficasen 2D - OpenGL
Vertices
Los verticessonla unidad basicadetrabajo enOpenGL. Cada figuradebe serdibujada especificando
previamente la posiciondesus vertices.
Funciones:
glVertex2f(x,y) #recibe x,y f l o a t glVertex2fv(v) #recibe un vector
glVertex2i(x,y) #recibe x,y i n t
Formaanalogapara3D.
Primitivas
Los verticespermitendaruna ”guıa” para posteriormente dibujarlas primitivas.
Funciones
glBegin(PRIMITIVA) #comienza a dibujar glEnd() #termina de dibujar
Graficas 2D - OpenGL - Primitivas
Graficas2D - OpenGL - Primitivas
Sintaxis
glBegin(PRIMITIVA) #inicio de l a figura
.
. #vertices de l a figura
.
glEnd() #fin de l a figura
Ejemplo
glBegin(GL_TRIANGLES)
glVertex2f(0.0, 0. 0)
glVertex2f(150.0, 0. 0)
glVertex2f(75.0, 100.0)
glEnd()
Graficas 2D - OpenGL
En el ejemplo anterior anterior OpenGL redibuja la figura en cada
frame, solamente seborra y la vuelve a dibujar en otro lugar.
Es posible tener una visionmas intuitiva del proceso?
Dibujar la figura una sola vez, almacenarla y posteriormente aplicar
transformaciones de:
Escalamiento Rotacion Traslacion
Transformaciones Geometricas
Traslaciones glTranslatef(x,y,z)
Aplica una transformacion de traslacioncon magnitud x,y,z
Escalamiento glScalef(x,y,z)
Aplica una transformacion de escala con los factores x,y,z en cada
eje. Valores negativos producen reflexiones en torno al eje.
Transformaciones Geometricas
Rotaciones glRotate(angle,x,y,z)
Aplica una transformacion de rotacion de ”angle” grados en torno al
eje (x,y,z) Rotacion segun la regla de la mano derecha, ´angulos en
contra las manecillas del reloj.
Rotacion respecto a un arbitrario
Se traslada al origen, seaplica rotaciony seretorna a la posicion
original.
Matriz de Transformacion
Cada transformacion se aplica sobre la actual matriz de
transformacion del modelo, que afecta a toda la escena.
(Multiplicacion de matrices).
Para aplicar transformaciones locales (no a toda la escena) se
debe guardar la matriz actual, aplicar transformaciones y
volver al estado anterior.
Uso de stack de matrices. Funciones glPushMatrix() (guardar
la matriz) y glPopMatrix() (restaurar la matriz).
NOTA: Aplicar transformaciones en orden inverso.
Graficas 2D - OpenGL
Ejemplo
def d i b u j a r ( ) :
lista=glGenLists(1) # i n t que determina l o s elementos a crear
glNewList(lista,GL_COMPILE)
#se dibuja de forma similar pero se carga en una l i s t a
glBegin(GL_TRIANGLES) glVertex2f(0.0, 0. 0)
glVertex2f(150.0, 0. 0)
glVertex2f(75.0, 100.0) glEnd()
glEndList()
def a c t u a l i z a r ( ) :
#para a c t u a l i z a r e l dibujo se llaman l a s #matrices de
transformacion glPushMatrix()
glColor4f(0, 0 , 1 , 0) #(R,G,B,ALPHA)
glTransla tef( x, y , z ) #transladar a ( x , y , z ) glScalef(coefX, coefY,
coefZ) #escalar segun coeficientes
glRotatef(angulo, x , y , z ) #rotar en angulo, segun e j e s x , y , z
g l C a l l L i s t ( l i s t a ) #llamar a l a l i s t a que guarda e l dibujo
glPopMatrix()

Más contenido relacionado

La actualidad más candente

Máxima ejercicio
Máxima ejercicioMáxima ejercicio
Máxima ejercicionatysarda
 
Máxima ejercicio
Máxima ejercicioMáxima ejercicio
Máxima ejercicionatysarda
 
Tema4 funcs elementales_3
Tema4 funcs elementales_3Tema4 funcs elementales_3
Tema4 funcs elementales_3Aurora Domenech
 
Inverse kinematics 2D
Inverse kinematics 2DInverse kinematics 2D
Inverse kinematics 2DJose Sanabria
 
Structural Errors computed by Stochastic Approach in a Robot Arm
Structural Errors computed by Stochastic Approach in a Robot ArmStructural Errors computed by Stochastic Approach in a Robot Arm
Structural Errors computed by Stochastic Approach in a Robot ArmJose Sanabria
 
Ejercicios en actionscript fundamentales
Ejercicios en actionscript fundamentalesEjercicios en actionscript fundamentales
Ejercicios en actionscript fundamentalescristian guevara
 
Taller de repaso de metodos y arreglos
Taller de repaso de metodos y arreglosTaller de repaso de metodos y arreglos
Taller de repaso de metodos y arreglosDiroplan
 
Administración de memoria continuación -matrices estáticas y dinámicas
Administración de memoria continuación -matrices estáticas y dinámicasAdministración de memoria continuación -matrices estáticas y dinámicas
Administración de memoria continuación -matrices estáticas y dinámicasUVM
 
Presentación 13 Paso por referencia
Presentación 13 Paso por referenciaPresentación 13 Paso por referencia
Presentación 13 Paso por referenciaAndres Bedoya Tobon
 
Matlab Función Arco Tangente
Matlab Función Arco TangenteMatlab Función Arco Tangente
Matlab Función Arco TangenteCristhian Salcedo
 
Programa en mat lab de runge kutta
Programa en mat lab de runge  kuttaPrograma en mat lab de runge  kutta
Programa en mat lab de runge kuttaJose Luis Ambrocio
 
Función trigonometricas
Función trigonometricasFunción trigonometricas
Función trigonometricaslosomosecantes
 

La actualidad más candente (18)

Máxima ejercicio
Máxima ejercicioMáxima ejercicio
Máxima ejercicio
 
Máxima ejercicio
Máxima ejercicioMáxima ejercicio
Máxima ejercicio
 
Tema4 funcs elementales_3
Tema4 funcs elementales_3Tema4 funcs elementales_3
Tema4 funcs elementales_3
 
Programación grafica en lenguaje c
Programación grafica en lenguaje cProgramación grafica en lenguaje c
Programación grafica en lenguaje c
 
Inverse kinematics 2D
Inverse kinematics 2DInverse kinematics 2D
Inverse kinematics 2D
 
Structural Errors computed by Stochastic Approach in a Robot Arm
Structural Errors computed by Stochastic Approach in a Robot ArmStructural Errors computed by Stochastic Approach in a Robot Arm
Structural Errors computed by Stochastic Approach in a Robot Arm
 
Javascript
JavascriptJavascript
Javascript
 
Ejercicios en actionscript fundamentales
Ejercicios en actionscript fundamentalesEjercicios en actionscript fundamentales
Ejercicios en actionscript fundamentales
 
Reglas de derivadas
Reglas de  derivadasReglas de  derivadas
Reglas de derivadas
 
Matrices
MatricesMatrices
Matrices
 
Taller de repaso de metodos y arreglos
Taller de repaso de metodos y arreglosTaller de repaso de metodos y arreglos
Taller de repaso de metodos y arreglos
 
Administración de memoria continuación -matrices estáticas y dinámicas
Administración de memoria continuación -matrices estáticas y dinámicasAdministración de memoria continuación -matrices estáticas y dinámicas
Administración de memoria continuación -matrices estáticas y dinámicas
 
Presentación 13 Paso por referencia
Presentación 13 Paso por referenciaPresentación 13 Paso por referencia
Presentación 13 Paso por referencia
 
Presentación 09 Cajas blanca
Presentación 09 Cajas blancaPresentación 09 Cajas blanca
Presentación 09 Cajas blanca
 
Matlab Función Arco Tangente
Matlab Función Arco TangenteMatlab Función Arco Tangente
Matlab Función Arco Tangente
 
Michael
MichaelMichael
Michael
 
Programa en mat lab de runge kutta
Programa en mat lab de runge  kuttaPrograma en mat lab de runge  kutta
Programa en mat lab de runge kutta
 
Función trigonometricas
Función trigonometricasFunción trigonometricas
Función trigonometricas
 

Similar a Opengl

Similar a Opengl (20)

Introducción a las librerías PyGame y PyOpenGL
Introducción a las librerías PyGame y PyOpenGLIntroducción a las librerías PyGame y PyOpenGL
Introducción a las librerías PyGame y PyOpenGL
 
Programación Open GL ES en iPhone e iPod touch
Programación Open GL ES en iPhone e iPod touchProgramación Open GL ES en iPhone e iPod touch
Programación Open GL ES en iPhone e iPod touch
 
Mini introopengl
Mini introopenglMini introopengl
Mini introopengl
 
Intro opengl
Intro openglIntro opengl
Intro opengl
 
Manual de actividades
Manual de actividadesManual de actividades
Manual de actividades
 
Proyecto de reneya terminado
Proyecto de reneya terminadoProyecto de reneya terminado
Proyecto de reneya terminado
 
Proyecto de reneya terminado
Proyecto de reneya terminadoProyecto de reneya terminado
Proyecto de reneya terminado
 
Practicas OpenglC++
Practicas OpenglC++Practicas OpenglC++
Practicas OpenglC++
 
Estela y naye
Estela y nayeEstela y naye
Estela y naye
 
Manual
ManualManual
Manual
 
Renderización en java
Renderización en javaRenderización en java
Renderización en java
 
Practicas para slider Rene Dominguez
Practicas para slider Rene Dominguez Practicas para slider Rene Dominguez
Practicas para slider Rene Dominguez
 
Manual de practicas de Open GL
Manual de practicas de Open GLManual de practicas de Open GL
Manual de practicas de Open GL
 
manual de practicas de opengl
manual de practicas de openglmanual de practicas de opengl
manual de practicas de opengl
 
Iniciación a OpenGL
Iniciación a OpenGLIniciación a OpenGL
Iniciación a OpenGL
 
Manual de practicas de dev c++
Manual de practicas de dev c++Manual de practicas de dev c++
Manual de practicas de dev c++
 
Manual de prácticas rivera y ruiz
Manual de prácticas rivera y ruizManual de prácticas rivera y ruiz
Manual de prácticas rivera y ruiz
 
Plots
PlotsPlots
Plots
 
Manual open gl
Manual open glManual open gl
Manual open gl
 
Manual open gl
Manual open glManual open gl
Manual open gl
 

Último

Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudianteAndreaHuertas24
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxJOSEMANUELHERNANDEZH11
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 

Último (16)

Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante9egb-lengua y Literatura.pdf_texto del estudiante
9egb-lengua y Literatura.pdf_texto del estudiante
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 
Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptx
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 

Opengl

  • 1. Gráficas en 2D - OpenGL Inicializacion #se define a l i n i c i o e indica como debe proyectar l a imagen en l a ventana gluOrtho2D(0.0,width,0.0,height) #define una matriz de proyeccion ortogonal 2D #se llama antes de redibujar e l contenido en l a pant alla #sino l a nueva f igura se superpone a l a a n t e r i o r glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT) #limpia l a pant alla #borra e l contenido del buffer
  • 2. Graficasen 2D - OpenGL Vertices Los verticessonla unidad basicadetrabajo enOpenGL. Cada figuradebe serdibujada especificando previamente la posiciondesus vertices. Funciones: glVertex2f(x,y) #recibe x,y f l o a t glVertex2fv(v) #recibe un vector glVertex2i(x,y) #recibe x,y i n t Formaanalogapara3D. Primitivas Los verticespermitendaruna ”guıa” para posteriormente dibujarlas primitivas. Funciones glBegin(PRIMITIVA) #comienza a dibujar glEnd() #termina de dibujar
  • 3. Graficas 2D - OpenGL - Primitivas
  • 4. Graficas2D - OpenGL - Primitivas Sintaxis glBegin(PRIMITIVA) #inicio de l a figura . . #vertices de l a figura . glEnd() #fin de l a figura Ejemplo glBegin(GL_TRIANGLES) glVertex2f(0.0, 0. 0) glVertex2f(150.0, 0. 0) glVertex2f(75.0, 100.0) glEnd()
  • 5. Graficas 2D - OpenGL En el ejemplo anterior anterior OpenGL redibuja la figura en cada frame, solamente seborra y la vuelve a dibujar en otro lugar. Es posible tener una visionmas intuitiva del proceso? Dibujar la figura una sola vez, almacenarla y posteriormente aplicar transformaciones de: Escalamiento Rotacion Traslacion
  • 6. Transformaciones Geometricas Traslaciones glTranslatef(x,y,z) Aplica una transformacion de traslacioncon magnitud x,y,z Escalamiento glScalef(x,y,z) Aplica una transformacion de escala con los factores x,y,z en cada eje. Valores negativos producen reflexiones en torno al eje.
  • 7. Transformaciones Geometricas Rotaciones glRotate(angle,x,y,z) Aplica una transformacion de rotacion de ”angle” grados en torno al eje (x,y,z) Rotacion segun la regla de la mano derecha, ´angulos en contra las manecillas del reloj. Rotacion respecto a un arbitrario Se traslada al origen, seaplica rotaciony seretorna a la posicion original.
  • 8. Matriz de Transformacion Cada transformacion se aplica sobre la actual matriz de transformacion del modelo, que afecta a toda la escena. (Multiplicacion de matrices). Para aplicar transformaciones locales (no a toda la escena) se debe guardar la matriz actual, aplicar transformaciones y volver al estado anterior. Uso de stack de matrices. Funciones glPushMatrix() (guardar la matriz) y glPopMatrix() (restaurar la matriz). NOTA: Aplicar transformaciones en orden inverso.
  • 9. Graficas 2D - OpenGL Ejemplo def d i b u j a r ( ) : lista=glGenLists(1) # i n t que determina l o s elementos a crear glNewList(lista,GL_COMPILE) #se dibuja de forma similar pero se carga en una l i s t a glBegin(GL_TRIANGLES) glVertex2f(0.0, 0. 0) glVertex2f(150.0, 0. 0) glVertex2f(75.0, 100.0) glEnd() glEndList() def a c t u a l i z a r ( ) : #para a c t u a l i z a r e l dibujo se llaman l a s #matrices de transformacion glPushMatrix() glColor4f(0, 0 , 1 , 0) #(R,G,B,ALPHA) glTransla tef( x, y , z ) #transladar a ( x , y , z ) glScalef(coefX, coefY, coefZ) #escalar segun coeficientes glRotatef(angulo, x , y , z ) #rotar en angulo, segun e j e s x , y , z g l C a l l L i s t ( l i s t a ) #llamar a l a l i s t a que guarda e l dibujo glPopMatrix()