25 #ifndef WDATASETSPHERICALHARMONICS_H
26 #define WDATASETSPHERICALHARMONICS_H
32 #include "../common/math/WSymmetricSphericalHarmonic.h"
33 #include "WDataSetSingle.h"
34 #include "WValueSet.h"
47 typedef std::shared_ptr< WDataSetSphericalHarmonics >
SPtr;
52 typedef std::shared_ptr< const WDataSetSphericalHarmonics >
ConstSPtr;
61 std::shared_ptr< WGrid > newGrid );
82 virtual WDataSetSingle::SPtr clone( std::shared_ptr< WValueSetBase > newValueSet, std::shared_ptr< WGrid > newGrid )
const;
143 virtual const std::string
getName()
const;
A data set consisting of a set of values based on a grid.
std::shared_ptr< WDataSetSingle > SPtr
Convenience typedef for a std::shared_ptr.
This data set type contains spherical harmonic coefficients as values.
std::shared_ptr< WValueSetBase > m_valueSet
The valueset of the data set.
virtual const std::string getDescription() const
Gets the description for this prototype.
WSymmetricSphericalHarmonic< double > interpolate(const WPosition &pos, bool *success) const
Interpolates the field of spherical harmonics at the given position.
virtual ~WDataSetSphericalHarmonics()
Destroys this DataSet instance.
static std::shared_ptr< WPrototyped > m_prototype
The prototype as singleton.
virtual WDataSetSingle::SPtr clone() const
Creates a copy (clone) of this instance.
virtual const std::string getName() const
Gets the name of this prototype.
std::shared_ptr< WGridRegular3D > m_gridRegular3D
The regular 3d grid of the data set.
static std::shared_ptr< WPrototyped > getPrototype()
Returns a prototype instantiated with the true type of the deriving class.
virtual bool isTexture() const
Determines whether this dataset can be used as a texture.
WDataSetSphericalHarmonics()
Construct an empty and unusable instance.
std::shared_ptr< WDataSetSphericalHarmonics > SPtr
Convenience typedef for a std::shared_ptr.
WSymmetricSphericalHarmonic< double > getSphericalHarmonicAt(size_t index) const
Get the spherical harmonic on the given position in value set.
std::shared_ptr< const WDataSetSphericalHarmonics > ConstSPtr
Convenience typedef for a std::shared_ptr; const.
This only is a 3d double vector.
Class for symmetric spherical harmonics The index scheme of the coefficients/basis values is like in ...