0

私がやろうとしているのは、基本的なOpenGL 2.0ウィンドウをコーディングすることです。ファイルからコードを実行すると、最初の数回の実行で機能し、その後エラーをダンプします。IDLE GUIからまったく同じコードを実行すると、毎回ウィンドウが表示されます。以下は、最初に追加されたPython 2.6.6パッケージ、コード、およびエラーのリストです。競合するパッケージを使用していますか?パッケージがありませんか?私のインポートはIDLEGUIで機能します。どんな助けでも素晴らしいでしょう!

日付:2011年8月1日時間:03:20:00 AM
これは、Python2.6.6用にインストールされたパッケージのリストです。  
このファイルは手動で作成されたものであり、
どのパッケージがどの順序で追加されたかを示すための参照

python-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-accelerate-3.0.1-win32-py26.exe
Pygame-1.9.1-win32-py26.msi
py2exe-0.6.9-win32-py2.6.exe
psyco(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()
IDLEエラーリスト
トレースバック(最後の最後の呼び出し):
  ファイル"C:\ Code \ Python \ PyOpenGL \ ogl_01.py"、7行目
    OpenGL.GLからインポート*
  ファイル"C:\ Python26 \ lib \ site-packages \ pyopengl-3.0.1-py2.6-win32.egg \ OpenGL \ GL \ __ init __。py"、2行目
    OpenGL.raw.GLからインポート*
  ファイル"C:\ Python26 \ lib \ site-packages \ pyopengl-3.0.1-py2.6-win32.egg \ OpenGL \ raw \ GL \ __ init __。py"、6行目
    OpenGL.raw.GL.constantsからインポート*
  ファイル"C:\ Python26 \ lib \ site-packages \ pyopengl-3.0.1-py2.6-win32.egg \ OpenGL \ raw \ GL \ constants.py"、7行目
    OpenGLインポートプラットフォームから、配列
  ファイル"C:\ Python26 \ lib \ site-packages \ pyopengl-3.0.1-py2.6-win32.egg \ OpenGL \ arrays \ __ init __。py"、22行目
    formathandler.FormatHandler.loadAll()
  ファイル「C:\ Python26 \ lib \ site-packages \ pyopengl-3.0.1-py2.6-win32.egg \ OpenGL \ arrays \ formathandler.py」、37行目、loadAll
    cls.loadPlugin(エントリポイント)
  ファイル"C:\ Python26 \ lib \ site-packages \ pyopengl-3.0.1-py2.6-win32.egg \ OpenGL \ arrays \ formathandler.py"、44行目、loadPlugin
    plugin_class = entrypoint.load()
  ファイル「C:\ Python26 \ lib \ site-packages \ pyopengl-3.0.1-py2.6-win32.egg \ OpenGL \ plugins.py」、14行目
    importByName(self.import_path)を返します
  importByNameのファイル「C:\ Python26 \ lib \ site-packages \ pyopengl-3.0.1-py2.6-win32.egg \ OpenGL \ plugins.py」、28行目
    module = __import __( "。"。join(moduleName)、{}、{}、moduleName)
  ファイル"C:\ Python26 \ lib \ site-packages \ pyopengl-3.0.1-py2.6-win32.egg \ OpenGL \ arrays \ numpymodule.py"、25行目
    OpenGL_accelerate.numpy_formathandlerからインポートNumpyHandler
  OpenGL_accelerate.numpy_formathandler(src \ numpy_formathandler.c:3543)のファイル "numpy.pxd"、30行目
ValueError:numpy.dtypeが正しいタイプのオブジェクトではないようです

投稿の長さについて申し訳ありませんが、問題を完全に文書化したかっただけです。Pyインストールは、Win XP SP3、IDLEヘッダーで実行されています。

Python 2.6.6 (r266:84297, Aug 24 2010, 18:46:32) [MSC v.1500 32 bit (Intel)] on win32
4

2 に答える 2

0

OpenGL用のnumpyCython拡張機能は、おそらくnumpy1.3.xで構築されています。したがって、OpenGL(特にCython拡張機能)を新しいnumpyバージョンで再コンパイルするか、numpyを1.3.xにダウングレードします。(これが1.4.xおよび1.5.xへのダウングレードを試みるのに役立たない場合-どのバージョンで何が変更されたか正確にはわからないため)。

于 2011-08-11T07:34:28.707 に答える
0

私はこれを試しましたが、私の場合はうまくいきました、

  1. http://pypi.python.org/pypi/PyOpenGL-accelerateにアクセスし、zipソースパッケージをダウンロードしました。
  2. 7zipを使用して、パッケージをPyOpenGL-accelerate-3.0.1という名前のフォルダーに抽出しました。
  3. 次に、コマンドプロンプトを使用して、作成したフォルダーに移動します
  4. C:\ python26 \ python setup.py installと入力して、パッケージのインストールを実行しました

    これが完了したら、IDLE、Dr.Python、およびPythonWinで基本的なOpenGLスクリプトを実行しました。3つのIDEはすべて、エラーなしで正しいOpenGLウィンドウ(400x400ウィンドウ、黒い背景、白いワイヤーフレームティーポット)を作成できました。このソリューションで、Numpy1.6を維持することができました。

于 2011-08-28T04:35:46.190 に答える