5 #ifndef GEOMODELKERNEL_GEOGENERICTRAP_H 6 #define GEOMODELKERNEL_GEOGENERICTRAP_H 8 #include "GeoModelKernel/GeoShape.h" 9 #include "GeoModelKernel/GeoDefinitions.h" 12 typedef GeoTrf::Vector2D GeoTwoVector;
13 typedef std::vector<GeoTwoVector> GeoGenericTrapVertices;
18 GeoGenericTrap(
double ZHalfLength,
const GeoGenericTrapVertices& Vertices);
20 virtual double volume()
const;
22 virtual const std::string& type()
const;
23 virtual ShapeType typeID()
const;
25 static const std::string& getClassType();
26 static ShapeType getClassTypeID();
30 double getZHalfLength()
const;
31 const GeoGenericTrapVertices& getVertices()
const;
40 static const std::string s_classType;
41 static const ShapeType s_classTypeID;
44 GeoGenericTrapVertices m_vertices;
47 inline const std::string& GeoGenericTrap::getClassType()
52 inline ShapeType GeoGenericTrap::getClassTypeID()
This class is a visitor for shapes. It allows a navigation of the boolean expression tree for shapes...
This class describes a Shape. Shapes will be able to do the following things: