G3Volume Class Reference

#include <G3Volume.h>

List of all members.

Public Member Functions

 G3Volume ()
 G3Volume (const char *name)
virtual ~G3Volume ()
virtual void Draw (Option_t *option=0)
virtual void DrawSpec ()
virtual void SetParam (Int_t i, Float_t param)
virtual Float_t GetParam (Int_t i)
virtual void SetIdVolume (Int_t id)
virtual void SetIdCopy (Int_t id)
virtual void SetIdMedium (Int_t id)
virtual void SetIdMaterial (Int_t id)
virtual Int_t GetIdVolume () const
virtual Int_t GetIdCopy () const
virtual Int_t Medium () const
virtual Int_t Material () const
virtual void AddCopy ()
virtual void SetItem (TObject *item)
virtual void SetPosition (Float_t x, Float_t y, Float_t z)
virtual TArrayF Position (Int_t i) const
virtual void SetRotMatrix (Int_t irot)
virtual Int_t RotMatrix () const
virtual void SetShape (Int_t shape)
virtual Int_t Shape () const
virtual void SetParameters (Int_t np, Float_t *param)
virtual Int_t NParam () const
virtual void Parameters (Int_t i, TArrayF &param) const
virtual TList * Copies () const
virtual void AddCopy (G3Volume *volume)
virtual G3VolumeMakeCopy (Int_t i)
virtual Int_t NCopies () const
virtual Bool_t Posp () const
virtual void SetPosp (Bool_t flag)
virtual void CreateTShape (char *nameV, TMaterial *mat)
virtual void SetDivision (Int_t ndiv, Int_t axis, Float_t start, Float_t step)
virtual void Division (Int_t &ndiv, Int_t &axis, Float_t &start, Float_t &step) const
virtual Int_t Axis ()
virtual Int_t Ndiv ()
virtual Float_t Step ()
virtual Float_t StartC ()
virtual TObject * GetItem ()
 G3Volume (const G3Volume &)

Private Member Functions

G3Volumeoperator= (const G3Volume &)
 current item

Private Attributes

TArrayF fPosition
TArrayF fParameters
TList * fCopies
Bool_t fPosp
Int_t fNCopies
Int_t fRotMatrix
Int_t fNParam
Int_t fAxis
Int_t fNdiv
Float_t fStep
Float_t fStartC
Int_t fShape
Float_t fTheta
Float_t fPhi
Float_t fPsi
Float_t fU
Float_t fV
Float_t fUscale
Float_t fVscale
Bool_t fHide
Bool_t fShadow
Int_t fFill
Int_t fSeen
Bool_t fClip
Float_t fClipXmin
Float_t fClipXmax
Float_t fClipYmin
Float_t fClipYmax
Float_t fClipZmin
Float_t fClipZmax
Int_t fIdVolume
Int_t fIdMedium
Int_t fIdMaterial
Int_t fIdCopy
TObject * fItem

Detailed Description

Definition at line 19 of file G3Volume.h.


Constructor & Destructor Documentation

G3Volume::G3Volume (  )  [inline]

Definition at line 22 of file G3Volume.h.

00022 {;}

G3Volume::G3Volume ( const char *  name  ) 

Definition at line 62 of file G3Volume.cxx.

00063         : TNamed(name, " ")
00064 {
00065 // Constructor
00066 
00067     fTheta  = 30;
00068     fPhi    = 30;
00069     fPsi    = 0;
00070     fU      = 10;
00071     fV      = 10;
00072     fUscale = 0.01;
00073     fVscale = 0.01;
00074     fHide=0;
00075     fShadow=0;
00076     fFill=1;
00077     fSeen=1;
00078     fClip=0;
00079     fClipXmin=0.;
00080     fClipXmax=2000.;
00081     fClipYmin=0.;
00082     fClipYmax=2000.;
00083     fClipZmin=0.;
00084     fClipZmax=2000.;
00085     fNParam = 0;
00086     fPosition.Set(3);
00087     fCopies = new TList;
00088     fNCopies = 0;
00089     fPosp = kFALSE;
00090     fAxis = -1;
00091 }

virtual G3Volume::~G3Volume (  )  [inline, virtual]

Definition at line 24 of file G3Volume.h.

00024 {;}

G3Volume::G3Volume ( const G3Volume volume  ) 

Definition at line 93 of file G3Volume.cxx.

References Copies(), Division(), fAxis, fClip, fClipXmax, fClipXmin, fClipYmax, fClipYmin, fClipZmax, fClipZmin, fCopies, fFill, fHide, fIdCopy, fIdMaterial, fIdMedium, fIdVolume, fNCopies, fNdiv, fNParam, fParameters, fPhi, fPosition, fPosp, fPsi, fRotMatrix, fSeen, fShadow, fShape, fStartC, fStep, fTheta, fU, fUscale, fV, fVscale, GetIdCopy(), GetIdVolume(), Material(), Medium(), NCopies(), NParam(), Parameters(), Position(), Posp(), RotMatrix(), and Shape().

00094     : TNamed(volume)
00095 {
00096 // Constructor
00097 
00098     fTheta  = 30;
00099     fPhi    = 30;
00100     fPsi    = 0;
00101     fU      = 10;
00102     fV      = 10;
00103     fUscale = 0.01;
00104     fVscale = 0.01;
00105     fHide=0;
00106     fShadow=0;
00107     fFill=1;
00108     fSeen=1;
00109     fClip=0;
00110     fClipXmin=0.;
00111     fClipXmax=2000.;
00112     fClipYmin=0.;
00113     fClipYmax=2000.;
00114     fClipZmin=0.;
00115     fClipZmax=2000.;
00116     fAxis = -1;
00117 //
00118     fIdVolume   = volume.GetIdVolume();
00119     fIdCopy     = volume.GetIdCopy();
00120     fIdMedium   = volume.Medium();
00121     fIdMaterial = volume.Material();
00122     fPosition   = volume.Position(0);
00123     fShape      = volume.Shape();
00124     fRotMatrix  = volume.RotMatrix();
00125     TArrayF par;
00126     volume.Parameters(0, fParameters);
00127     fNCopies    = volume.NCopies();
00128     fPosp       = volume.Posp();
00129     
00130     fNParam     = volume.NParam();
00131     fCopies     = volume.Copies();
00132     fRotMatrix  = volume.RotMatrix();
00133     volume.Division(fNdiv, fAxis, fStartC, fStep);
00134     
00135 }


Member Function Documentation

void G3Volume::AddCopy ( G3Volume volume  )  [virtual]

Definition at line 308 of file G3Volume.cxx.

References fCopies, fNCopies, Material(), and SetIdMaterial().

00309 {
00310     volume->SetIdMaterial(Material());
00311     fCopies->Add(volume);
00312     fNCopies++;
00313 }

virtual void G3Volume::AddCopy (  )  [inline, virtual]

Definition at line 50 of file G3Volume.h.

References fIdCopy.

00050 {fIdCopy ++;}

virtual Int_t G3Volume::Axis (  )  [inline, virtual]

Definition at line 74 of file G3Volume.h.

References fAxis.

00074 {return fAxis;}

virtual TList* G3Volume::Copies (  )  const [inline, virtual]

Definition at line 64 of file G3Volume.h.

References fCopies.

Referenced by G3Volume().

00064 {return fCopies;}

void G3Volume::CreateTShape ( char *  nameV,
TMaterial *  mat 
) [virtual]

Definition at line 374 of file G3Volume.cxx.

References fParameters, and fShape.

