```// @(#)root/g3d:\$Id: TGTRA.h 20882 2007-11-19 11:31:26Z rdm \$
// Author: Nenad Buncic   19/09/95

/*************************************************************************
* Copyright (C) 1995-2000, Rene Brun and Fons Rademakers.               *
* All rights reserved.                                                  *
*                                                                       *
* For the licensing terms see \$ROOTSYS/LICENSE.                         *
* For the list of contributors see \$ROOTSYS/README/CREDITS.             *
*************************************************************************/

#ifndef ROOT_TGTRA
#define ROOT_TGTRA

////////////////////////////////////////////////////////////////////////////
//                                                                        //
// TGTRA                                                                  //
//                                                                        //
// GTRA is general twisted trapezoid. Essentially this is a TRAP shape,   //
// except this it is twisted in the x, y plane as a function z.           //
//                                                                        //
////////////////////////////////////////////////////////////////////////////

#ifndef ROOT_TBRIK
#include "TBRIK.h"
#endif

class TGTRA : public TBRIK {

protected:
Float_t fTwist;     // twisting parameter
Float_t fH1;        // half length in y at low z
Float_t fBl1;       // half length in x at low z and y low edge
Float_t fTl1;       // half length in x at low z and y high edge
Float_t fAlpha1;    // angle w.r.t. the y axis
Float_t fH2;        // half length in y at high z
Float_t fBl2;       // half length in x at high z and y low edge
Float_t fTl2;       // half length in x at high z and y high edge
Float_t fAlpha2;    // angle w.r.t. the y axis

virtual void    SetPoints(Double_t *points) const;
public:
TGTRA();
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,
Float_t bl1, Float_t tl1, Float_t alpha1, Float_t h2, Float_t bl2, Float_t tl2,
Float_t alpha2);
virtual ~TGTRA();

Float_t         GetTwist() const  {return fTwist;}
Float_t         GetH1() const     {return fH1;}
Float_t         GetBl1() const    {return fBl1;}
Float_t         GetTl1() const    {return fTl1;}
Float_t         GetAlpha1() const {return fAlpha1;}
Float_t         GetH2() const     {return fH2;}
Float_t         GetBl2() const    {return fBl2;}
Float_t         GetTl2() const    {return fTl2;}
Float_t         GetAlpha2() const {return fAlpha2;}

ClassDef(TGTRA,1)  //GTRA shape
};

#endif
```
TGTRA.h:1
TGTRA.h:2
TGTRA.h:3
TGTRA.h:4
TGTRA.h:5
TGTRA.h:6
TGTRA.h:7
TGTRA.h:8
TGTRA.h:9
TGTRA.h:10
TGTRA.h:11
TGTRA.h:12
TGTRA.h:13
TGTRA.h:14
TGTRA.h:15
TGTRA.h:16
TGTRA.h:17
TGTRA.h:18
TGTRA.h:19
TGTRA.h:20
TGTRA.h:21
TGTRA.h:22
TGTRA.h:23
TGTRA.h:24
TGTRA.h:25
TGTRA.h:26
TGTRA.h:27
TGTRA.h:28
TGTRA.h:29
TGTRA.h:30
TGTRA.h:31
TGTRA.h:32
TGTRA.h:33
TGTRA.h:34
TGTRA.h:35
TGTRA.h:36
TGTRA.h:37
TGTRA.h:38
TGTRA.h:39
TGTRA.h:40
TGTRA.h:41
TGTRA.h:42
TGTRA.h:43
TGTRA.h:44
TGTRA.h:45
TGTRA.h:46
TGTRA.h:47
TGTRA.h:48
TGTRA.h:49
TGTRA.h:50
TGTRA.h:51
TGTRA.h:52
TGTRA.h:53
TGTRA.h:54
TGTRA.h:55
TGTRA.h:56
TGTRA.h:57
TGTRA.h:58
TGTRA.h:59
TGTRA.h:60
TGTRA.h:61
TGTRA.h:62
TGTRA.h:63