OpenWalnut 1.3.1
|
This data set type contains vectors as values. More...
#include <WDataSetVector.h>
Public Types | |
typedef boost::shared_ptr < WDataSetVector > | SPtr |
shared_ptr abbreviation | |
typedef boost::shared_ptr < const WDataSetVector > | ConstSPtr |
const shared_ptr abbreviation | |
Public Member Functions | |
WDataSetVector (boost::shared_ptr< WValueSetBase > newValueSet, boost::shared_ptr< WGrid > newGrid) | |
Constructs an instance out of an appropriate value set and a grid. | |
WDataSetVector () | |
Construct an empty and unusable instance. | |
virtual | ~WDataSetVector () |
Destroys this DataSet instance. | |
virtual WDataSetSingle::SPtr | clone (boost::shared_ptr< WValueSetBase > newValueSet) const |
Creates a copy (clone) of this instance but allows one to change the valueset. | |
virtual WDataSetSingle::SPtr | clone (boost::shared_ptr< WGrid > newGrid) const |
Creates a copy (clone) of this instance but allows one to change the grid. | |
virtual WDataSetSingle::SPtr | clone () const |
Creates a copy (clone) of this instance. | |
WVector3d | interpolate (const WPosition &pos, bool *success) const |
Interpolates the vector field at the given position. | |
WVector3d | eigenVectorInterpolate (const WPosition &pos, bool *success) const |
Interpolates the very same way as interpolate but it assures that all vecs are aligned to point into the same half-space. | |
WVector3d | getVectorAt (size_t index) const |
Get the vector on the given position in value set. | |
virtual bool | isTexture () const |
Determines whether this dataset can be used as a texture. | |
boost::shared_ptr< WDataSetVector > | isVectorDataSet () |
Overwrites the isVectorDataSet check. | |
Static Public Member Functions | |
static boost::shared_ptr < WPrototyped > | getPrototype () |
Returns a prototype instantiated with the true type of the deriving class. | |
Static Protected Attributes | |
static boost::shared_ptr < WPrototyped > | m_prototype = boost::shared_ptr< WPrototyped >() |
The prototype as singleton. |
This data set type contains vectors as values.
Definition at line 35 of file WDataSetVector.h.
typedef boost::shared_ptr< const WDataSetVector > WDataSetVector::ConstSPtr |
const shared_ptr abbreviation
Reimplemented from WDataSetSingle.
Definition at line 46 of file WDataSetVector.h.
typedef boost::shared_ptr< WDataSetVector > WDataSetVector::SPtr |
shared_ptr abbreviation
Reimplemented from WDataSetSingle.
Definition at line 41 of file WDataSetVector.h.
WDataSetVector::WDataSetVector | ( | boost::shared_ptr< WValueSetBase > | newValueSet, |
boost::shared_ptr< WGrid > | newGrid | ||
) |
Constructs an instance out of an appropriate value set and a grid.
newValueSet | the vector value set to use |
newGrid | the grid which maps world space to the value set |
Definition at line 39 of file WDataSetVector.cpp.
WDataSetVector::WDataSetVector | ( | ) |
Construct an empty and unusable instance.
This is needed for the prototype mechanism.
Definition at line 49 of file WDataSetVector.cpp.
Referenced by clone(), and getPrototype().
WDataSetVector::~WDataSetVector | ( | ) | [virtual] |
Destroys this DataSet instance.
Definition at line 54 of file WDataSetVector.cpp.
WDataSetSingle::SPtr WDataSetVector::clone | ( | boost::shared_ptr< WValueSetBase > | newValueSet | ) | const [virtual] |
Creates a copy (clone) of this instance but allows one to change the valueset.
Unlike copy construction, this is a very useful function if you want to keep the dynamic type of your dataset even if you just have a WDataSetSingle.
newValueSet | the new valueset. |
Reimplemented from WDataSetSingle.
Definition at line 58 of file WDataSetVector.cpp.
References WDataSetSingle::getGrid(), and WDataSetVector().
WDataSetSingle::SPtr WDataSetVector::clone | ( | boost::shared_ptr< WGrid > | newGrid | ) | const [virtual] |
Creates a copy (clone) of this instance but allows one to change the grid.
Unlike copy construction, this is a very useful function if you want to keep the dynamic type of your dataset even if you just have a WDataSetSingle.
newGrid | the new grid. |
Reimplemented from WDataSetSingle.
Definition at line 63 of file WDataSetVector.cpp.
References WDataSetSingle::getValueSet(), and WDataSetVector().
WDataSetSingle::SPtr WDataSetVector::clone | ( | ) | const [virtual] |
Creates a copy (clone) of this instance.
Unlike copy construction, this is a very useful function if you want to keep the dynamic type of your dataset even if you just have a WDataSetSingle.
Reimplemented from WDataSetSingle.
Definition at line 68 of file WDataSetVector.cpp.
References WDataSetSingle::getGrid(), WDataSetSingle::getValueSet(), and WDataSetVector().
Interpolates the very same way as interpolate but it assures that all vecs are aligned to point into the same half-space.
This is useful for eigenvector fields, where -v, and v both are eigenvectors.
pos | Position to interpolate a vector for |
success | return parameter which is true if pos was inside of the grid, false otherwise. |
Definition at line 155 of file WDataSetVector.cpp.
References getVectorAt(), WDataSetSingle::m_grid, and WDataSetSingle::m_valueSet.
Referenced by WDataSetVectorTest::testEigenVectorInterpolate(), and WDataSetVectorTest::testRotatedGridInterpolate().
boost::shared_ptr< WPrototyped > WDataSetVector::getPrototype | ( | ) | [static] |
Returns a prototype instantiated with the true type of the deriving class.
Reimplemented from WDataSetSingle.
Definition at line 73 of file WDataSetVector.cpp.
References m_prototype, and WDataSetVector().
WVector3d WDataSetVector::getVectorAt | ( | size_t | index | ) | const |
Get the vector on the given position in value set.
index | the position where to get the vector from |
Definition at line 177 of file WDataSetVector.cpp.
References WDataSetSingle::getValueSet().
Referenced by eigenVectorInterpolate(), and interpolate().
Interpolates the vector field at the given position.
pos | position to interpolate |
success | if the position was inside the grid |
Definition at line 138 of file WDataSetVector.cpp.
References getVectorAt(), WDataSetSingle::m_grid, and WDataSetSingle::m_valueSet.
Referenced by WDataSetVectorTest::testBoundary_ticket313(), WDataSetVectorTest::testEigenVectorInterpolate(), WDataSetVectorTest::testInterpolate(), and WDataSetVectorTest::testRotatedGridInterpolate().
bool WDataSetVector::isTexture | ( | ) | const [virtual] |
Determines whether this dataset can be used as a texture.
Reimplemented from WDataSetSingle.
Definition at line 208 of file WDataSetVector.cpp.
boost::shared_ptr< WDataSetVector > WDataSetVector::isVectorDataSet | ( | ) | [inline, virtual] |
Overwrites the isVectorDataSet check.
Reimplemented from WDataSet.
Definition at line 156 of file WDataSetVector.h.
boost::shared_ptr< WPrototyped > WDataSetVector::m_prototype = boost::shared_ptr< WPrototyped >() [static, protected] |
The prototype as singleton.
Reimplemented from WDataSetSingle.
Definition at line 151 of file WDataSetVector.h.
Referenced by getPrototype().