views:

187

answers:

5

Hello, I am looking for a graphics library for 3D reconstruction research to develop my specific viewer based on some library. OpenGL seems in a low level and I have to remake the wheel everywhere. And I also tried VTK(visualization toolkit). However, it seems too abstract that I need to master many conceptions before I start. Is there any other graphics library? I prefer to program in python. So I would like the library has a python wrapper. I think something like O3D would be better. But O3D is for javascript and it seems that Google already stops the development.

A: 

I have no personal experience with this, but I have heard some decent things about Pyglet

Andrei Krotkov
A: 

Have you tried Pyglet with PyOpenGL? The two goes very well together. Wheaties' suggest is quite good as well, although PyOgre also has a steep learning curve, as it is indeed higher-level. On another thought, there is also PyGame, which is a Python wrapper of SDL.

I personally prefer PyOpenGL, and you can use WxPython or PyQT to create your rendering context.

Also, there is PyProcessing, which is still in early stages, but very, very nifty.

Xavier Ho
I have skimmed pyglet and it is really powerful.
xiao
+1  A: 

You could try mlab / Mayavi (a wrapper for VTK). There's some examples here: http://code.enthought.com/projects/mayavi/docs/development/html/mayavi/mlab.html

wisty
Is it very documented? A big problem of VTK is the lack of good tutor and only have C++ documentation.
xiao
The documentation looks OK. I haven't actually used mlab, but I was looking at it a while ago. The function you are likely to be looking for is "triangular mesh", which is here: http://code.enthought.com/projects/mayavi/docs/development/html/mayavi/auto/mlab_helper_functions.html#enthought.mayavi.mlab.triangular_mesh
wisty
A: 

I used openGL with C++ a few years back - found it quite low level. I also have used Java3D which seemed to be a bit higher level. If you are not stuck on using python - try Java3D - very simple to get up and running.

Mark
A: 

Panda3D seems to be a nice 3D graphics library designed to be used in Python, although it's mostly game oriented. I've browsed the manuals a few times and it's very polished and of a high quality, it has even been used in some big studio's games (like Disney's Pirates of the Caribbean online, if I remember well).

fortran