VGM Version 5.3
Loading...
Searching...
No Matches
ExtrudedSolid.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_EXTRUDED_SOLID_H
21#define ROOT_GM_EXTRUDED_SOLID_H
22
24
25#include <string>
26#include <vector>
27
28class TGeoXtru;
29
30namespace RootGM {
31
33{
34 public:
35 ExtrudedSolid(const std::string& name, std::vector<VGM::TwoVector> polygon,
36 std::vector<std::vector<double> > zsections);
37 ExtrudedSolid(TGeoXtru* xtru);
38 virtual ~ExtrudedSolid();
39
40 // methods
41 virtual std::string Name() const;
42 inline int NofVertices() const;
43 inline VGM::TwoVector Vertex(int index) const;
44 virtual int NofZSections() const;
45 virtual double ZPosition(int iz) const;
46 virtual VGM::TwoVector Offset(int iz) const;
47 virtual double Scale(int iz) const;
48
49 protected:
51 ExtrudedSolid(const ExtrudedSolid& rhs);
52
53 TGeoXtru* fXtru;
54};
55
56} // namespace RootGM
57
58#endif // ROOT_GM_EXTRUDED_SOLID_H
The ABC for xtru solids.
VGM implementation for Root extruded solid.
virtual std::string Name() const
Return the name of this solid.
virtual int NofZSections() const
Return the number of planes perpendicular to the z axis.
virtual VGM::TwoVector Offset(int iz) const
Return the polygon offset in iz-th side.
virtual double ZPosition(int iz) const
Return the z position of the iz-th plane in mm.
int NofVertices() const
Return the number of vertices of outline polygon.
VGM::TwoVector Vertex(int index) const
Return the index-th vertex of outline polygon.
virtual double Scale(int iz) const
Return the polygon scale in iz-th side.
VGM implementation for Root.
Definition axis.h:28
std::pair< double, double > TwoVector
Definition TwoVector.h:28