Back to home page

EIC code displayed by LXR

 
 

    


Warning, file /include/root/TGTRA.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).

0001 // @(#)root/g3d:$Id$
0002 // Author: Nenad Buncic   19/09/95
0003 
0004 /*************************************************************************
0005  * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers.               *
0006  * All rights reserved.                                                  *
0007  *                                                                       *
0008  * For the licensing terms see $ROOTSYS/LICENSE.                         *
0009  * For the list of contributors see $ROOTSYS/README/CREDITS.             *
0010  *************************************************************************/
0011 
0012 #ifndef ROOT_TGTRA
0013 #define ROOT_TGTRA
0014 
0015 
0016 ////////////////////////////////////////////////////////////////////////////
0017 //                                                                        //
0018 // TGTRA                                                                  //
0019 //                                                                        //
0020 // GTRA is general twisted trapezoid. Essentially this is a TRAP shape,   //
0021 // except this it is twisted in the x, y plane as a function z.           //
0022 //                                                                        //
0023 ////////////////////////////////////////////////////////////////////////////
0024 
0025 #include "TBRIK.h"
0026 
0027 class TGTRA : public TBRIK {
0028 
0029 protected:
0030    Float_t fTwist;     // twisting parameter
0031    Float_t fH1;        // half length in y at low z
0032    Float_t fBl1;       // half length in x at low z and y low edge
0033    Float_t fTl1;       // half length in x at low z and y high edge
0034    Float_t fAlpha1;    // angle w.r.t. the y axis
0035    Float_t fH2;        // half length in y at high z
0036    Float_t fBl2;       // half length in x at high z and y low edge
0037    Float_t fTl2;       // half length in x at high z and y high edge
0038    Float_t fAlpha2;    // angle w.r.t. the y axis
0039 
0040    void    SetPoints(Double_t *points) const override;
0041 public:
0042    TGTRA();
0043    TGTRA(const char *name, const char *title, const char *material, Float_t dz, Float_t theta, Float_t phi, Float_t twist, Float_t h1,
0044          Float_t bl1, Float_t tl1, Float_t alpha1, Float_t h2, Float_t bl2, Float_t tl2,
0045          Float_t alpha2);
0046    ~TGTRA() override;
0047 
0048    Float_t         GetTwist() const  {return fTwist;}
0049    Float_t         GetH1() const     {return fH1;}
0050    Float_t         GetBl1() const    {return fBl1;}
0051    Float_t         GetTl1() const    {return fTl1;}
0052    Float_t         GetAlpha1() const {return fAlpha1;}
0053    Float_t         GetH2() const     {return fH2;}
0054    Float_t         GetBl2() const    {return fBl2;}
0055    Float_t         GetTl2() const    {return fTl2;}
0056    Float_t         GetAlpha2() const {return fAlpha2;}
0057 
0058    ClassDefOverride(TGTRA,1)  //GTRA shape
0059 };
0060 
0061 #endif