00375 {
00376 //
00377 // Create a root volume from G3 volume
00378 //
00379     Int_t   ip;
00380     
00381     Float_t kRadDeg = 180./TMath::Pi();
00382     Float_t theta, phi, alpha1, alpha2;
00383     Float_t p1, p2;
00384     
00385     TShape* nShape=0;
00386     const char* tmp = mat->GetName();
00387     char nameM[21];
00388     strncpy(nameM, tmp, 20);
00389     nameM[20]='\0';
00390     switch(fShape)
00391     {
00392     case 1:
00393 // BOX
00394         nShape = new TBRIK(nameV,"BRIK",nameM,fParameters[0], fParameters[1], fParameters[2]);
00395         break;
00396         
00397     case 2:
00398 // TRD1   
00399         nShape = new TTRD1(nameV, "TRD1", nameM, fParameters[0], fParameters[1], fParameters[2],
00400                            fParameters[3]);
00401         break;
00402         
00403     case 3:
00404 // TRD2
00405         nShape = new TTRD2(nameV, "TRD2", nameM, fParameters[0], fParameters[1], fParameters[2], 
00406                            fParameters[3], fParameters[4]);
00407         break;
00408         
00409     case 4:
00410 // TRAP
00411         p1     = fParameters[1];
00412         p2     = fParameters[2];
00413         
00414         theta  = TMath::ATan(TMath::Sqrt(p1*p1+p2*p2))*kRadDeg;
00415         phi    = TMath::ATan2(p2,p1)*kRadDeg;
00416         alpha1 = fParameters[6 ]*kRadDeg;
00417         alpha2 = fParameters[10]*kRadDeg;
00418 
00419         if (theta < 0.) theta+=180.;
00420         
00421         nShape =  new TTRAP(nameV, "TRAP", nameM, fParameters[0], 
00422                             theta, phi,
00423                             fParameters[3], fParameters[4], fParameters[5], 
00424                             alpha1, 
00425                             fParameters[7], fParameters[8], fParameters[9], 
00426                             alpha2);
00427         break;
00428         
00429     case 5:
00430 // TUBE
00431         nShape =  new TTUBE(nameV,"TUBE",nameM,fParameters[0], fParameters[1], fParameters[2]);
00432         break;
00433         
00434     case 6:
00435 // TUBS
00436         nShape =  new TTUBS(nameV,"TUBS",nameM,fParameters[0], fParameters[1], fParameters[2], 
00437                             fParameters[3], fParameters[4]);
00438         break;
00439         
00440     case 7:
00441 // CONE
00442         nShape =  new TCONE(nameV, "CONE", nameM, fParameters[0], fParameters[1], fParameters[2], 
00443                             fParameters[3], fParameters[4]);
00444         break;
00445         
00446     case 8:
00447         
00448 // CONS
00449         nShape =  new TCONS(nameV, "CONS", nameM, fParameters[0], fParameters[1], fParameters[2], 
00450                             fParameters[3], fParameters[4], fParameters[5], fParameters[6]);
00451         break;
00452         
00453     case 9:
00454 // SPHE
00455         
00456         nShape =  new TSPHE(nameV, "SPHE", nameM, fParameters[0], fParameters[1], fParameters[2], 
00457                             fParameters[3], fParameters[4], fParameters[5]);
00458         break;
00459         
00460     case 10:
00461 // PARA
00462         alpha1 = fParameters[3]*kRadDeg;
00463         p1     = fParameters[4];
00464         p2     = fParameters[5];
00465         theta  = TMath::ATan(TMath::Sqrt(p1*p1+p2*p2))*kRadDeg;
00466         phi    = TMath::ATan2(p2,p1)*kRadDeg;
00467 
00468         nShape =  new TPARA(nameV, "PARA", nameM, fParameters[0], fParameters[1], fParameters[2], 
00469                                     alpha1, theta, phi);
00470         break;
00471         
00472     case 11:
00473 // PGON
00474         nShape =  new TPGON(nameV, "PGON", nameM, fParameters[0], fParameters[1], Int_t(fParameters[2]), 
00475                             Int_t(fParameters[3]));
00476         for (ip=0; ip<Int_t(fParameters[3]); ip++) {
00477             ((TPGON*) nShape)->DefineSection(ip, fParameters[4+3*ip], fParameters[4+3*ip+1], 
00478                                              fParameters[4+3*ip+2]);
00479         }
00480         break;
00481         
00482     case 12:
00483 // PCON
00484         nShape = new TPCON(nameV, "PCON", nameM, fParameters[0], fParameters[1], Int_t(fParameters[2]));
00485         for (ip=0; ip<Int_t(fParameters[2]); ip++) {
00486             ((TPCON*) nShape)->DefineSection(ip, fParameters[3+3*ip], fParameters[3+3*ip+1], 
00487                                              fParameters[3+3*ip+2]);
00488         }
00489         break;
00490         
00491     case 13:
00492 // ELTU  
00493         nShape = new TELTU(nameV,"ELTU",nameM,fParameters[0], fParameters[1], fParameters[2]);
00494         break;
00495         
00496     case 14:
00497 // HYPE
00498         nShape = new THYPE(nameV,"HYPE",nameM,fParameters[0], fParameters[1], fParameters[2], 
00499                            fParameters[3]);
00500         break;
00501         
00502     case 15:
00503 // GTRA
00504         nShape = new TGTRA(nameV, "GTRA", nameM, fParameters[0], fParameters[1], fParameters[2], 
00505                            fParameters[3], fParameters[4], fParameters[5], fParameters[6], 
00506                            fParameters[7], fParameters[8], fParameters[9], fParameters[10], 
00507                            fParameters[11]);
00508         break;
00509         
00510     case 16:
00511 // CTUB
00512         nShape = new TCTUB(nameV, "CTUB", nameM, fParameters[0], fParameters[1], fParameters[2], 
00513                            fParameters[3], fParameters[4], fParameters[5], fParameters[6], 
00514                            fParameters[7], fParameters[8], fParameters[9], fParameters[10]);
00515         break;
00516     default:
00517         break;
00518     }
00519     if (nShape) {
00520         Float_t density = mat->GetDensity();
00521         if (density < 0.01) {
00522             nShape->SetVisibility(0);
00523         } else {
00524             nShape->SetVisibility(1);
00525         }
00526         
00527         Int_t color = Int_t(density/20.*100.);
00528         nShape->SetLineColor(color);
00529     }
00530 }

