3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
9 const Int_t kDiv = 20; //default number of divisions
11 class AliGPCone: public AliGShape {
15 Double_t* fSiTab; //Table of sin(fPhi1) .... sin(fPhil+fDphi1)
16 Double_t* fCoTab; //Table of cos(fPhi1) .... cos(fPhil+fDphi1)
20 Float_t fPhi1; //lower phi limit
21 Float_t fDphi1; //range in phi
22 Int_t fNz; //number of z segments
23 Float_t* fRmin; // pointer to array of inside radiuses
24 Float_t* fRmax; // pointer to array of outside radiuses
25 Float_t* fDz; // pointer to array of half lengths in z
26 Int_t fNdiv; //number of divisions
29 AliGPCone(); /* Default Constructor */
30 AliGPCone( Text_t *name, Text_t* title, Float_t phi1, Float_t dphi1, Int_t nz);
31 AliGPCone( AliGPCone* pcone );
32 AliGPCone( Text_t *name, Text_t* title, Float_t phi1, Float_t dphi1,
33 Int_t nz, Float_t Z[10], Float_t RMIN[10], Float_t RMAX[10]);
34 AliGPCone( Text_t *name, Text_t* title, Float_t *upar, Int_t np);
35 virtual ~AliGPCone(); /* Destructor */
37 //Float_t GetRmin2() {return fRmin2;}
38 //Float_t GetRmax2() {return fRmax2;}
39 void DefineSection(Int_t secNum, Float_t z, Float_t rmin, Float_t rmax);
40 virtual void Draw(Option_t *option);
41 virtual void DrawShape(Option_t *option); // *MENU*
42 virtual Int_t GetNumberOfDivisions () const {if (fNdiv) return fNdiv; else return kDiv;}
43 void MakeTableOfCoSin();
44 void Paint(Option_t *option);
45 void SetNumberOfDivisions (Int_t p);
46 virtual void SetPoints(Float_t *buff);
49 ClassDef(AliGPCone,1) // Polycone class