Hi,
I got some problems with using “SetTransparency”.
I draw 10 tubes in the openGL-viewer and want them to have different transparencies.
The code looks like this:
//creating the tubes
for(Int_t i=0; i<10; i++)
tube[i] = geom->MakeBox("Tubebox", Al, 2,2,100);
...
...
//trying to set the transparency-levels
for(Int_t k=0; k<10; k++)
tube[k]->SetTransparency(k*10);
Unfortunately, all tubes are drawn with the transparency, which is set last.
Do you have any ideas how to solve this ?
Cheers;
Asim.
For each transparency need other material !
void SetTransparency(Char_t transparency=0) {if (fMedium) fMedium->GetMaterial()->SetTransparency(transparency);} // *MENU*
Jan
oh. what a shame.
but thanks for your answer.
asim.
system
March 30, 2007, 7:52pm
4
[quote=“Akrasim”]oh. what a shame.
but thanks for your answer.
asim.[/quote]
You can do what you want using the TVolume “flavour” of the ROOT geometry definion. It doesn’t require any extra material to be defined. However, I am not sure whether you can draw it (I mean transparency) with the built-in ROOT GL-viewer properly.
To get it right you will need the Coin3D based viewer.
See indico.cern.ch/conferenceOtherVi … nfId=13356
indico.cern.ch/materialDisplay.p … nfId=13356
See:
www-evasion.imag.fr/Membres/Fran … /pr02.html Plate 18,19,20 also