Seite 1 von 1

Problem mit Beispiel script

Verfasst: Sonntag 4. September 2005, 01:30
von Gast
Hallo,

ich bin neu in Python habe mich aber schon mit PHP und Ruby beschäftigt.
In Ruby hatte ich das Problem das OpenGL einen Fehler auf Windows verursacht deshalb möchte ich mich nun in Python versuhen.
Ich habe mir hier: http://www.joachimrohde.com/cms/xoops/m ... .php?id=12
den Quelltext für Pyton runtergeladen ( ganz weit unten auf der Seite ) aber wenn ich das Script starte kommt:

Code: Alles auswählen

E:/python/pythonw.exe -u  "e:/python/test/lesson8.py"
Traceback (most recent call last):
  File "e:/python/test/lesson8.py", line 30, in ?
    from Image import *
ImportError: No module named Image
Aber in Zeile 69 wird doch die Classe Image erzeugt oder ?, wo ist der der Fehler in dem Script ?

Oder liegt es an meiner Python version (2.4. auf Win XP)

Es ist wirklich blöd wenn man schon bei einem Beispiel script hängen bleibt, die andern Sprachen habe ich auch immer durch Scripte gelernt zu beherschen, oder ist das bei Python etwas schwieriger ?

Gruß
Robert

Verfasst: Sonntag 4. September 2005, 02:49
von Masaru
Nicht schwieriger, wohl aber auch nicht unbedingt leichter als bei anderen.

Gerade wenn du die Sprache mit recht schweren Scripten (Grafik) lernen möchtest.

---

Deine Fehlermeldung besagt, dass dein Pythoninterpreter das Image Modul nicht finden/importieren konnte.

Code: Alles auswählen

from Image import *
Hinter Modulen verbegen sich bei Python Dateien ( *.{py,pyd} ), und eine solche hat der Interpreter nicht im Python Path finden können (in der Regel das Python Verzeichnis + die Unterverzeichnisse).

Das hat mit der Klasse (L.69)

Code: Alles auswählen

class Image:
    sizeX = None
    sizeY = None
    data = None
nichts zu tun.

Der Clou hinter diesen "Grafik-Bibliotheken" für Python (und speziell für deine Script-Lesson) ist, dass man sie sich zuerst einmal zusätzlich zum Python-Interpreter die erforderlichen Bibliotheken/Module hinzufügen muss.

Am besten du lädst dir erstmal PyOpenGL - z.B. wenn du mit Windows arbeitest, direkt den PyOpenGL-2.0.1.09.py2.4-numpy23.exe Installer (ist für Python 2.4) - und installierst diesen.
Auf meinem Windows XP System fehlte dann eine DLL "glut32.dll", die ich mir ergoogeln musste.

Dann kam der Image Importfehler. Das Modul Image wird von der Python Image Library (PIL-1.1.5.win32-py2.4.exe) zur Verfügung gestellt.

Nun sollte dein Script-Lesson laufen.

Falls dennoch dieser Fehler auftauchen sollte:
Image Loading Failed, look into this
... dann hast du die lesson8.py vermutlich nicht über die DOS Eingabeaufforderung per Commandline Aufruf der Datei direkt gestartet oder es gibt das folgendes Bild im Ordner nicht:
Data\lesson8\glass.bmp
>>Masaru<<

Danke

Verfasst: Sonntag 4. September 2005, 12:21
von mr.mc.mauser
Hallo,

danke für die Hilfe, openGL hatte ich schon installiert, nur das mit der Imagelib hab ich nicht gewusst, nach der Installation der Image Lib lief das Script ohne Probleme.

Bei anderen Scripts Funktioniert der Aufruf glutInit() nicht dazu bebötige ich dann vermutlich die von Dir beschriebene DLL.
Leider hab ich Sie naoch nicht gefunden, gibt es eine Stelle wo man Sie Runterladen kann ?

Gruß
Robert

Verfasst: Sonntag 4. September 2005, 13:23
von Leonidas
Hier sollte sie sein, aber eigentlich auch in aktuellen Grafikkartentreibern.

Vielleicht interessiert dich auch noch mein kleines GLwrap Script, mit dem die einzelnen OpenGL Komponenten schön in eigene Namespaces sortiert werden, so dass sie in gl.*, glu.*, glut.* ung wgl.* aufgeteilt werden, was IMHO die Lesbarkeit verbessert.

Danke hab die dll gefunden

Verfasst: Sonntag 4. September 2005, 22:02
von mr.mc.mauser
Hallo,

ich hab e die .dll gefunden jetzt läuft fast alles.
jedoch sind in einigen anderen scripts noch Fehler
http://www.joachimrohde.com/cms/xoops/m ... .php?id=12
z.b.Script 3 und 4 die es auch auf dieser o.g. seite gibt.
Dort kommt es immer zu einem Fehler sobald die Funktion

Code: Alles auswählen

glutIni("") 
aufgerufen wird.

Bei dem Script lesson8.py passiert etwas komisches soblad man die Datei glass.bmp durch eine andere Grafik ersezt die man dann auch glass.bmp nennt und an die gleiche stelle kopiert.
Soblad die datei geändert ist kommt es zu dem von Masaru beschriebenen Fehler:

Code: Alles auswählen

Image Loading Failed, look into this
sobald man dei alte Datei wieder herstellt klappt es wieder ohne Probleme.

Das ist schon sehr verwirend fürmich wieso die datei nicht mehr gefunden wird.

Gruß
Robert

Verfasst: Montag 4. Februar 2008, 23:03
von patamon
Zu glutIni(" ") kann ich dir sagen, dass es

glutInit()

heisst. Vielleicht ist das das Problem.


((Wegen der Datei, es könnte eine andere Speicherart sein, oder die Datei wird von einem anderen vorher Ort aufgerufen?))