5 #include "GeoModelKernel/GeoShapeShift.h" 6 #include "GeoModelKernel/GeoShapeAction.h" 8 const std::string GeoShapeShift::s_classType =
"Shift";
9 const ShapeType GeoShapeShift::s_classTypeID = 0x03;
11 GeoShapeShift::GeoShapeShift (
const GeoShape* A,
const GeoTrf::Transform3D &X)
18 GeoShapeShift::~GeoShapeShift()
23 double GeoShapeShift::volume ()
const 25 return m_op->volume ();
28 const std::string & GeoShapeShift::type ()
const 33 ShapeType GeoShapeShift::typeID ()
const 38 const GeoShape* GeoShapeShift::getOp ()
const 43 const GeoTrf::Transform3D & GeoShapeShift::getX ()
const 50 action->getPath ()->push (
this);
51 action->handleShift (
this);
52 if (action->shouldTerminate ())
54 action->getPath ()->pop ();
58 if (action->getDepthLimit ().isValid ()
59 && action->getPath ()->getLength () > action->getDepthLimit ())
66 if (action->shouldTerminate ())
68 action->getPath ()->pop ();
72 action->getPath()->pop();
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: