I suggest you look into the ATLFast example at URL:
http://root.cern.ch/root/Atlfast.html
You can download the source code and look in the class ATLFDisplay.
http://root.cern.ch/root/html/atlfast/src/ATLFDisplay.cxx.html
An example of event with buttons producing a front/top/side/all view
is available at
http://root.cern.ch/Pictures.html
The function below is extracted from ATLFDisplay. It is called
to set the viewing angles:
void ATLFDisplay::DrawView(Float_t theta, Float_t phi)
{
// Draw a view of ATLAS
gPad->SetFillColor(1);
// Display ATLAS outline
gPad->Clear();
Int_t iret;
TView *view = new TView(1);
view->SetRange(-m_Rin, -m_Rin, -m_Zin, m_Rin, m_Rin, m_Zin);
m_Nodin->Draw("same");
// add itself to the list
AppendPad();
//Loop on all makers to add their products to the pad
TIter next(gATLFast->Makers());
ATLFMaker *maker;
while ((maker = (ATLFMaker*)next())) {
maker->Draw();
}
view->SetView(phi, theta, 0, iret);
}
Rene Brun