Field3D
|
Contains the FieldInterp base class and some standard interpolation classes. More...
#include "Field.h"
#include "DenseField.h"
#include "MACField.h"
#include "ProceduralField.h"
#include "RefCount.h"
#include "ns.h"
Go to the source code of this file.
Classes | |
class | CubicFieldInterp< Data_T > |
class | CubicGenericFieldInterp< Field_T > |
class | CubicMACFieldInterp< Data_T > |
class | FieldInterp< Data_T > |
Base class for interpolators. More... | |
class | LinearFieldInterp< Data_T > |
class | LinearGenericFieldInterp< Field_T > |
class | LinearMACFieldInterp< Data_T > |
class | ProceduralFieldLookup< Data_T > |
Functions | |
FIELD3D_CLASSTYPE_TEMPL_INSTANTIATION (CubicFieldInterp) | |
FIELD3D_CLASSTYPE_TEMPL_INSTANTIATION (CubicGenericFieldInterp) | |
FIELD3D_CLASSTYPE_TEMPL_INSTANTIATION (CubicMACFieldInterp) | |
FIELD3D_CLASSTYPE_TEMPL_INSTANTIATION (FieldInterp) | |
FIELD3D_CLASSTYPE_TEMPL_INSTANTIATION (LinearFieldInterp) | |
FIELD3D_CLASSTYPE_TEMPL_INSTANTIATION (LinearGenericFieldInterp) | |
FIELD3D_CLASSTYPE_TEMPL_INSTANTIATION (LinearMACFieldInterp) | |
FIELD3D_CLASSTYPE_TEMPL_INSTANTIATION (ProceduralFieldLookup) | |
bool | isLegalVoxelCoord (const V3d &vsP, const Box3d &vsDataWindow) |
Checks whether the floating - point voxel coordinate is within the given (floating point) data window. More... | |
bool | isPointInField (const FieldRes::Ptr f, const V3d &wsP) |
Checks whether the point is within the given field. More... | |
template<class Data_T > | |
Data_T | monotonicCubicInterpolant (const Data_T &f1, const Data_T &f2, const Data_T &f3, const Data_T &f4, double t) |
Monotonic cubic interpolation References: http://en.wikipedia.org/wiki/Monotone_cubic_interpolation http://en.wikipedia.org/wiki/Cubic_Hermite_spline. More... | |
template<class T > | |
T | monotonicCubicInterpolant (const T &f1, const T &f2, const T &f3, const T &f4, double t) |
template<> | |
V3d | monotonicCubicInterpolant< V3d > (const V3d &f1, const V3d &f2, const V3d &f3, const V3d &f4, double t) |
template<> | |
V3f | monotonicCubicInterpolant< V3f > (const V3f &f1, const V3f &f2, const V3f &f3, const V3f &f4, double t) |
template<> | |
V3h | monotonicCubicInterpolant< V3h > (const V3h &f1, const V3h &f2, const V3h &f3, const V3h &f4, double t) |
template<class Data_T > | |
Data_T | monotonicCubicInterpolantVec (const Data_T &f1, const Data_T &f2, const Data_T &f3, const Data_T &f4, double t) |
Monotonic cubic interpolation on 3 - vectors References: http://en.wikipedia.org/wiki/Monotone_cubic_interpolation http://en.wikipedia.org/wiki/Cubic_Hermite_spline. More... | |
template<class S , class T > | |
FIELD3D_VEC3_T< T > | operator* (S s, const FIELD3D_VEC3_T< T > vec) |
Scalar times Vec3 multiplication. Makes the interpolation calls cleaner. More... | |
template<class Data_T > | |
Data_T | wsSample (const typename Field< Data_T >::Ptr f, const FieldInterp< Data_T > &interp, const V3d &wsP) |
Helper function for interpolating in world space. More... | |
Contains the FieldInterp base class and some standard interpolation classes.
Definition in file FieldInterp.h.
FIELD3D_CLASSTYPE_TEMPL_INSTANTIATION | ( | FieldInterp | ) |
FIELD3D_CLASSTYPE_TEMPL_INSTANTIATION | ( | LinearFieldInterp | ) |
FIELD3D_CLASSTYPE_TEMPL_INSTANTIATION | ( | CubicFieldInterp | ) |
FIELD3D_CLASSTYPE_TEMPL_INSTANTIATION | ( | LinearGenericFieldInterp | ) |
FIELD3D_CLASSTYPE_TEMPL_INSTANTIATION | ( | LinearMACFieldInterp | ) |
FIELD3D_CLASSTYPE_TEMPL_INSTANTIATION | ( | CubicGenericFieldInterp | ) |
FIELD3D_CLASSTYPE_TEMPL_INSTANTIATION | ( | CubicMACFieldInterp | ) |
FIELD3D_CLASSTYPE_TEMPL_INSTANTIATION | ( | ProceduralFieldLookup | ) |
Data_T wsSample | ( | const typename Field< Data_T >::Ptr | f, |
const FieldInterp< Data_T > & | interp, | ||
const V3d & | wsP | ||
) |
Helper function for interpolating in world space.
Definition at line 546 of file FieldInterp.h.
References FieldRes::mapping(), and FieldInterp< Data_T >::sample().
bool isPointInField | ( | const FieldRes::Ptr | f, |
const V3d & | wsP | ||
) |
Checks whether the floating - point voxel coordinate is within the given (floating point) data window.
Definition at line 63 of file FieldInterp.cpp.
FIELD3D_VEC3_T< T > operator* | ( | S | s, |
const FIELD3D_VEC3_T< T > | vec | ||
) |
Scalar times Vec3 multiplication. Makes the interpolation calls cleaner.
Definition at line 1558 of file FieldInterp.h.
Data_T monotonicCubicInterpolant | ( | const Data_T & | f1, |
const Data_T & | f2, | ||
const Data_T & | f3, | ||
const Data_T & | f4, | ||
double | t | ||
) |
Monotonic cubic interpolation References: http://en.wikipedia.org/wiki/Monotone_cubic_interpolation http://en.wikipedia.org/wiki/Cubic_Hermite_spline.
Referenced by CubicFieldInterp< Data_T >::sample(), CubicGenericFieldInterp< Field_T >::sample(), and CubicMACFieldInterp< Data_T >::sample().
Data_T monotonicCubicInterpolantVec | ( | const Data_T & | f1, |
const Data_T & | f2, | ||
const Data_T & | f3, | ||
const Data_T & | f4, | ||
double | t | ||
) |
Monotonic cubic interpolation on 3 - vectors References: http://en.wikipedia.org/wiki/Monotone_cubic_interpolation http://en.wikipedia.org/wiki/Cubic_Hermite_spline.
Monotonic cubic interpolation on 3-vectors.
Definition at line 1597 of file FieldInterp.h.
Referenced by monotonicCubicInterpolant< V3d >(), monotonicCubicInterpolant< V3f >(), and monotonicCubicInterpolant< V3h >().
T monotonicCubicInterpolant | ( | const T & | f1, |
const T & | f2, | ||
const T & | f3, | ||
const T & | f4, | ||
double | t | ||
) |
Definition at line 1566 of file FieldInterp.h.
|
inline |
Definition at line 1632 of file FieldInterp.h.
References monotonicCubicInterpolantVec().
|
inline |
Definition at line 1642 of file FieldInterp.h.
References monotonicCubicInterpolantVec().
|
inline |
Definition at line 1652 of file FieldInterp.h.
References monotonicCubicInterpolantVec().