6 #include "GeoModelKernel/GeoPolyhedrizeAction.h" 7 #include "GeoModelKernel/GeoShapeAction.h" 9 #include "GeoModelKernel/GeoEllipticalTube.h" 10 const std::string GeoEllipticalTube::s_classType =
"EllipticalTube";
11 const ShapeType GeoEllipticalTube::s_classTypeID = 0x22;
14 GeoEllipticalTube::GeoEllipticalTube(
double XHalfLength,
double YHalfLength,
double ZHalfLength)
15 : m_xHalfLength(XHalfLength)
16 , m_yHalfLength(YHalfLength)
17 , m_zHalfLength(ZHalfLength)
22 GeoEllipticalTube::~GeoEllipticalTube()
26 double GeoEllipticalTube::volume ()
const 29 double M_PI = acos (-1.0);
31 return 2 * M_PI * m_xHalfLength * m_yHalfLength * m_zHalfLength;
34 const std::string & GeoEllipticalTube::type ()
const 39 ShapeType GeoEllipticalTube::typeID ()
const 46 action->handleEllipticalTube(
this);
This class is a visitor for shapes. It allows a navigation of the boolean expression tree for shapes...