void G3Volume::Division ( Int_t &  ndiv,
Int_t &  axis,
Float_t &  start,
Float_t &  step 
) const [virtual]

Definition at line 540 of file G3Volume.cxx.

References fAxis, fNdiv, fStartC, and fStep.

Referenced by G3Volume().

00541 {
00542     ndiv  = fNdiv;
00543     axis  = fAxis;
00544     start = fStartC;
00545     step  = fStep;
00546 }

void G3Volume::Draw ( Option_t *  option = 0  )  [virtual]

Definition at line 140 of file G3Volume.cxx.

References fClip, fClipXmax, fClipXmin, fClipYmax, fClipYmin, fClipZmax, fClipZmin, fFill, fHide, fPhi, fPsi, fSeen, fShadow, fTheta, fU, fUscale, fV, fVscale, TGeant3::Gdopt(), TGeant3::Gdraw(), geant3, TGeant3::Gsatt(), and TGeant3::SetClipBox().

00141 {
00142 // Wraps the geant Gdraw
00143     TGeant3* geant3 = (TGeant3*)gMC;
00144     geant3->Gsatt(fName,"seen", fSeen);
00145     
00146     if (fHide) {
00147         geant3->Gdopt("hide", "on");
00148     } else {
00149         geant3->Gdopt("hide", "off");
00150     }
00151 
00152     if (fShadow) {
00153         geant3->Gdopt("shad", "on");
00154         geant3->Gsatt("*", "fill", fFill);
00155     } else {
00156         geant3->Gdopt("shad", "off");
00157     }
00158 
00159         geant3->SetClipBox(".");
00160     if (fClip) {
00161         geant3->SetClipBox("*", fClipXmin, fClipXmax, 
00162                         fClipYmin, fClipYmax, fClipZmin, fClipZmax);
00163     } else {
00164         geant3->SetClipBox(".");
00165     }
00166     
00167 
00168     geant3->Gdraw(fName, fTheta, fPhi, fPsi, fU, fV, fUscale, fVscale);
00169 }

void G3Volume::DrawSpec (  )  [virtual]

Definition at line 171 of file G3Volume.cxx.

References fClip, fClipXmax, fClipXmin, fClipYmax, fClipYmin, fClipZmax, fClipZmin, fFill, fHide, fSeen, fShadow, TGeant3::Gdopt(), geant3, TGeant3::Gsatt(), and TGeant3::SetClipBox().

00172 {
00173 // Wraps the Geant DrawSpec
00174     TGeant3* geant3 = (TGeant3*)gMC;
00175     geant3->Gsatt(fName,"seen", fSeen);
00176     
00177     if (fHide) {
00178         geant3->Gdopt("hide", "on");
00179     } else {
00180         geant3->Gdopt("hide", "off");
00181     }
00182 
00183     if (fShadow) {
00184         geant3->Gdopt("shad", "on");
00185         geant3->Gsatt("*", "fill", fFill);
00186     } else {
00187         geant3->Gdopt("shad", "off");
00188     }
00189 
00190     geant3->SetClipBox(".");
00191     if (fClip) {
00192         geant3->SetClipBox("*", fClipXmin, fClipXmax, fClipYmin, fClipYmax, fClipZmin, fClipZmax);
00193     } else {
00194         geant3->SetClipBox(".");
00195     }
00196     
00197 
00198     ((TGeant3*) geant3)->DrawOneSpec(fName);
00199 }

