VGM Version 5.3
Loading...
Searching...
No Matches
Polyhedra.h
Go to the documentation of this file.
1// $Id$
2
3// -----------------------------------------------------------------------
4// The RootGM package of the Virtual Geometry Model
5// Copyright (C) 2007, Ivana Hrivnacova
6// All rights reserved.
7//
8// For the licensing terms see vgm/LICENSE.
9// Contact: ivana@ipno.in2p3.fr
10// -----------------------------------------------------------------------
11
13//
19
20#ifndef ROOT_GM_POLYHEDRA_H
21#define ROOT_GM_POLYHEDRA_H
22
24
25#include <string>
26
27class TGeoPgon;
28
29namespace RootGM {
30
32{
33 public:
34 Polyhedra(const std::string& name, double sphi, double dphi, int nofSides,
35 int nofZPlanes, double* z, double* rin, double* rout);
36 Polyhedra(TGeoPgon* polycone);
37 virtual ~Polyhedra();
38
39 // methods
40 virtual std::string Name() const;
41 virtual double StartPhi() const;
42 virtual double DeltaPhi() const;
43 virtual int NofSides() const;
44 virtual int NofZPlanes() const;
45 virtual double* ZValues() const;
46 virtual double* InnerRadiusValues() const;
47 virtual double* OuterRadiusValues() const;
48
49 protected:
50 Polyhedra();
51 Polyhedra(const Polyhedra& rhs);
52
53 private:
54 void CreateBuffers();
55
56 static const int fgkMaxNofZPlanes;
57 static double* fgZBuffer;
58 static double* fgRinBuffer;
59 static double* fgRoutBuffer;
60
61 TGeoPgon* fPolyhedra;
62};
63
64} // namespace RootGM
65
66#endif // ROOT_GM_POLYHEDRA_H
The ABC for polyhedra solids.
Definition VPolyhedra.h:30
VGM implementation for Root polyhedra solid.
Definition Polyhedra.h:32
virtual double * InnerRadiusValues() const
Return the array of innner radius of the planes in mm.
virtual int NofZPlanes() const
Return number of planes perpendicular to the z axis.
virtual double * ZValues() const
Return the array of z positions of the planes in mm.
virtual ~Polyhedra()
virtual double * OuterRadiusValues() const
Return the array of outer radius of the planes in mm.
virtual double StartPhi() const
Return starting phi angle of the segment in deg.
virtual int NofSides() const
Return number of sides of the cross section between the given phi limits.
virtual double DeltaPhi() const
Return opening phi angle of the segment in deg.
virtual std::string Name() const
Return the name of this solid.
VGM implementation for Root.
Definition axis.h:28