tutorial standard library example python opengl tkinter tk

standard - tkinter python example



Contexto de OpenGL de Tkinter en Python (1)

Necesito crear un contexto OpenGL en Tkinker, para usarlo con el módulo PyOpenGL Python.

Tkinker no admite de forma nativa el contexto OpenGL, pero encontré esta página en documentos PyOpenGL, que explican cómo usar un contenedor incluido en el módulo para esto: http://pyopengl.sourceforge.net/documentation/context/

Traté de ejecutar el código provisto, pero recibí un mensaje que decía que no se encontró el módulo TOGL. Descargué el módulo de http://togl.sourceforge.net/ , pero no pude hacerlo funcionar.

PD. Hice la prueba en Mac OS X, con Python 3.2, usando virtualenv.


PyOpenGL proporciona enlaces de Python para el widget Tk OpenGL (Togl) pero no Togl, por eso hay que descargarlo. Ahora, instalar Togl es fácil, pero no hay una herramienta lista para realizar la tarea. Como las vinculaciones de Python usarán Tcl para cargar el módulo Togl, el widget debe vivir en uno de los directorios presentes en la auto_path de Tcl, que es donde Tcl busca cargar bibliotecas. Lo que puede hacer es iniciar un intérprete de Tcl, tclsh , y verificar cuáles son estos directorios haciendo puts $auto_path . En mi caso, copié el directorio lib/Togl2.0 (dentro de .tar.gz de /opt/local/lib/tcl8.5 ) en /opt/local/lib/tcl8.5 . También puede ampliar auto_path para buscar otros directorios, pero no lo estoy cubriendo aquí.

Luego probé usando Python 2.7 en Mac OSX. Al realizar la import OpenGL.Tk intenta cargar Togl, es una lástima que falle. La razón es que Togl viene precompilado para i386, ya que construí Python como un binario universal, todo lo que hice fue ejecutarlo como arch -i386 python2.7 , y ahora import OpenGL.Tk funciona.