source: trunk/MagicSoft/Mars/mgui/MHexagon.h@ 2925

Last change on this file since 2925 was 2231, checked in by tbretz, 21 years ago
*** empty log message ***
File size: 1.7 KB
Line 
1#ifndef MARS_MHexagon
2#define MARS_MHexagon
3
4//////////////////////////////////////////////////////////////
5//
6// MHexagon
7//
8// A Hexagon for the MAGIC event display
9//
10//////////////////////////////////////////////////////////////
11
12#ifndef MARS_MAGIC
13#include "MAGIC.h"
14#endif
15
16#ifndef ROOT_TObject
17#include <TObject.h>
18#endif
19
20#ifndef ROOT_TAttLine
21#include <TAttLine.h>
22#endif
23
24#ifndef ROOT_TAttFill
25#include <TAttFill.h>
26#endif
27
28class MGeomPix;
29
30class MHexagon : public TObject, public TAttLine, public TAttFill
31{
32protected:
33
34 Float_t fX; // X coordinate of center
35 Float_t fY; // Y coordinate of center
36 Float_t fD; // diameter D or better distance between opposite sides
37
38public:
39
40 MHexagon();
41 MHexagon(Float_t x, Float_t y, Float_t d);
42 MHexagon(const MGeomPix &pix);
43 MHexagon(const MHexagon &hexagon);
44
45 virtual void Copy(TObject &hexagon)
46#if ROOT_VERSION_CODE > ROOT_VERSION(3,04,01)
47const
48#endif
49 ;
50
51 virtual Int_t DistancetoPrimitive(Int_t px, Int_t py);
52 virtual Float_t DistanceToPrimitive(Float_t px, Float_t py);
53 virtual void DrawHexagon(Float_t x, Float_t y, Float_t d);
54
55 //virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py);
56
57 virtual void ls(const Option_t *Option="") const;
58 virtual void Paint(Option_t *Option="");
59 virtual void PaintHexagon(Float_t x, Float_t y, Float_t d);
60 virtual void Print(Option_t *Option="") const; // *MENU*
61 virtual void SavePrimitive(ofstream &out, Option_t *);
62
63 Float_t GetX() const { return fX; }
64 Float_t GetY() const { return fY; }
65 Float_t GetD() const { return fD; }
66
67 ClassDef(MHexagon, 1) // A hexagon for MAGIC
68};
69
70#endif
71
Note: See TracBrowser for help on using the repository browser.