source: trunk/MagicSoft/Mars/msimreflector/MMirrorHex.h@ 9243

Last change on this file since 9243 was 9236, checked in by tbretz, 16 years ago
*** empty log message ***
File size: 807 bytes
Line 
1#ifndef MARS_MMirrorHex
2#define MARS_MMirrorHex
3
4#ifndef MARS_MMirror
5#include "MMirror.h"
6#endif
7
8class MMirrorHex : public MMirror
9{
10private:
11 const static Double_t fgCos30;
12 const static Double_t fgCos60;
13 const static Double_t fgSin60;
14
15 Double_t fD; // half diameter D or better distance between opposite sides
16 Double_t fMaxR;
17
18 void SetD(Double_t d) { fD=d/2; fMaxR=fD/fgCos30; }
19
20public:
21 MMirrorHex() { SetD(24.75); }
22
23 Double_t GetMaxR() const { return fMaxR; }
24
25 // This should fit with Paint()
26 Bool_t HasHit(const MQuaternion &p) const;
27 // This should fit with HasHit()
28 void Paint(Option_t *);
29 Bool_t CanHit(const MQuaternion &p) const;
30 Int_t ReadM(const TObjArray &tok);
31
32 ClassDef(MMirrorHex, 0) // A spherical hexagon type mirror
33};
34
35#endif
Note: See TracBrowser for help on using the repository browser.