Mantid
|
SymmetryElementRotation represents rotation-, rotoinversion- and screw-axes. More...
#include <SymmetryElement.h>
Public Types | |
enum | RotationSense { Positive , Negative , NoRotation } |
Public Member Functions | |
SymmetryElement_sptr | clone () const override |
Returns a clone of the symmetry element. More... | |
RotationSense | getRotationSense () const |
Returns the internally stored rotation sense. More... | |
SymmetryElementRotation (const std::string &symbol, const V3R &axis, const V3R &translation=V3R(0, 0, 0), const RotationSense &rotationSense=Positive) | |
Constructor for rotation-,rotoinversion- and screw-axes. More... | |
Public Member Functions inherited from Mantid::Geometry::SymmetryElementWithAxis | |
V3R | getAxis () const |
Returns the internally stored axis. More... | |
V3R | getTranslation () const |
Returns the internally stored translation vector. More... | |
Public Member Functions inherited from Mantid::Geometry::SymmetryElement | |
virtual std::shared_ptr< SymmetryElement > | clone () const =0 |
std::string | hmSymbol () const |
Returns the internally stored Hermann-Mauguin symbol. More... | |
virtual | ~SymmetryElement ()=default |
Protected Attributes | |
RotationSense | m_rotationSense |
Protected Attributes inherited from Mantid::Geometry::SymmetryElementWithAxis | |
V3R | m_axis |
V3R | m_translation |
Protected Attributes inherited from Mantid::Geometry::SymmetryElement | |
std::string | m_hmSymbol |
Additional Inherited Members | |
Protected Member Functions inherited from Mantid::Geometry::SymmetryElementWithAxis | |
void | setAxis (const V3R &axis) |
Sets the axis, throws std::invalid_argument if the axis is (0,0,0). More... | |
SymmetryElementWithAxis (const std::string &symbol, const V3R &axis, const V3R &translation) | |
Constructor for SymmetryElementWithAxis. More... | |
Protected Member Functions inherited from Mantid::Geometry::SymmetryElement | |
SymmetryElement (std::string symbol) | |
Constructor with symbol argument. More... | |
SymmetryElementRotation represents rotation-, rotoinversion- and screw-axes.
Besides the axis and translation vectors, which are inherited from SymmetryElementWithAxis, it also provides a rotation sense.
When constructed directly, it's possible to leave out translation and rotation sense, these will be set to default values ((0,0,0) and positive rotation sense).
Symbol determination is perfomed by SymmetryElementRotationGenerator, which uses the SymmetryOperation to derive the Herrman-Mauguin symbol.
Definition at line 150 of file SymmetryElement.h.
Enumerator | |
---|---|
Positive | |
Negative | |
NoRotation |
Definition at line 152 of file SymmetryElement.h.
Mantid::Geometry::SymmetryElementRotation::SymmetryElementRotation | ( | const std::string & | symbol, |
const V3R & | axis, | ||
const V3R & | translation = V3R(0, 0, 0) , |
||
const RotationSense & | rotationSense = Positive |
||
) |
Constructor for rotation-,rotoinversion- and screw-axes.
Definition at line 49 of file SymmetryElement.cpp.
|
overridevirtual |
Returns a clone of the symmetry element.
Implements Mantid::Geometry::SymmetryElement.
Definition at line 54 of file SymmetryElement.cpp.
References Mantid::Geometry::SymmetryElementWithAxis::m_axis, Mantid::Geometry::SymmetryElement::m_hmSymbol, m_rotationSense, and Mantid::Geometry::SymmetryElementWithAxis::m_translation.
|
inline |
Returns the internally stored rotation sense.
Definition at line 160 of file SymmetryElement.h.
|
protected |
Definition at line 163 of file SymmetryElement.h.
Referenced by clone().