Re: Building complex geometries using simple 3d primatives

Valery Fine (fine@mail.cern.ch)
Wed, 19 Nov 1997 18:54:58 +0100


On 19 Nov 97 at 15:52, William J. Deninger wrote:

> > Hello, I have a peculiar question concerning implementing 3d
> > graphics primitives inside one another. Suppose I have a detector
> > composed of a simple block of aluminum with a hole drilled in the
> > middle. I would suspect we would use TBRIK of material Al and TTUBE
> > of material VACUUM. How does root know which material takes
> > precedence in a volume shared by two materials such as the TTUBE
> > inside the TBRIK?
> >

Rene had replied this, but I'd like to add some notes.

At the moment there is no special flag to destinguish whether some
shape is a "body" or it is a "hole".

As far as I can understand problem this makes sense for OpenGL view
first of all (since this view includes the light model). At the
moment everything you draw would be "body" not a hole.

What this means. This means for example the color of the hole is
defined but "hole" object, should be the color of that body with this
hole.

I.e the color of the VACUUM tube hole in the Al brik will have
the color of the VACUUM tube "INTERNAL" wall not Al external wall as
it would be expected.

Since the present representation of GEANT object via OpenGL assumes
that iternal wall gets NO light (it allows to gain factor two
rendering some objects) at all this entails it is BLACK and DARK. The
last can be managed quite easy since any object can be "inverted'
and GL class does contain some flag to control this behaviour. But
this doesn't change the first point. The color (and material, light,
texture, etc) of the hole wall will be "hole", not "body" as expected

Could be other problems with 3D OpenGL view too.

With my regards,
Valery
Dr. Valeri Faine (Valery Fine)
------------ ------------- Phone: +41 22 767 4921
CERN FAX : +41 22 767 7155
CH-1211 Geneva, 23 mailto:fine@mail.cern.ch
Switzerland http://nicewww.cern.ch/~fine