3
Ich benutze die Python-Trimesh-Bibliothek, um Dreiecksnetze zu manipulieren und zu analysieren. Aufruf die show()
Methode gibt ein Attribut:Trimesh-Show-Methode liefert AttributeError
import trimesh
mesh = trimesh.load_mesh("myfile.stl")
mesh.show()
Traceback (most recent call last):
File "/Users/cg/anaconda/lib/python2.7/site-packages/IPython/core/interactiveshell.py", line 2881, in run_code
exec(code_obj, self.user_global_ns, self.user_ns)
File "<ipython-input-5-cbb52bec63cc>", line 1, in <module>
mesh.show()
File "/Users/cg/anaconda/lib/python2.7/site-packages/trimesh/base.py", line 1339, in show
scene.show(**kwargs)
File "/Users/cg/anaconda/lib/python2.7/site-packages/trimesh/scene/scene.py", line 383, in show
viewer()
File "/Users/cg/anaconda/lib/python2.7/site-packages/trimesh/scene/scene.py", line 380, in viewer
SceneViewer(self, **kwargs)
File "/Users/cg/anaconda/lib/python2.7/site-packages/trimesh/scene/viewer.py", line 31, in __init__
self.reset_view(flags=flags)
File "/Users/cg/anaconda/lib/python2.7/site-packages/trimesh/scene/viewer.py", line 125, in reset_view
if (self.width is not None and
File "/Users/cg/anaconda/lib/python2.7/site-packages/pyglet/window/__init__.py", line 850, in <lambda>
width = property(lambda self: self.get_size()[0],
File "/Users/cg/anaconda/lib/python2.7/site-packages/pyglet/window/cocoa/__init__.py", line 398, in get_size
window_frame = self._nswindow.frame()
AttributeError: 'NoneType' object has no attribute 'frame'
Ich verwende Python 2.7.11 und OSX 10.11. Ist jemand auf ein ähnliches Problem gestoßen?
Könnten Sie uns die volle Stack-Trace bekommen, aber nicht in einer seltsamen IDE ausgeführt? Weil das ein Pyglet-Fehler ist - sicher, aber Chancen sind es, weil 'trimesh' etwas wie etwas in der falschen Reihenfolge initialisiert wird. Daher möchte ich den trimesh stack trace, um zu entschlüsseln, wo der Fehler herkommt. – Torxed
Vielen Dank für Ihre Hilfe, ich habe meinen Beitrag aktualisiert, um die vollständige Trimesh-Stack-Ablaufverfolgung anzuzeigen. – Colin
Ich habe das gleiche Problem gefunden und suche auch nach einer Lösung. Wenn ich die Lösung finde, werde ich eine Antwort posten. –