Mantid
|
IObject : Interface for geometry objects. More...
#include <IObject.h>
Public Member Functions | |
virtual IObject * | clone () const =0 |
virtual IObject * | cloneWithMaterial (const Kernel::Material &material) const =0 |
virtual double | distance (const Geometry::Track &) const =0 |
virtual void | draw () const =0 |
virtual boost::optional< Kernel::V3D > | generatePointInObject (Kernel::PseudoRandomNumberGenerator &rng, const BoundingBox &activeRegion, const size_t) const =0 |
virtual boost::optional< Kernel::V3D > | generatePointInObject (Kernel::PseudoRandomNumberGenerator &rng, const size_t) const =0 |
virtual const BoundingBox & | getBoundingBox () const =0 |
Return cached value of axis-aligned bounding box. More... | |
virtual void | getBoundingBox (double &xmax, double &ymax, double &zmax, double &xmin, double &ymin, double &zmin) const =0 |
Calculate (or return cached value of) Axis Aligned Bounding box (DEPRECATED) More... | |
virtual std::shared_ptr< GeometryHandler > | getGeometryHandler () const =0 |
virtual int | getName () const =0 |
virtual void | GetObjectGeom (detail::ShapeInfo::GeometryShape &type, std::vector< Kernel::V3D > &vectors, double &innerRadius, double &radius, double &height) const =0 |
virtual int | getPointInObject (Kernel::V3D &point) const =0 |
virtual bool | hasValidShape () const =0 |
virtual const std::string & | id () const =0 |
virtual void | initDraw () const =0 |
virtual int | interceptSurface (Geometry::Track &) const =0 |
virtual bool | isFiniteGeometry () const |
virtual bool | isOnSide (const Kernel::V3D &) const =0 |
virtual bool | isValid (const Kernel::V3D &) const =0 |
virtual const Kernel::Material & | material () const =0 |
virtual void | setFiniteGeometryFlag (bool) |
virtual void | setID (const std::string &id)=0 |
virtual void | setMaterial (const Kernel::Material &material)=0 |
virtual detail::ShapeInfo::GeometryShape | shape () const =0 |
virtual const detail::ShapeInfo & | shapeInfo () const =0 |
virtual double | solidAngle (const Kernel::V3D &observer) const =0 |
virtual double | solidAngle (const Kernel::V3D &observer, const Kernel::V3D &scaleFactor) const =0 |
virtual double | volume () const =0 |
virtual | ~IObject ()=default |
|
virtualdefault |
|
pure virtual |
Implemented in Mantid::Geometry::Container, Mantid::Geometry::CSGObject, Mantid::Geometry::MeshObject, and Mantid::Geometry::MeshObject2D.
Referenced by Mantid::Algorithms::MultipleScatteringCorrectionDistGraber::cacheLS1(), Mantid::Algorithms::PaalmanPingsAbsorptionCorrection::initialiseCachedDistances(), and Mantid::Algorithms::AnyShapeAbsorption::initialiseCachedDistances().
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
Return cached value of axis-aligned bounding box.
Implemented in Mantid::Geometry::Container, Mantid::Geometry::CSGObject, Mantid::Geometry::MeshObject, and Mantid::Geometry::MeshObject2D.
Referenced by Mantid::CurveFitting::Algorithms::VesuvioCalculateMS::cacheInputs(), and Mantid::Algorithms::BeamProfileFactory::createBeamProfile().
|
pure virtual |
Calculate (or return cached value of) Axis Aligned Bounding box (DEPRECATED)
Implemented in Mantid::Geometry::Container, Mantid::Geometry::CSGObject, Mantid::Geometry::MeshObject, and Mantid::Geometry::MeshObject2D.
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
|
pure virtual |
Implemented in Mantid::Geometry::Container, Mantid::Geometry::CSGObject, Mantid::Geometry::MeshObject, and Mantid::Geometry::MeshObject2D.
Referenced by Mantid::Algorithms::AbsorptionCorrection::constructSample(), Mantid::Algorithms::PaalmanPingsAbsorptionCorrection::constructSample(), Mantid::Algorithms::BeamProfileFactory::createBeamProfile(), Mantid::Algorithms::CylinderAbsorption::getShapeFromSample(), Mantid::Geometry::ComponentInfo::hasValidShape(), and Mantid::Algorithms::MCInteractionVolume::MCInteractionVolume().
|
pure virtual |
|
pure virtual |
|
pure virtual |
Implemented in Mantid::Geometry::MeshObject, Mantid::Geometry::Container, Mantid::Geometry::CSGObject, and Mantid::Geometry::MeshObject2D.
Referenced by Mantid::Algorithms::AbsorptionCorrection::calculateDistances(), Mantid::Algorithms::PaalmanPingsAbsorptionCorrection::calculateDistances(), Mantid::Algorithms::XrayAbsorptionCorrection::calculateMuonPos(), Mantid::Algorithms::DetectorEfficiencyCor::distToSurface(), Mantid::Algorithms::He3TubeEfficiency::distToSurface(), Mantid::Algorithms::AddAbsorptionWeightedPathLengths::exec(), Mantid::Algorithms::XrayAbsorptionCorrection::exec(), Mantid::CurveFitting::Algorithms::VesuvioCalculateMS::generateDetectorPos(), Mantid::CurveFitting::Algorithms::VesuvioCalculateMS::generateScatter(), Mantid::Algorithms::PaalmanPingsAbsorptionCorrection::initialiseCachedDistances(), and Mantid::Algorithms::FlatPlateAbsorption::initialiseCachedDistances().
|
inlinevirtual |
Reimplemented in Mantid::Geometry::CSGObject.
|
pure virtual |
|
pure virtual |
|
pure virtual |
Implemented in Mantid::Geometry::Container, Mantid::Geometry::CSGObject, Mantid::Geometry::MeshObject, and Mantid::Geometry::MeshObject2D.
Referenced by Mantid::Algorithms::MultipleScatteringCorrection::calculateSingleComponent(), and Mantid::Algorithms::DiscusMultipleScatteringCorrection::prepareStructureFactors().
|
inlinevirtual |
Reimplemented in Mantid::Geometry::CSGObject.
|
pure virtual |
|
pure virtual |
|
pure virtual |
Implemented in Mantid::Geometry::Container, Mantid::Geometry::CSGObject, Mantid::Geometry::MeshObject, and Mantid::Geometry::MeshObject2D.
Referenced by Mantid::Geometry::Rasterize::calculate(), Mantid::Geometry::Rasterize::calculateCylinder(), Mantid::Geometry::Rasterize::calculateHollowCylinder(), Mantid::Algorithms::CylinderAbsorption::getShapeFromSample(), and Mantid::Algorithms::CylinderAbsorption::initialiseCachedDistances().
|
pure virtual |
Implemented in Mantid::Geometry::Container, Mantid::Geometry::CSGObject, Mantid::Geometry::MeshObject, and Mantid::Geometry::MeshObject2D.
Referenced by Mantid::Geometry::Rasterize::calculate(), Mantid::Geometry::Rasterize::calculateCylinder(), and Mantid::Geometry::Rasterize::calculateHollowCylinder().
|
pure virtual |
Implemented in Mantid::Geometry::Container, Mantid::Geometry::CSGObject, Mantid::Geometry::MeshObject, and Mantid::Geometry::MeshObject2D.
Referenced by Mantid::Geometry::ComponentInfo::solidAngle().
|
pure virtual |
|
pure virtual |