]> git.uio.no Git - u/mrichter/AliRoot.git/blob - GEODB/AliGSphere.h
Introduction of the Copyright and cvs Log
[u/mrichter/AliRoot.git] / GEODB / AliGSphere.h
1 #ifndef ALIGSPHERE_H
2 #define ALIGSPHERE_H
3
4 #include "AliGShape.h"
5
6 class AliGSphere: public AliGShape {
7
8     private:
9         Float_t   fAspectRatio; // Relation between asumth and grid size (by default 1.0)
10         Double_t* fCoTab;       // Table of cos(fPhimin) .... cos(Phi)
11         Double_t* fCoThetaTab;  // Table of sin(gThemin) .... cos(Theta)
12         Int_t     fNdiv;        // number of divisions
13         Int_t     fNz;          // number of sections
14         Double_t* fSiTab;       // Table of sin(fPhimin) .... sin(Phi)
15
16     protected:
17         Float_t faX;      // Coeff along Ox
18         Float_t faY;      // Coeff along Oy
19         Float_t faZ;      // Coeff along Oz
20         Float_t fPhimax;  // maximum phi
21         Float_t fPhimin;  // minimum phi
22         Float_t fRmax;    // maximum radius
23         Float_t fRmin;    // minimum radius
24         Float_t fThemax;  // maximum theta
25         Float_t fThemin;  // minimum theta
26
27         virtual void  MakeTableOfCoSin();  // Create the table of the fSiTab; fCoTab
28         virtual void  PaintGLPoints(Float_t *vertex);
29
30     public:
31         AliGSphere();
32         AliGSphere(Text_t *name, Text_t *title, Float_t rmin, Float_t rmax, Float_t themin, Float_t themax, Float_t phimin, Float_t phimax);
33         AliGSphere(Text_t *name, Text_t *title, Float_t rmax);
34         AliGSphere(AliGSphere *sphere);
35         virtual ~AliGSphere(); // Destructor
36
37         virtual void  Draw(Option_t *option);
38         virtual void  DrawShape(Option_t *option); // *MENU*
39         virtual Int_t GetNumberOfDivisions () const {if (fNdiv) return fNdiv; else return 0; /*kDiv;*/}
40         virtual void  Paint(Option_t *option);
41         virtual void  SetEllipse(Float_t *factors);
42         virtual void  SetNumberOfDivisions (Int_t p);
43         virtual void  SetPoints(Float_t *buff);
44                 void  Sizeof3D() const;
45
46    ClassDef(AliGSphere,1) //Simple sphere class
47 };
48 #endif