virtual Int_t G3Volume::GetIdCopy (  )  const [inline, virtual]

Definition at line 44 of file G3Volume.h.

References fIdCopy.

Referenced by G3Volume().

00044 {return fIdCopy;}

virtual Int_t G3Volume::GetIdVolume (  )  const [inline, virtual]

Definition at line 42 of file G3Volume.h.

References fIdVolume.

Referenced by G3Volume().

00042 {return fIdVolume;}

virtual TObject* G3Volume::GetItem (  )  [inline, virtual]

Definition at line 81 of file G3Volume.h.

References fItem.

00081 {return fItem;}

Float_t G3Volume::GetParam ( Int_t  i  )  [virtual]

Definition at line 262 of file G3Volume.cxx.

References fClip, fClipXmax, fClipXmin, fClipYmax, fClipYmin, fClipZmax, fClipZmin, fFill, fHide, fPhi, fPsi, fSeen, fShadow, fTheta, fU, fUscale, fV, fVscale, kClip, kClipXmax, kClipXmin, kClipYmax, kClipYmin, kClipZmax, kClipZmin, kFill, kHide, kPhi, kPsi, kSeen, kShadow, kTheta, kU, kUscale, kV, and kVscale.

00263 {
00264 // Get drawing parameters
00265     switch (ip) {
00266     case kTheta:
00267         return fTheta;
00268     case kPhi:
00269         return fPhi;
00270     case kPsi:
00271         return fPsi;
00272     case kU:
00273         return fU;
00274     case kV:
00275         return fV;
00276     case kUscale:
00277         return fUscale;
00278     case kVscale:
00279         return fVscale;
00280     case kHide:
00281         return Float_t(fHide);
00282     case kShadow:
00283         return Float_t(fShadow);
00284     case kFill:
00285         return Float_t(fFill);
00286     case kSeen:
00287         return Float_t(fSeen);
00288     case kClip:
00289         return Float_t(fClip);
00290     case kClipXmin:
00291         return fClipXmin;
00292     case kClipXmax:
00293         return fClipXmax;
00294     case kClipYmin:
00295         return fClipYmin;
00296     case kClipYmax:
00297         return fClipYmax;
00298     case kClipZmin:
00299         return fClipZmin;
00300     case kClipZmax:
00301         return fClipZmax;
00302     default:
00303         return 0.;
00304     }
00305     return 0.;
00306 }

G3Volume * G3Volume::MakeCopy ( Int_t  i  )  [virtual]

Definition at line 315 of file G3Volume.cxx.

References fCopies.

00316 {
00317     return (G3Volume*) fCopies->At(i);
00318 }

virtual Int_t G3Volume::Material (  )  const [inline, virtual]

Definition at line 48 of file G3Volume.h.

References fIdMaterial.

Referenced by AddCopy(), and G3Volume().

00048 {return fIdMaterial;}

virtual Int_t G3Volume::Medium (  )  const [inline, virtual]

Definition at line 46 of file G3Volume.h.

References fIdMedium.

Referenced by G3Volume().

00046 {return fIdMedium;}

virtual Int_t G3Volume::NCopies (  )  const [inline, virtual]

Definition at line 68 of file G3Volume.h.

References fNCopies.

Referenced by G3Volume().

00068 {return fNCopies;}

virtual Int_t G3Volume::Ndiv (  )  [inline, virtual]

Definition at line 75 of file G3Volume.h.

References fNdiv.

00075 {return fNdiv;}

virtual Int_t G3Volume::NParam (  )  const [inline, virtual]

Definition at line 62 of file G3Volume.h.

References fNParam.

Referenced by G3Volume().

00062 {return fNParam;}

G3Volume& G3Volume::operator= ( const G3Volume  )  [inline, private]

current item

Definition at line 123 of file G3Volume.h.

00123 {return *this;}

void G3Volume::Parameters ( Int_t  i,
TArrayF &  param 
) const [virtual]

Definition at line 355 of file G3Volume.cxx.

References fCopies, fNParam, and fParameters.

Referenced by G3Volume().

