I am using QT 4 and I need to add a display for a custom CAD format. It consists with a list of 3D points (x,y,z), then a definition for each 3D object using the points (Trapezoid/Triangle, elliptic plate, elliptic cylinder, elliptic cone, Ellipsoid, Circular paraboloid, Elliptic hyperboloid, and Circular torus).

There are probably 300000 3d objects I need to draw, mostly trapizoids/triangles but I need to support all of the above types.

The user will need to be able to use the mouse/keyboard and rotate, zoom, pan. Other than that no animation. No fancy backgrounds/texturing. Click on an object to get the object ID and do something with it. I may also want to highlight specific objects or draw some lines pointing to objects. That is about it.

I did some work using Coin3D maybe 10-15 years ago.

I think things like rotating using the mouse, zooming using the wheel, panning with the keyboard+mouse, clicking or drawing a box to select objects are fairly standard so I'd hope there are some convenience GUI functions available so I dont have to reinvent the wheel.

I'm looking for some suggestions on which 3D engine I should use. (http://qt-project.org/wiki/Using_3D_engines_with_Qt)

I'm mainly looking for convenience to implement and performance given the size I indicated above