Problemas para usar PyOpenGL em Python 2.6.6

votos
0

O que eu estou tentando fazer é código de uma janela básica OpenGL 2.0, quando eu executar o código de um arquivo, ele funciona para o primeiro par de corridas, então ele despeja erros. Se eu executar exatamente o mesmo código do GUI IDLE, eu recebo uma janela de cada vez. O seguinte é o primeiro de uma lista de adicionados Python 2.6.6 pacotes, o código e os erros. Estou usando quaisquer pacotes conflitantes? Estou faltando um pacote? Meus importações trabalhar na GUI IDLE. Qualquer ajuda seria ótimo!!

Data: 1 de agosto de 2011 Hora: 03:20:00
Esta é a lista de pacotes instalados para Python 2.6.6.  
Este arquivo foi criado manualmente e se destina a ser usado como um 
referência para mostrar o que pacotes foram adicionados em que ordem

pitão-2.6.6.msi
setuptools-0.6c11-win32-py26.exe
numpy-1.6.0-win32-Superpack-python26.exe
PIL-1.1.7-win32-py26.exe
wxPython2.8-win32-unicode-2.8.12.0-py26.exe
wxPython2.8-win32-docs-demos-2.8.12.0.exe
pyglet-1.1.4.msi
pywin32-216-win32.py32.exe
PyOpenGL-3.0.1.win32.exe
PyOpenGL-acelerar-3.0.1-win32-py26.exe
Pygame-1.9.1-win32-py26.msi
py2exe-0.6.9-win32-py2.6.exe
psyco (usando c: \ Python26 \ Scripts \ easy_install psyco)
    #import sys              #redundant(used to  eval errors)
    #import OpenGL           #redundant(used to  eval errors)       
    #import numpy            #redundant(used to  eval errors)

    #From here down is the original code, with gl imports listed as GLUT/GL/GLU
    #Page 26 PyOpenGL.pdf by Stan Blank, Ph.D
    from OpenGL.GL import *     #These 3 imports are called in a layered format
    from OpenGL.GLU import *    #Fron the simplest to the most complex(complete)
    from OpenGL.GLUT import *

    def draw():
        glClear(GL_COLOR_BUFFER_BIT)
        glutWireTeapot(0.5)
        glFlush()

    glutInit(sys.argv)
    glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB)
    glutInitWindowSize(250, 250)
    glutInitWindowPosition(100, 100)
    glutCreateWindow(Python OGL Program)
    glutDisplayFunc(draw)
    glutMainLoop()
listagens de erro IDLE
Traceback (chamada mais recente passada):
  Arquivo C: \ Code \ Python \ PyOpenGL \ ogl_01.py, linha 7, em 
    de OpenGL.GL import *
  Arquivo C: \ Python26 \ lib \ site-packages \ PyOpenGL-3.0.1-py2.6-win32.egg \ OpenGL \ GL \ __ init__.py, linha 2, em 
    de OpenGL.raw.GL import *
  Arquivo C: \ Python26 \ lib \ site-packages \ PyOpenGL-3.0.1-py2.6-win32.egg \ OpenGL \ cru \ GL \ __ init__.py, linha 6, em 
    de OpenGL.raw.GL.constants importar *
  Arquivo C: \ Python26 \ lib \ site-packages \ PyOpenGL-3.0.1-py2.6-win32.egg \ OpenGL \ cru \ GL \ constants.py, linha 7, em 
    de plataforma importação OpenGL, matrizes
  Arquivo C: \ Python26 \ lib \ site-packages \ PyOpenGL-3.0.1-py2.6-win32.egg \ OpenGL \ matrizes \ __ init__.py, linha 22, em 
    formathandler.FormatHandler.loadAll ()
  Arquivo C: \ Python26 \ lib \ site-packages \ PyOpenGL-3.0.1-py2.6-win32.egg \ OpenGL \ matrizes \ formathandler.py, linha 37, em Loadall
    cls.loadPlugin (ponto_de_entrada)
  Arquivo C: \ Python26 \ lib \ site-packages \ PyOpenGL-3.0.1-py2.6-win32.egg \ OpenGL \ matrizes \ formathandler.py, linha 44, em LoadPlugin
    plugin_class = entrypoint.load ()
  Arquivo C: \ Python26 \ lib \ site-packages \ PyOpenGL-3.0.1-py2.6-win32.egg \ OpenGL \ plugins.py, linha 14, na carga
    regresso importByName (self.import_path)
  Arquivo C: \ Python26 \ lib \ site-packages \ PyOpenGL-3.0.1-py2.6-win32.egg \ OpenGL \ plugins.py, linha 28, em importByName
    module = __ __import ( . join (moduleName), {}, {}, moduleName)
  Arquivo C: \ Python26 \ lib \ site-packages \ PyOpenGL-3.0.1-py2.6-win32.egg \ OpenGL \ matrizes \ numpymodule.py, linha 25, em 
    de OpenGL_accelerate.numpy_formathandler NumpyHandler importação
  File numpy.pxd, linha 30, em OpenGL_accelerate.numpy_formathandler (src \ numpy_formathandler.c: 3543)
ValueError: numpy.dtype não parece ser o objeto tipo correto

Desculpem o comprimento do post, eu só queria documentar completamente o problema. O Py instalação está sendo executado no Win XP SP3, cabeçalho IDLE:

Python 2.6.6 (r266:84297, Aug 24 2010, 18:46:32) [MSC v.1500 32 bit (Intel)] on win32
Publicado 10/08/2011 em 03:50
fonte usuário
Em outras línguas...                            


2 respostas

votos
0

O numpy extensão Cython para OpenGL provavelmente foi construído com 1.3.x. numpy Então, ou você recompilar OpenGL (especialmente a extensão Cython) com sua nova versão numpy ou você rebaixar numpy para 1.3.x. (Se isso não ajudar tentar fazer o downgrade para 1.4.xe 1.5.x, bem como - como eu não sei exatamente o que mudou na qual versão).

Respondeu 11/08/2011 em 06:34
fonte usuário

votos
0

Eu tentei isso e funcionou no meu caso,

  1. foi para http://pypi.python.org/pypi/PyOpenGL-accelerate e baixei o zip fonte pacote.
  2. usando 7zip eu extraiu o pacote para uma pasta chamada PyOpenGL-acelerar-3.0.1
  3. em seguida, usando um prompt de comando, navegar para a pasta que acabou de criar
  4. Eu digitei C: \ Python26 \ python setup.py instalação para executar instalar o pacote

    Uma vez que esta concluída, eu corri um script básico OpenGL em IDLE, Dr.Python e PythonWin. Todos os três IDEs foram capazes de criar a janela OpenGL correta (a 400x400 janela, fundo preto e um branco fio-frame bule.) Sem erros. Com esta solução que eu era capaz de manter Numpy 1.6.

Respondeu 28/08/2011 em 03:35
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more