Mantid
|
PeakShapeEllipsoid : PeakShape representing a 3D ellipsoid. More...
#include <PeakShapeEllipsoid.h>
Public Member Functions | |
const std::vector< double > & | abcRadii () const |
Get radii. More... | |
const std::vector< double > & | abcRadiiBackgroundInner () const |
Get background inner radii. More... | |
const std::vector< double > & | abcRadiiBackgroundOuter () const |
Get background outer radii. More... | |
PeakShapeEllipsoid * | clone () const override |
Clone ellipsoid. More... | |
const std::vector< Mantid::Kernel::V3D > & | directions () const |
Get ellipsoid directions. More... | |
std::vector< Kernel::V3D > | getDirectionInSpecificFrame (Kernel::Matrix< double > &invertedGoniometerMatrix) const |
Get ellipsoid directions in a specified frame. More... | |
bool | operator== (const PeakShapeEllipsoid &other) const |
Equals operator. More... | |
PeakShapeEllipsoid (const std::vector< Mantid::Kernel::V3D > &directions, const std::vector< double > &abcRadii, const std::vector< double > &abcRadiiBackgroundInner, const std::vector< double > &abcRadiiBackgroundOuter, Kernel::SpecialCoordinateSystem frame, std::string algorithmName=std::string(), int algorithmVersion=-1, const Mantid::Kernel::V3D &translation={0.0, 0.0, 0.0}) | |
Constructor. More... | |
boost::optional< double > | radius (RadiusType type=RadiusType::Radius) const override |
PeakBase interface. More... | |
std::string | shapeName () const override |
Get the peak shape. More... | |
std::string | toJSON () const override |
PeakShape interface. More... | |
const Kernel::V3D & | translation () const |
Get translation of center. More... | |
Public Member Functions inherited from Mantid::DataObjects::PeakShapeBase | |
std::string | algorithmName () const override |
Get the name of the algorithm used to make this shape. More... | |
int | algorithmVersion () const override |
Get the version of the algorithm used to make this shape. More... | |
Kernel::SpecialCoordinateSystem | frame () const override |
Get the coordinate frame. More... | |
PeakShapeBase (Kernel::SpecialCoordinateSystem frame, std::string algorithmName=std::string(), int algorithmVersion=-1) | |
Constructor. More... | |
Public Member Functions inherited from Mantid::Geometry::PeakShape | |
virtual std::string | algorithmName () const =0 |
Algorithm. More... | |
virtual int | algorithmVersion () const =0 |
Algorithm Version. More... | |
virtual PeakShape * | clone () const =0 |
Deep copy this. More... | |
virtual Mantid::Kernel::SpecialCoordinateSystem | frame () const =0 |
Coordinte frame used upon creation. More... | |
virtual boost::optional< double > | radius (RadiusType type) const =0 |
Radius. More... | |
virtual std::string | shapeName () const =0 |
Shape name. More... | |
virtual std::string | toJSON () const =0 |
Serialize. More... | |
virtual | ~PeakShape ()=default |
Destructor. More... | |
Static Public Member Functions | |
static const std::string | ellipsoidShapeName () |
Private Attributes | |
std::vector< double > | m_abc_radii |
radii More... | |
std::vector< double > | m_abc_radiiBackgroundInner |
inner radii More... | |
std::vector< double > | m_abc_radiiBackgroundOuter |
outer radii More... | |
std::vector< Mantid::Kernel::V3D > | m_directions |
principle axis More... | |
Mantid::Kernel::V3D | m_translation |
translation of center More... | |
Additional Inherited Members | |
Public Types inherited from Mantid::Geometry::PeakShape | |
enum | RadiusType { Radius = 0 , OuterRadius = 1 , InnerRadius = 2 } |
For selecting different radius types. More... | |
Protected Member Functions inherited from Mantid::DataObjects::PeakShapeBase | |
void | buildCommon (Json::Value &root) const |
Build common parts of outgoing JSON serialization. More... | |
PeakShapeBase & | operator= (const PeakShapeBase &)=default |
Assignment operator. More... | |
bool | operator== (const PeakShapeBase &other) const |
Equals operator. More... | |
PeakShapeBase (const PeakShapeBase &)=default | |
Copy constructor. More... | |
Protected Attributes inherited from Mantid::DataObjects::PeakShapeBase | |
std::string | m_algorithmName |
Generating algorithm name. More... | |
int | m_algorithmVersion |
Generating algorithm version. More... | |
Mantid::Kernel::SpecialCoordinateSystem | m_frame |
Special coordinate system. More... | |
PeakShapeEllipsoid : PeakShape representing a 3D ellipsoid.
Definition at line 18 of file PeakShapeEllipsoid.h.
Mantid::DataObjects::PeakShapeEllipsoid::PeakShapeEllipsoid | ( | const std::vector< Mantid::Kernel::V3D > & | directions, |
const std::vector< double > & | abcRadii, | ||
const std::vector< double > & | abcRadiiBackgroundInner, | ||
const std::vector< double > & | abcRadiiBackgroundOuter, | ||
Kernel::SpecialCoordinateSystem | frame, | ||
std::string | algorithmName = std::string() , |
||
int | algorithmVersion = -1 , |
||
const Mantid::Kernel::V3D & | translation = {0.0, 0.0, 0.0} |
||
) |
Constructor.
Definition at line 16 of file PeakShapeEllipsoid.cpp.
References abcRadii(), abcRadiiBackgroundInner(), abcRadiiBackgroundOuter(), and directions().
const std::vector< double > & Mantid::DataObjects::PeakShapeEllipsoid::abcRadii | ( | ) | const |
Get radii.
Definition at line 46 of file PeakShapeEllipsoid.cpp.
References m_abc_radii.
Referenced by operator==(), and PeakShapeEllipsoid().
const std::vector< double > & Mantid::DataObjects::PeakShapeEllipsoid::abcRadiiBackgroundInner | ( | ) | const |
Get background inner radii.
Definition at line 48 of file PeakShapeEllipsoid.cpp.
References m_abc_radiiBackgroundInner.
Referenced by operator==(), and PeakShapeEllipsoid().
const std::vector< double > & Mantid::DataObjects::PeakShapeEllipsoid::abcRadiiBackgroundOuter | ( | ) | const |
Get background outer radii.
Definition at line 50 of file PeakShapeEllipsoid.cpp.
References m_abc_radiiBackgroundOuter.
Referenced by operator==(), and PeakShapeEllipsoid().
|
overridevirtual |
Clone ellipsoid.
Implements Mantid::Geometry::PeakShape.
Definition at line 98 of file PeakShapeEllipsoid.cpp.
const std::vector< Kernel::V3D > & Mantid::DataObjects::PeakShapeEllipsoid::directions | ( | ) | const |
Get ellipsoid directions.
Definition at line 52 of file PeakShapeEllipsoid.cpp.
References m_directions.
Referenced by operator==(), and PeakShapeEllipsoid().
|
static |
Definition at line 118 of file PeakShapeEllipsoid.cpp.
Referenced by Mantid::DataObjects::PeakShapeEllipsoidFactory::create(), and shapeName().
std::vector< Kernel::V3D > Mantid::DataObjects::PeakShapeEllipsoid::getDirectionInSpecificFrame | ( | Kernel::Matrix< double > & | invertedGoniometerMatrix | ) | const |
Get ellipsoid directions in a specified frame.
Definition at line 57 of file PeakShapeEllipsoid.cpp.
References m_directions, Mantid::Kernel::Matrix< T >::numCols(), and Mantid::Kernel::Matrix< T >::numRows().
bool Mantid::DataObjects::PeakShapeEllipsoid::operator== | ( | const PeakShapeEllipsoid & | other | ) | const |
Equals operator.
Definition at line 39 of file PeakShapeEllipsoid.cpp.
References abcRadii(), abcRadiiBackgroundInner(), abcRadiiBackgroundOuter(), directions(), Mantid::DataObjects::PeakShapeBase::operator==(), and translation().
|
overridevirtual |
PeakBase interface.
Implements Mantid::Geometry::PeakShape.
Definition at line 102 of file PeakShapeEllipsoid.cpp.
References Mantid::Geometry::PeakShape::InnerRadius, m_abc_radii, m_abc_radiiBackgroundInner, m_abc_radiiBackgroundOuter, Mantid::Geometry::PeakShape::OuterRadius, and Mantid::Geometry::PeakShape::Radius.
|
overridevirtual |
Get the peak shape.
Implements Mantid::Geometry::PeakShape.
Definition at line 100 of file PeakShapeEllipsoid.cpp.
References ellipsoidShapeName().
|
overridevirtual |
PeakShape interface.
Implements Mantid::Geometry::PeakShape.
Definition at line 72 of file PeakShapeEllipsoid.cpp.
References Mantid::DataObjects::PeakShapeBase::buildCommon(), m_abc_radii, m_abc_radiiBackgroundInner, m_abc_radiiBackgroundOuter, m_directions, and m_translation.
const Kernel::V3D & Mantid::DataObjects::PeakShapeEllipsoid::translation | ( | ) | const |
Get translation of center.
Definition at line 54 of file PeakShapeEllipsoid.cpp.
References m_translation.
Referenced by operator==().
|
private |
radii
Definition at line 56 of file PeakShapeEllipsoid.h.
Referenced by abcRadii(), radius(), and toJSON().
|
private |
inner radii
Definition at line 58 of file PeakShapeEllipsoid.h.
Referenced by abcRadiiBackgroundInner(), radius(), and toJSON().
|
private |
outer radii
Definition at line 60 of file PeakShapeEllipsoid.h.
Referenced by abcRadiiBackgroundOuter(), radius(), and toJSON().
|
private |
principle axis
Definition at line 54 of file PeakShapeEllipsoid.h.
Referenced by directions(), getDirectionInSpecificFrame(), and toJSON().
|
private |
translation of center
Definition at line 62 of file PeakShapeEllipsoid.h.
Referenced by toJSON(), and translation().