00356 {
00357 //
00358 // Get parameters for volume copy i 
00359 //
00360     TArrayF p;
00361     if (i==0) {
00362         p = fParameters;
00363     } else {
00364         ((G3Volume*) (fCopies->At(i-1)))->Parameters(0, p);
00365     }
00366     Int_t np = fNParam;
00367     param.Set(np);
00368     for (Int_t j=0; j<np; j++) {
00369         param[j] = p.At(j);
00370     }
00371 }

TArrayF G3Volume::Position ( Int_t  i  )  const [virtual]

Definition at line 321 of file G3Volume.cxx.

References fCopies, and fPosition.

Referenced by G3Volume().

00322 {
00323 //
00324 // Get position for volume copy i 
00325 //
00326     if (i==0) {
00327         return fPosition;
00328     } else {
00329         return ((G3Volume*) fCopies->At(i-1))->Position(0);
00330     }
00331 }

virtual Bool_t G3Volume::Posp (  )  const [inline, virtual]

Definition at line 69 of file G3Volume.h.

References fPosp.

Referenced by G3Volume().

00069 {return fPosp;}

virtual Int_t G3Volume::RotMatrix (  )  const [inline, virtual]

Definition at line 58 of file G3Volume.h.

References fRotMatrix.

Referenced by G3Volume().

00058 {return fRotMatrix;}

void G3Volume::SetDivision ( Int_t  ndiv,
Int_t  axis,
Float_t  start,
Float_t  step 
) [virtual]

Definition at line 532 of file G3Volume.cxx.

References fAxis, fNdiv, fStartC, and fStep.

00533 {
00534     fNdiv   = ndiv;
00535     fAxis   = axis;
00536     fStartC = start;
00537     fStep   = step;
00538 }

virtual void G3Volume::SetIdCopy ( Int_t  id  )  [inline, virtual]

Definition at line 36 of file G3Volume.h.

References fIdCopy.

00036 {fIdCopy = id;}

virtual void G3Volume::SetIdMaterial ( Int_t  id  )  [inline, virtual]

Definition at line 40 of file G3Volume.h.

References fIdMaterial.

Referenced by AddCopy().

00040 {fIdMaterial = id;}

virtual void G3Volume::SetIdMedium ( Int_t  id  )  [inline, virtual]

Definition at line 38 of file G3Volume.h.

References fIdMedium.

00038 {fIdMedium = id;}

virtual void G3Volume::SetIdVolume ( Int_t  id  )  [inline, virtual]

Definition at line 34 of file G3Volume.h.

References fIdVolume.

00034 {fIdVolume = id;}

virtual void G3Volume::SetItem ( TObject *  item  )  [inline, virtual]

Definition at line 52 of file G3Volume.h.

References fItem.

00052 {fItem = item;}

void G3Volume::SetParam ( Int_t  i,
Float_t  param 
) [virtual]

Definition at line 201 of file G3Volume.cxx.

References fClip, fClipXmax, fClipXmin, fClipYmax, fClipYmin, fClipZmax, fClipZmin, fFill, fHide, fPhi, fPsi, fSeen, fShadow, fTheta, fU, fUscale, fV, fVscale, kClip, kClipXmax, kClipXmin, kClipYmax, kClipYmin, kClipZmax, kClipZmin, kFill, kHide, kPhi, kPsi, kSeen, kShadow, kTheta, kU, kUscale, kV, and kVscale.

00202 {
00203 // Set drawing parameters
00204     switch (ip) {
00205     case kTheta:
00206         fTheta=param;
00207         break;
00208     case kPhi:
00209         fPhi=param;
00210         break;
00211     case kPsi:
00212         fPsi=param;
00213         break;
00214     case kU:
00215         fU=param;
00216         break;
00217     case kV:
00218         fV=param;
00219         break;
00220     case kUscale:
00221         fUscale=param;
00222         break;
00223     case kVscale:
00224         fVscale=param;
00225         break;
00226     case kHide:
00227         fHide=Int_t(param);
00228         break;
00229     case kShadow:
00230         fShadow=Int_t(param);
00231         break;
00232     case kFill:
00233         fFill=Int_t(param);
00234         break;
00235     case kSeen:
00236         fSeen=Int_t(param);
00237         break;
00238     case kClip:
00239         fClip=Int_t(param);
00240         break;
00241     case kClipXmin:
00242         fClipXmin=param;
00243         break;
00244     case kClipXmax:
00245         fClipXmax=param;
00246         break;
00247     case kClipYmin:
00248         fClipYmin=param;
00249         break;
00250     case kClipYmax:
00251         fClipYmax=param;
00252         break;
00253     case kClipZmin:
00254         fClipZmin=param;
00255         break;
00256     case kClipZmax:
00257         fClipZmax=param;
00258         break;
00259     }
00260 }

