Download - Realidad Aumentada 02 interfaz t apir
![Page 1: Realidad Aumentada 02 interfaz t apir](https://reader033.vdocumento.com/reader033/viewer/2022052906/558e11a31a28ab67128b4661/html5/thumbnails/1.jpg)
Prueba de Interfaz de usuario para el Proyecto de Realidad Aumentada Tapir
Servicio Social
Agustín Hernandez Vazquez
Software
Glade
Python
Prueba
![Page 2: Realidad Aumentada 02 interfaz t apir](https://reader033.vdocumento.com/reader033/viewer/2022052906/558e11a31a28ab67128b4661/html5/thumbnails/2.jpg)
Software
● Glade 3.2.2● Python 2.6.4
Con Glade haremos la ventana y con Python los eventos.
Glade
Para crear una aplicación en el panel izquierdo llamado Paleta en el sub menú Niveles superiores damos click en ventana y después damos click en el área de trabajo para que aparezca un frame.
![Page 3: Realidad Aumentada 02 interfaz t apir](https://reader033.vdocumento.com/reader033/viewer/2022052906/558e11a31a28ab67128b4661/html5/thumbnails/3.jpg)
Ahora incluimos las tablas o contenedores para comenzar a poner los botones y labels.en el Paleta+Contenedores+caja vertical (en este caso) damos un click y después otro click dentro del frame, glade nos pregunta de cuantos elementos elegimos los que deseen.
insertamos una barra de menú la cual esta en paleta+contenedores+barra de menú en este caso solo nos interesa el menú ayuda, borramos los otros menús seleccionándolos+suprimir
ahora insertamos el botón el cual esta en paleta+control y exhibición+botón
![Page 4: Realidad Aumentada 02 interfaz t apir](https://reader033.vdocumento.com/reader033/viewer/2022052906/558e11a31a28ab67128b4661/html5/thumbnails/4.jpg)
.
insertamos una etiqueta(label) se encuentra en paleta+control y exhibición+label, debemos elegir el label simple no el de botón enlace
Guardamos pero no cerramos glade.
![Page 5: Realidad Aumentada 02 interfaz t apir](https://reader033.vdocumento.com/reader033/viewer/2022052906/558e11a31a28ab67128b4661/html5/thumbnails/5.jpg)
Python
Ahora creamos un archivo vacío con cualquier editor de texto y comenzamos a programar la interfaz.
Aquí esta el código con comentarios para explicar su funcionamiento
#! /usr/bin/env python# -*- coding: UTF-8 -*-# Importamos los módulos necesarios
�
from os import popen
�
try: import pygtk pygtk.require('2.0') # Intenta usar la versión2except: # Algunas distribuciones vienen con GTK2, pero no con pyGTK (o pyGTKv2) pass
try: import gtk import gtk.gladeexcept: print "You need to install pyGTK or GTKv2 or set your PYTHONPATH correctly" sys.exit(1)
# Creamos una clase que almacena la información del programa (después se usara)class Info: "Store the program information" name = "TApir" version = "0.1" copyright = "Copyright © 2010 CICAINTE. \\nCopyright © 2010 GSC ASOCIADOS." authors = ["Agustin Hernandez Vazquez <[email protected]>"] #website = "http://" description = "Visualiza objetos derivados de la libreria \GLUT (el visualizar archivos VRML no esta disponible para esta version del software)."# Esto lo saque de internet (licencia GNU) license = "This program is free software; you can redistribute it and/or \modify it under the terms of the GNU General Public License as published by \the Free Software Foundation; either version 2 of the License, or (at your \option) any later version. \n\nThis program is distributed in the hope that \it will be useful, but WITHOUT ANY WARRANTY; without even the implied \warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. \
![Page 6: Realidad Aumentada 02 interfaz t apir](https://reader033.vdocumento.com/reader033/viewer/2022052906/558e11a31a28ab67128b4661/html5/thumbnails/6.jpg)
See the GNU General Public License for more details. \n\nYou should have \received a copy of the GNU General Public License along with this program; \if not, write to the Free Software Foundation, Inc., 51 Franklin Street, \Fifth Floor, Boston, MA 02110-1301, USA."
# Interfaz gráfica (gtk-glade), Clase para el Loop principal (de la GUI)class MainGui: "GTK/Glade User interface. This is a pyGTK window" def __init__(self): # Le indicamos al programa que archivo XML de glade usar self.widgets = gtk.glade.XML("interfaceT.glade")
# se definen las signals signals = { "on_button1_clicked" : self.on_button1_clicked, "on_imagemenuitem10_activate" : self.on_imagemenuitem10_activate, "gtk_main_quit" : gtk.main_quit } # y se autoconectan las signals. self.widgets.signal_autoconnect(signals)
# Ventana About (conocida como Acerca de). def about_info(self, data=None): "Display the About dialog " about = gtk.AboutDialog() about.set_name(Info.name) about.set_version(Info.version) about.set_comments(Info.description) about.set_copyright(Info.copyright) # Esto es para la pagina del programa o alguna refencia del mismo en la red #def openHomePage(widget,url,url2): # Para abrir el sitio # import webbrowser # webbrowser.open_new(url)
#gtk.about_dialog_set_url_hook(openHomePage,Info.website) #about.set_website(Info.website) about.set_authors(Info.authors) about.set_license(Info.license) about.set_wrap_license(True) # Adapta el texto a la ventana about.run() about.destroy()# Ahora declaramos las acciones a realizar (por menús, botones, etc.):
#
# Definimos la ventana about (help > About)
def on_imagemenuitem10_activate(self, widget): self.about_info()
![Page 7: Realidad Aumentada 02 interfaz t apir](https://reader033.vdocumento.com/reader033/viewer/2022052906/558e11a31a28ab67128b4661/html5/thumbnails/7.jpg)
�
# Definimos las acciones a realizar al apretar el botón def on_button1_clicked(self, widget):# Esta es la llamada al archivo popen("sh 11.sh")
if __name__== "__main__": MainGui() gtk.main()
Ese fue el código en python para mandar llamar un ejemplo de RA.
Ahora a conectar glade con python en el panel derecho llamado inspector ubicamos el menubar1 y desplegamos lo que contiene hasta encontrar el objeto imagemenuitem10, una vez que lo ubicamos vamos al panel de abajo para ver sus propiedades y en la pestaña señales activamos el objeto con active y como manipulador le damos on_imagemenuitem10_activate
verificamos que en el código python tenga ese mismo nombre en caso de no ser así lo cambiamos.
![Page 8: Realidad Aumentada 02 interfaz t apir](https://reader033.vdocumento.com/reader033/viewer/2022052906/558e11a31a28ab67128b4661/html5/thumbnails/8.jpg)
Hacemos lo mismo para el botón pero ahora con el evento clicked
ahora debemos ejecutar el archivo python
![Page 9: Realidad Aumentada 02 interfaz t apir](https://reader033.vdocumento.com/reader033/viewer/2022052906/558e11a31a28ab67128b4661/html5/thumbnails/9.jpg)
Prueba
para ejecutarlo se deben tener >
● archivo .glade● archivo .py● archivo compilado del programa● archivo .sh
todos en la mismo carpeta y al mismo nivel
ahora desde una terminal cd Escritorio/tapir/bin && ls && python interfaceT.py
![Page 10: Realidad Aumentada 02 interfaz t apir](https://reader033.vdocumento.com/reader033/viewer/2022052906/558e11a31a28ab67128b4661/html5/thumbnails/10.jpg)
nos muestra