]>
Commit | Line | Data |
---|---|---|
ab2f6604 | 1 | #ifndef ALIGSHAPE_H |
2 | #define ALIGSHAPE_H | |
3da30618 | 3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | /* $Id$ */ | |
ab2f6604 | 7 | |
8 | /* -*- C++ -*- */ | |
9 | /* */ | |
10 | /* 1998/10/22 */ | |
11 | /* -------------------------------------------------------------------------- */ | |
12 | /* */ | |
13 | /* AliGShape Class */ | |
14 | /* */ | |
15 | /* This file is part of the ALICE Geometry Database . */ | |
16 | /* */ | |
17 | /* Author: Joana E. Santo */ | |
18 | /* */ | |
19 | /* -------------------------------------------------------------------------- */ | |
20 | /* The shape virtual class represents the basic elements used in this */ | |
21 | /* geometry to build the constituents of a detector. Deriving from this */ | |
22 | /* class there are simple shapes like box, sphere, cone and thorus, */ | |
23 | /* supershapes that are obtained from the previous by Boolean operations */ | |
24 | /* and also user defined shapes. */ | |
25 | ||
26 | #ifndef ROOT_TNamed | |
27 | #include <TNamed.h> | |
28 | ||
29 | #endif | |
30 | ||
31 | //#ifndef ROOT_TMaterial | |
32 | //#include <TMaterial.h> | |
33 | //#endif | |
34 | ||
35 | #ifndef ROOT_TAttLine | |
36 | #include <TAttLine.h> | |
37 | #endif | |
38 | ||
39 | #ifndef ROOT_TAttFill | |
40 | #include <TAttFill.h> | |
41 | #endif | |
42 | ||
43 | #ifndef ROOT_X3DBuffer | |
44 | #include <X3DBuffer.h> | |
45 | #endif | |
46 | ||
47 | #ifndef ROOT_TPolyLine3D | |
48 | #include <TPolyLine3D.h> | |
49 | #endif | |
50 | ||
51 | #include "TVector.h" | |
52 | class AliGNode; | |
53 | extern "C" { void FillX3DBuffer (X3DBuffer *buff); } | |
54 | ||
55 | class AliGShape: public TNamed, public TAttLine, public TAttFill { | |
56 | protected: | |
57 | Int_t fColor; | |
58 | ||
59 | public: | |
60 | AliGShape(Text_t* name, Text_t* title); | |
61 | AliGShape(); | |
62 | AliGShape( AliGShape* shape ); // Copy Constructor | |
63 | virtual ~AliGShape() {} | |
64 | ||
65 | Int_t DistancetoPrimitive(Int_t, Int_t); | |
66 | Int_t GetCol() { return fColor; } | |
67 | virtual Bool_t Is3D () {return kTRUE;} | |
68 | virtual void Paint(Option_t *option=""); | |
69 | virtual void PaintGLPoints(Float_t *vertex); | |
70 | virtual void PaintShape(X3DBuffer *buff, Bool_t rangeView); | |
71 | void SetCol( Int_t color ) { fColor = color; } | |
72 | virtual void SetName(const Text_t *name); | |
73 | virtual void SetPoints(Float_t *buffer); | |
74 | ||
75 | ClassDef(AliGShape,1) //Generic shape class | |
76 | }; | |
77 | ||
78 | R__EXTERN AliGNode* gNode; | |
79 | R__EXTERN TVector* gMatrix; | |
80 | R__EXTERN Size3D gSize3D; | |
81 | ||
82 | inline void AliGShape::PaintGLPoints(Float_t *) { } | |
83 | inline void AliGShape::SetName(const Text_t *) { } | |
84 | ||
85 | #endif |