void G3Volume::SetParameters ( Int_t  np,
Float_t *  param 
) [virtual]

Definition at line 344 of file G3Volume.cxx.

References fNParam, and fParameters.

00345 {
00346 //
00347 // Set parameters 
00348 //
00349     fParameters.Set(np);
00350     for (Int_t j=0; j<np; j++) fParameters[j]=param[j];
00351     fNParam = np;
00352 }

void G3Volume::SetPosition ( Float_t  x,
Float_t  y,
Float_t  z 
) [virtual]

Definition at line 333 of file G3Volume.cxx.

References fPosition.

00334 {
00335 //
00336 // Set position
00337 //
00338   fPosition[0] = x;
00339   fPosition[1] = y;
00340   fPosition[2] = z;
00341 }

virtual void G3Volume::SetPosp ( Bool_t  flag  )  [inline, virtual]

Definition at line 70 of file G3Volume.h.

References fPosp.

00070 {fPosp = flag;}

virtual void G3Volume::SetRotMatrix ( Int_t  irot  )  [inline, virtual]

Definition at line 57 of file G3Volume.h.

References fRotMatrix.

00057 {fRotMatrix = irot;}

virtual void G3Volume::SetShape ( Int_t  shape  )  [inline, virtual]

Definition at line 59 of file G3Volume.h.

References fShape.

00059 {fShape = shape;}

virtual Int_t G3Volume::Shape (  )  const [inline, virtual]

Definition at line 60 of file G3Volume.h.

References fShape.

Referenced by G3Volume().

00060 {return fShape;}

virtual Float_t G3Volume::StartC (  )  [inline, virtual]

Definition at line 77 of file G3Volume.h.

References fStartC.

00077 {return fStartC;}

virtual Float_t G3Volume::Step (  )  [inline, virtual]

Definition at line 76 of file G3Volume.h.

References fStep.

00076 {return fStep;}


Member Data Documentation

Int_t G3Volume::fAxis [private]

Definition at line 95 of file G3Volume.h.

Referenced by Axis(), Division(), G3Volume(), and SetDivision().

Bool_t G3Volume::fClip [private]

Definition at line 111 of file G3Volume.h.

Referenced by Draw(), DrawSpec(), G3Volume(), GetParam(), and SetParam().

Float_t G3Volume::fClipXmax [private]

Definition at line 113 of file G3Volume.h.

Referenced by Draw(), DrawSpec(), G3Volume(), GetParam(), and SetParam().

Float_t G3Volume::fClipXmin [private]

Definition at line 112 of file G3Volume.h.

Referenced by Draw(), DrawSpec(), G3Volume(), GetParam(), and SetParam().

Float_t G3Volume::fClipYmax [private]

Definition at line 115 of file G3Volume.h.

Referenced by Draw(), DrawSpec(), G3Volume(), GetParam(), and SetParam().

Float_t G3Volume::fClipYmin [private]

Definition at line 114 of file G3Volume.h.

Referenced by Draw(), DrawSpec(), G3Volume(), GetParam(), and SetParam().

Float_t G3Volume::fClipZmax [private]

Definition at line 117 of file G3Volume.h.

Referenced by Draw(), DrawSpec(), G3Volume(), GetParam(), and SetParam().

Float_t G3Volume::fClipZmin [private]

Definition at line 116 of file G3Volume.h.

Referenced by Draw(), DrawSpec(), G3Volume(), GetParam(), and SetParam().

TList* G3Volume::fCopies [private]

Definition at line 90 of file G3Volume.h.

Referenced by AddCopy(), Copies(), G3Volume(), MakeCopy(), Parameters(), and Position().

Int_t G3Volume::fFill [private]

Definition at line 109 of file G3Volume.h.

Referenced by Draw(), DrawSpec(), G3Volume(), GetParam(), and SetParam().

Bool_t G3Volume::fHide [private]

