A 3-D OO ROOT model allows a user to create and render rather complicated 3-D objects with the various 3-D viewer classes. At present the ROOT user can use TPad, X3D and OpenGL layers to draw ROOT 3D objects like TNode, TShape, TVolume, TVolumeView, TPolyLine3D, TPolymarker3D etc. These ROOT classes allow the creation of hierarchical 3D objects. Such an organization allows creating an effective OpenGL model to render the original object by a limited number of user-defined geometry levels. By default the system renders three levels of the hierarchy. This allows rendering very complicated objects (for example the ATLAS detector OO model contains about 30'000'000 nodes) but still can be drawn and manipulated in a reasonable time with a simple PC.

This paper presents the OO model, base classes and 3D viewer class (TVirtualGL, TKernelGL) to render ROOT 3D objects via OpenGL on various hardware / software platforms: Unix, Windows NT, Window 9x.

The current OpenGL ROOT viewer employs the OpenGL display list technique and provides:

1. Artificial and natural lighting,
2. Stereo view
3. Two kinds of projection: orthographic and perspective,
4. Rotations around 5 axes,
5. Zooming,
6. Clipping
7. Wired, solid, and semi-transparent views
etc

It is used at STAR to build "custom event displays" with user-defined "Detector" and "Event" geometry objects.


Back to Program

Back to ACAT Web page