[PyQt] Basic 3D Viewer

David Boddie david at boddie.org.uk
Mon May 30 21:04:06 BST 2011

On Mon May 30 20:04:16 BST 2011, Knacktus wrote:

> I need to evaluate the options for building a basic 3D viewer with PyQt.
> The scenes are static, but quite large (some hundreds medium complex
> (~500 triangles) objects). Show/Hide objects, rotate, drag, zoom, change
> colors and some other basic operations need to be available.
> Currently, I've got some very coarse understanding of OpenGL and
> scenegraphs, but cannot really grasp the complexitiy of the topic.

It might be worth experimenting with the PyQt OpenGL examples to get a feel
for the subject, but it will be a steep learning curve to go from there to
writing a 3D editor, I think.

> Can anyone comment on the complexity of building it from scratch? I'm
> looking for some directions, best practices. E.g., do PyOpenGL and PyQt
> play together?

Yes, you need to create the rendering context using PyQt then use PyOpenGL
for the rendering. There are examples supplied with PyQt that do this.

> Also, are there some higher level scenegraph libs (or bindings) or 3D
> engines (CAD engine) compatible with PyQt that could be usefull?

Take a look at this page for suggestions:


Building on top of Coin3D is an option you might want to explore. There are
probably other solutions out there as well.


More information about the PyQt mailing list