Definition at line 107 of file G3Volume.h.

Referenced by Draw(), DrawSpec(), G3Volume(), GetParam(), and SetParam().

Int_t G3Volume::fIdCopy [private]

Definition at line 121 of file G3Volume.h.

Referenced by AddCopy(), G3Volume(), GetIdCopy(), and SetIdCopy().

Int_t G3Volume::fIdMaterial [private]

Definition at line 120 of file G3Volume.h.

Referenced by G3Volume(), Material(), and SetIdMaterial().

Int_t G3Volume::fIdMedium [private]

Definition at line 119 of file G3Volume.h.

Referenced by G3Volume(), Medium(), and SetIdMedium().

Int_t G3Volume::fIdVolume [private]

Definition at line 118 of file G3Volume.h.

Referenced by G3Volume(), GetIdVolume(), and SetIdVolume().

TObject* G3Volume::fItem [private]

Definition at line 122 of file G3Volume.h.

Referenced by GetItem(), and SetItem().

Int_t G3Volume::fNCopies [private]

Definition at line 92 of file G3Volume.h.

Referenced by AddCopy(), G3Volume(), and NCopies().

Int_t G3Volume::fNdiv [private]

Definition at line 96 of file G3Volume.h.

Referenced by Division(), G3Volume(), Ndiv(), and SetDivision().

Int_t G3Volume::fNParam [private]

Definition at line 94 of file G3Volume.h.

Referenced by G3Volume(), NParam(), Parameters(), and SetParameters().

TArrayF G3Volume::fParameters [private]

Definition at line 89 of file G3Volume.h.

Referenced by CreateTShape(), G3Volume(), Parameters(), and SetParameters().

Float_t G3Volume::fPhi [private]

Definition at line 101 of file G3Volume.h.

Referenced by Draw(), G3Volume(), GetParam(), and SetParam().

TArrayF G3Volume::fPosition [private]

Definition at line 88 of file G3Volume.h.

Referenced by G3Volume(), Position(), and SetPosition().

Bool_t G3Volume::fPosp [private]

Definition at line 91 of file G3Volume.h.

Referenced by G3Volume(), Posp(), and SetPosp().

Float_t G3Volume::fPsi [private]

Definition at line 102 of file G3Volume.h.

Referenced by Draw(), G3Volume(), GetParam(), and SetParam().

Int_t G3Volume::fRotMatrix [private]

Definition at line 93 of file G3Volume.h.

Referenced by G3Volume(), RotMatrix(), and SetRotMatrix().

Int_t G3Volume::fSeen [private]

Definition at line 110 of file G3Volume.h.

Referenced by Draw(), DrawSpec(), G3Volume(), GetParam(), and SetParam().

Bool_t G3Volume::fShadow [private]

Definition at line 108 of file G3Volume.h.

Referenced by Draw(), DrawSpec(), G3Volume(), GetParam(), and SetParam().

Int_t G3Volume::fShape [private]

Definition at line 99 of file G3Volume.h.

Referenced by CreateTShape(), G3Volume(), SetShape(), and Shape().

Float_t G3Volume::fStartC [private]

Definition at line 98 of file G3Volume.h.

Referenced by Division(), G3Volume(), SetDivision(), and StartC().

Float_t G3Volume::fStep [private]

Definition at line 97 of file G3Volume.h.

Referenced by Division(), G3Volume(), SetDivision(), and Step().

Float_t G3Volume::fTheta [private]

Definition at line 100 of file G3Volume.h.

Referenced by Draw(), G3Volume(), GetParam(), and SetParam().

Float_t G3Volume::fU [private]

Definition at line 103 of file G3Volume.h.

Referenced by Draw(), G3Volume(), GetParam(), and SetParam().

Float_t G3Volume::fUscale [private]

Definition at line 105 of file G3Volume.h.

Referenced by Draw(), G3Volume(), GetParam(), and SetParam().

Float_t G3Volume::fV [private]

Definition at line 104 of file G3Volume.h.

Referenced by Draw(), G3Volume(), GetParam(), and SetParam().

Float_t G3Volume::fVscale [private]

Definition at line 106 of file G3Volume.h.

Referenced by Draw(), G3Volume(), GetParam(), and SetParam().


The documentation for this class was generated from the following files:

Generated on 22 Nov 2017 for loon by  doxygen 1.6.1