Field3D
|
Classes | |
struct | ComputationType |
Used to delegate the choice of bit depth to process at. More... | |
struct | ComputationType< Field3D::half > |
Specialization for half float. More... | |
struct | LoadFields |
struct | LoadFields< 1 > |
struct | LoadFields< 3 > |
struct | LoadFieldsParams |
struct | MakeDense |
MPL utility. More... | |
struct | MakeMIPDense |
MPL utility. More... | |
struct | MakeMIPSparse |
MPL utility. More... | |
struct | MakeSparse |
MPL utility. More... | |
struct | MIPSeparableThreadOp |
struct | ScalarOrVector |
Typedefs float or V3f, depending on Dims_T. More... | |
struct | ScalarOrVector< 1 > |
struct | ScalarOrVector< 3 > |
Functions | |
FIELD3D_API FieldMapping::Ptr | adjustedMIPFieldMapping (const FieldRes *base, const V3i &baseRes, const Box3i &extents, const size_t level) |
template<typename T > | |
FIELD3D_VEC3_T< T > | ceil (const FIELD3D_VEC3_T< T > &v) |
Ceil function for Vec3. | |
template<typename Field_T > | |
bool | checkInputEmpty (const Field_T &, const Field_T &, const Box3i &, const float, const size_t) |
Fallback version always returns false. | |
template<typename Data_T > | |
bool | checkInputEmpty (const SparseField< Data_T > &src, const SparseField< Data_T > &, const Box3i &tgtBox, const float support, const size_t dim) |
std::vector< V3d > | cornerPoints (const Box3d &box) |
template<typename T > | |
FIELD3D_VEC3_T< T > | floor (const FIELD3D_VEC3_T< T > &v) |
Floor function for Vec3. | |
float | getDist (const bool doUpres, const float &srcP, const float &tgtP, const float &srcSize, const float &tgtSize) |
V3f | getDist (const V3i &doUpres, const V3f &srcP, const V3f &tgtP, const V3f &srcSize, const V3f &tgtSize) |
bool | intersect (const Ray3d &ray, const Box3d &box, double &outT0, double &outT1) |
template<typename T , typename T2 > | |
FIELD3D_VEC3_T< T > | max (const FIELD3D_VEC3_T< T > &a, const FIELD3D_VEC3_T< T2 > &b) |
Max operation on mixed vector types. | |
template<typename T , typename T2 > | |
T | max (const T a, const T2 b) |
Max operation on mixed types. | |
template<typename T , typename T2 > | |
FIELD3D_VEC3_T< T > | min (const FIELD3D_VEC3_T< T > &a, const FIELD3D_VEC3_T< T2 > &b) |
Min operation on mixed vector types. | |
template<typename T , typename T2 > | |
T | min (const T a, const T2 b) |
Min operation on mixed types. | |
template<typename Field_T , typename FilterOp_T > | |
void | mipResample (const Field_T &base, const Field_T &src, Field_T &tgt, const size_t level, const V3i &offset, const FilterOp_T &filterOp, const size_t numThreads) |
FIELD3D_API V3i | mipResolution (const V3i &baseRes, const size_t level, const V3i &add) |
template<typename Field_T , typename FilterOp_T > | |
void | mipSeparable (const Field_T &src, Field_T &tgt, const V3i &oldRes, const V3i &newRes, const size_t level, const V3i &add, const FilterOp_T &filterOp, const size_t dim, const size_t numThreads) |
Threaded implementation of separable MIP filtering. | |
template<typename Field_T , typename FilterOp_T , bool IsAnalytic_T> | |
void | separable (const Field_T &src, Field_T &tgt, const V3i &newRes, const FilterOp_T &filterOp, const size_t dim) |
template<typename Field_T , typename FilterOp_T > | |
bool | separableResample (const Field_T &src, Field_T &tgt, const V3i &newRes, const FilterOp_T &filterOp) |
Resamples the source field into the target field, using separable execution, which is faster than resample(). | |
std::pair< int, int > | srcSupportBBox (const float &tgtP, const float support, const bool doUpres, const float &srcSize, const float &tgtSize) |
Box3i | srcSupportBBox (const V3f &tgtP, const float support, const V3i &doUpres, const V3f &srcSize, const V3f &tgtSize) |
template<typename Data_T > | |
size_t | threadingBlockSize (const DenseField< Data_T > &) |
Constant size for all dense fields. | |
template<typename Data_T > | |
size_t | threadingBlockSize (const SparseField< Data_T > &f) |
Use block size for sparse fields. | |
std::vector< V3d > | unitCornerPoints () |
Variables | |
static const char * | k_maxSuffix = "_max" |
static const char * | k_minSuffix = "_min" |
const std::string | k_mipOffsetStr = "mipoffset" |
FIELD3D_VEC3_T< T > detail::floor | ( | const FIELD3D_VEC3_T< T > & | v | ) |
Floor function for Vec3.
Definition at line 104 of file CoordSys.h.
References FIELD3D_VEC3_T.
Referenced by coordinateSystem().
FIELD3D_VEC3_T< T > detail::ceil | ( | const FIELD3D_VEC3_T< T > & | v | ) |
Ceil function for Vec3.
Definition at line 114 of file CoordSys.h.
References FIELD3D_VEC3_T.
Referenced by coordinateSystem().
Definition at line 211 of file FieldGroup.h.
Referenced by FieldGroup< BaseTypeList_T, Dims_T >::GetIntersections::intersectFrustumMapping().
|
inline |
Definition at line 228 of file FieldGroup.h.
Referenced by FieldGroup< BaseTypeList_T, Dims_T >::GetWsBounds::operator()().
|
inline |
Definition at line 245 of file FieldGroup.h.
Referenced by FieldGroup< BaseTypeList_T, Dims_T >::GetIntersections::intersectMatrixMapping().
T detail::min | ( | const T | a, |
const T2 | b ) |
Min operation on mixed types.
Definition at line 25 of file FieldSampler.h.
Referenced by FieldSampler< WrapperVec_T, Dims_T >::getMinMax(), FieldSampler< WrapperVec_T, Dims_T >::getMinMaxMIP(), and FieldSampler< WrapperVec_T, Dims_T >::getMinMaxPrefilt().
T detail::max | ( | const T | a, |
const T2 | b ) |
Max operation on mixed types.
Definition at line 32 of file FieldSampler.h.
Referenced by FieldSampler< WrapperVec_T, Dims_T >::getMinMax(), FieldSampler< WrapperVec_T, Dims_T >::getMinMaxMIP(), and FieldSampler< WrapperVec_T, Dims_T >::getMinMaxPrefilt().
FIELD3D_VEC3_T< T > detail::min | ( | const FIELD3D_VEC3_T< T > & | a, |
const FIELD3D_VEC3_T< T2 > & | b ) |
Min operation on mixed vector types.
Definition at line 39 of file FieldSampler.h.
References FIELD3D_VEC3_T.
FIELD3D_VEC3_T< T > detail::max | ( | const FIELD3D_VEC3_T< T > & | a, |
const FIELD3D_VEC3_T< T2 > & | b ) |
Max operation on mixed vector types.
Definition at line 49 of file FieldSampler.h.
References FIELD3D_VEC3_T.
Definition at line 70 of file MIPUtil.cpp.
Referenced by mipResample().
size_t detail::threadingBlockSize | ( | const DenseField< Data_T > & | ) |
Constant size for all dense fields.
Definition at line 121 of file MIPUtil.h.
Referenced by mipSeparable().
size_t detail::threadingBlockSize | ( | const SparseField< Data_T > & | f | ) |
Use block size for sparse fields.
Definition at line 128 of file MIPUtil.h.
References SparseField< Data_T >::blockSize().
bool detail::checkInputEmpty | ( | const SparseField< Data_T > & | src, |
const SparseField< Data_T > & | , | ||
const Box3i & | tgtBox, | ||
const float | support, | ||
const size_t | dim ) |
Definition at line 136 of file MIPUtil.h.
References blockCoords(), SparseField< Data_T >::blockIsAllocated(), clipBounds(), FieldRes::dataWindow(), and SparseField< Data_T >::getBlockEmptyValue().
Referenced by detail::MIPSeparableThreadOp< Field_T, FilterOp_T, IsAnalytic_T >::operator()().
bool detail::checkInputEmpty | ( | const Field_T & | , |
const Field_T & | , | ||
const Box3i & | , | ||
const float | , | ||
const size_t | ) |
void detail::mipSeparable | ( | const Field_T & | src, |
Field_T & | tgt, | ||
const V3i & | oldRes, | ||
const V3i & | newRes, | ||
const size_t | level, | ||
const V3i & | add, | ||
const FilterOp_T & | filterOp, | ||
const size_t | dim, | ||
const size_t | numThreads ) |
Threaded implementation of separable MIP filtering.
Definition at line 354 of file MIPUtil.h.
References threadingBlockSize().
Referenced by mipResample().
void detail::mipResample | ( | const Field_T & | base, |
const Field_T & | src, | ||
Field_T & | tgt, | ||
const size_t | level, | ||
const V3i & | offset, | ||
const FilterOp_T & | filterOp, | ||
const size_t | numThreads ) |
Definition at line 421 of file MIPUtil.h.
References mipResolution(), and mipSeparable().
FieldMapping::Ptr detail::adjustedMIPFieldMapping | ( | const FieldRes * | base, |
const V3i & | , | ||
const Box3i & | extents, | ||
const size_t | level ) |
Definition at line 82 of file MIPUtil.cpp.
References coordinateSystem(), field_dynamic_cast(), k_mipOffsetStr, FieldRes::mapping(), FieldBase::metadata(), and FieldMetadata::vecIntMetadata().
Referenced by MIPField< Field_T >::loadLevelFromDisk(), and MIPField< Field_T >::mappingChanged().
Box3i detail::srcSupportBBox | ( | const V3f & | tgtP, |
const float | support, | ||
const V3i & | doUpres, | ||
const V3f & | srcSize, | ||
const V3f & | tgtSize ) |
Definition at line 56 of file Resample.cpp.
Referenced by separable().
std::pair< int, int > detail::srcSupportBBox | ( | const float & | tgtP, |
const float | support, | ||
const bool | doUpres, | ||
const float & | srcSize, | ||
const float & | tgtSize ) |
Definition at line 83 of file Resample.cpp.
V3f detail::getDist | ( | const V3i & | doUpres, |
const V3f & | srcP, | ||
const V3f & | tgtP, | ||
const V3f & | srcSize, | ||
const V3f & | tgtSize ) |
Definition at line 103 of file Resample.cpp.
Referenced by separable().
float detail::getDist | ( | const bool | doUpres, |
const float & | srcP, | ||
const float & | tgtP, | ||
const float & | srcSize, | ||
const float & | tgtSize ) |
Definition at line 121 of file Resample.cpp.
void detail::separable | ( | const Field_T & | src, |
Field_T & | tgt, | ||
const V3i & | newRes, | ||
const FilterOp_T & | filterOp, | ||
const size_t | dim ) |
Definition at line 410 of file Resample.h.
References discToCont(), getDist(), and srcSupportBBox().
Referenced by separableResample().
bool detail::separableResample | ( | const Field_T & | src, |
Field_T & | tgt, | ||
const V3i & | newRes, | ||
const FilterOp_T & | filterOp ) |
Resamples the source field into the target field, using separable execution, which is faster than resample().
Definition at line 511 of file Resample.h.
References separable().
Referenced by resample().
|
static |
Definition at line 61 of file FieldGroup.h.
Referenced by detail::LoadFields< 1 >::operator()(), and detail::LoadFields< 3 >::operator()().
|
static |
Definition at line 62 of file FieldGroup.h.
Referenced by detail::LoadFields< 1 >::operator()(), and detail::LoadFields< 3 >::operator()().
const std::string detail::k_mipOffsetStr = "mipoffset" |
Definition at line 66 of file MIPUtil.cpp.
Referenced by adjustedMIPFieldMapping(), MIPField< Field_T >::mappingChanged(), and MIPBase< Data_T >::setMIPOffset().