Mantid
|
This class represents a composite implicit function used for communicating and implementing an operation against an MDWorkspace. More...
#include <CompositeImplicitFunction.h>
Public Member Functions | |
bool | addFunction (const Mantid::Geometry::MDImplicitFunction_sptr &constituentFunction) |
std::string | getName () const override |
int | getNFunctions () const |
Return the number of functions in this composite. More... | |
virtual bool | isPointContained (const coord_t *coords) |
Is a point in MDimensions contained by this ImplicitFunction? If the point is bounded by ALL planes contained, then this returns true. More... | |
bool | isPointContained (const coord_t *coords) override |
Is a point in MDimensions contained by this ImplicitFunction? If the point is bounded by ALL planes contained, then this returns true. More... | |
virtual bool | isPointContained (const Mantid::Kernel::VMD &coords) |
Is a point in MDimensions contained by this ImplicitFunction? If the point is bounded by ALL planes contained, then this returns true. More... | |
virtual bool | isPointContained (const std::vector< coord_t > &coords) |
Is a point in MDimensions contained by this ImplicitFunction? If the point is bounded by ALL planes contained, then this returns true. More... | |
bool | isPointContained (const std::vector< coord_t > &coords) override |
Is a point in MDimensions contained by this ImplicitFunction? If the point is bounded by ALL planes contained, then this returns true. More... | |
std::string | toXMLString () const override |
Serialize to XML. More... | |
Public Member Functions inherited from Mantid::Geometry::MDImplicitFunction | |
void | addPlane (const MDPlane &plane) |
Add a bounded plane to this implicit function. More... | |
eContact | boxContact (const coord_t *vertexes, const size_t numPoints) const |
Determine how a box (consisting of a number of vertexes) is in contact with the implicit function. More... | |
virtual std::string | getName () const |
size_t | getNumDims () const |
size_t | getNumPlanes () const |
const MDPlane & | getPlane (size_t index) const |
bool | isBoxTouching (const coord_t *vertexes, const size_t numPoints) |
Same as isBoxTouching(vector), except that it takes a bare array of coordinates. More... | |
bool | isBoxTouching (const std::vector< std::vector< coord_t > > &vertexes) |
Is there a chance that the box defined by these vertexes touches the implicit function volume? More... | |
virtual bool | isPointContained (const coord_t *coords) |
Is a point in MDimensions contained by this ImplicitFunction? If the point is bounded by ALL planes contained, then this returns true. More... | |
virtual bool | isPointContained (const Mantid::Kernel::VMD &coords) |
Is a point in MDimensions contained by this ImplicitFunction? If the point is bounded by ALL planes contained, then this returns true. More... | |
virtual bool | isPointContained (const std::vector< coord_t > &coords) |
Is a point in MDimensions contained by this ImplicitFunction? If the point is bounded by ALL planes contained, then this returns true. More... | |
MDImplicitFunction () | |
Constructor. More... | |
virtual std::string | toXMLString () const |
virtual | ~MDImplicitFunction ()=default |
Static Public Member Functions | |
static std::string | functionName () |
Protected Types | |
using | FunctionIterator = std::vector< Mantid::Geometry::MDImplicitFunction_sptr >::const_iterator |
Protected Attributes | |
std::vector< Mantid::Geometry::MDImplicitFunction_sptr > | m_Functions |
Protected Attributes inherited from Mantid::Geometry::MDImplicitFunction | |
size_t | m_nd |
number of dimensions for which this object can be applied More... | |
size_t | m_numPlanes |
Cached number of planes (for a sligh speed-up) More... | |
std::vector< MDPlane > | m_planes |
Vector of all the planes applying for this implict function. More... | |
Additional Inherited Members | |
Public Types inherited from Mantid::Geometry::MDImplicitFunction | |
enum | eContact { NOT_TOUCHING = 0 , TOUCHING = 1 , CONTAINED = 2 } |
Enum for describing the contact between a box and an implicit function. More... | |
This class represents a composite implicit function used for communicating and implementing an operation against an MDWorkspace.
Definition at line 30 of file CompositeImplicitFunction.h.
|
protected |
Definition at line 47 of file CompositeImplicitFunction.h.
bool Mantid::Geometry::CompositeImplicitFunction::addFunction | ( | const Mantid::Geometry::MDImplicitFunction_sptr & | constituentFunction | ) |
Definition at line 24 of file CompositeImplicitFunction.cpp.
References m_Functions.
|
inlinestatic |
Definition at line 43 of file CompositeImplicitFunction.h.
Referenced by getName().
|
overridevirtual |
Reimplemented from Mantid::Geometry::MDImplicitFunction.
Definition at line 33 of file CompositeImplicitFunction.cpp.
References functionName().
Referenced by toXMLString().
int Mantid::Geometry::CompositeImplicitFunction::getNFunctions | ( | ) | const |
Return the number of functions in this composite.
Definition at line 64 of file CompositeImplicitFunction.cpp.
References m_Functions.
|
inlinevirtual |
Is a point in MDimensions contained by this ImplicitFunction? If the point is bounded by ALL planes contained, then this returns true.
coords | :: nd-sized array of coordinates |
Reimplemented from Mantid::Geometry::MDImplicitFunction.
Definition at line 94 of file MDImplicitFunction.h.
|
overridevirtual |
Is a point in MDimensions contained by this ImplicitFunction? If the point is bounded by ALL planes contained, then this returns true.
coords | :: nd-sized array of coordinates |
Reimplemented from Mantid::Geometry::MDImplicitFunction.
Definition at line 66 of file CompositeImplicitFunction.cpp.
References m_Functions.
|
inlinevirtual |
Is a point in MDimensions contained by this ImplicitFunction? If the point is bounded by ALL planes contained, then this returns true.
coords | :: nd-sized array of coordinates |
Reimplemented from Mantid::Geometry::MDImplicitFunction.
Definition at line 110 of file MDImplicitFunction.h.
|
inlinevirtual |
Is a point in MDimensions contained by this ImplicitFunction? If the point is bounded by ALL planes contained, then this returns true.
coords | :: nd-sized vector of coordinates. No size-check is made! |
Reimplemented from Mantid::Geometry::MDImplicitFunction.
Definition at line 126 of file MDImplicitFunction.h.
|
overridevirtual |
Is a point in MDimensions contained by this ImplicitFunction? If the point is bounded by ALL planes contained, then this returns true.
coords | :: nd-sized vector of coordinates. No size-check is made! |
Reimplemented from Mantid::Geometry::MDImplicitFunction.
Definition at line 78 of file CompositeImplicitFunction.cpp.
References m_Functions.
|
overridevirtual |
Serialize to XML.
Reimplemented from Mantid::Geometry::MDImplicitFunction.
Definition at line 36 of file CompositeImplicitFunction.cpp.
References getName(), and m_Functions.
|
protected |
Definition at line 46 of file CompositeImplicitFunction.h.
Referenced by addFunction(), getNFunctions(), isPointContained(), and toXMLString().