HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
openvdb::OPENVDB_VERSION_NAME::tools::CheckNormGrad< GridT, TreeIterT, GradScheme > Struct Template Reference

Checks the norm of the gradient against a range, i.e., |∇Φ| ∈ [min, max]. More...

#include <Diagnostics.h>

Public Types

using ValueType = typename GridT::ValueType
 
using TileIterT = TreeIterT
 
using VoxelIterT = typename tree::IterTraits< typename TreeIterT::NodeT, typename TreeIterT::ValueIterT >::template NodeConverter< typename GridT::TreeType::LeafNodeType >::Type
 
using AccT = typename GridT::ConstAccessor
 

Public Member Functions

 CheckNormGrad (const GridT &grid, const ValueType &_min, const ValueType &_max)
 Constructor taking a grid and a range to be tested against. More...
 
 CheckNormGrad (const CheckNormGrad &other)
 
bool operator() (const ValueType &v) const
 Return true if the value is smaller than min or larger than max. More...
 
bool operator() (const TreeIterT &) const
 Return true if zero is outside the range. More...
 
bool operator() (const VoxelIterT &iter) const
 Return true if the norm of the gradient at a voxel location of the iterator is out of range. More...
 
std::string str () const
 Return a string describing a failed check. More...
 

Public Attributes

AccT acc
 
const ValueType invdx2
 
const ValueType minVal2
 
const ValueType maxVal2
 

Detailed Description

template<typename GridT, typename TreeIterT = typename GridT::ValueOnCIter, math::BiasedGradientScheme GradScheme = math::FIRST_BIAS>
struct openvdb::OPENVDB_VERSION_NAME::tools::CheckNormGrad< GridT, TreeIterT, GradScheme >

Checks the norm of the gradient against a range, i.e., |∇Φ| ∈ [min, max].

Note
Internally the test is performed as |∇Φ| ∈ [min, max] for optimization reasons.

Definition at line 452 of file Diagnostics.h.

Member Typedef Documentation

template<typename GridT , typename TreeIterT = typename GridT::ValueOnCIter, math::BiasedGradientScheme GradScheme = math::FIRST_BIAS>
using openvdb::OPENVDB_VERSION_NAME::tools::CheckNormGrad< GridT, TreeIterT, GradScheme >::AccT = typename GridT::ConstAccessor

Definition at line 461 of file Diagnostics.h.

template<typename GridT , typename TreeIterT = typename GridT::ValueOnCIter, math::BiasedGradientScheme GradScheme = math::FIRST_BIAS>
using openvdb::OPENVDB_VERSION_NAME::tools::CheckNormGrad< GridT, TreeIterT, GradScheme >::TileIterT = TreeIterT

Definition at line 457 of file Diagnostics.h.

template<typename GridT , typename TreeIterT = typename GridT::ValueOnCIter, math::BiasedGradientScheme GradScheme = math::FIRST_BIAS>
using openvdb::OPENVDB_VERSION_NAME::tools::CheckNormGrad< GridT, TreeIterT, GradScheme >::ValueType = typename GridT::ValueType

Definition at line 454 of file Diagnostics.h.

template<typename GridT , typename TreeIterT = typename GridT::ValueOnCIter, math::BiasedGradientScheme GradScheme = math::FIRST_BIAS>
using openvdb::OPENVDB_VERSION_NAME::tools::CheckNormGrad< GridT, TreeIterT, GradScheme >::VoxelIterT = typename tree::IterTraits<typename TreeIterT::NodeT, typename TreeIterT::ValueIterT> ::template NodeConverter< typename GridT::TreeType::LeafNodeType>::Type

Definition at line 460 of file Diagnostics.h.

Constructor & Destructor Documentation

template<typename GridT , typename TreeIterT = typename GridT::ValueOnCIter, math::BiasedGradientScheme GradScheme = math::FIRST_BIAS>
openvdb::OPENVDB_VERSION_NAME::tools::CheckNormGrad< GridT, TreeIterT, GradScheme >::CheckNormGrad ( const GridT &  grid,
const ValueType _min,
const ValueType _max 
)
inline

Constructor taking a grid and a range to be tested against.

Definition at line 464 of file Diagnostics.h.

template<typename GridT , typename TreeIterT = typename GridT::ValueOnCIter, math::BiasedGradientScheme GradScheme = math::FIRST_BIAS>
openvdb::OPENVDB_VERSION_NAME::tools::CheckNormGrad< GridT, TreeIterT, GradScheme >::CheckNormGrad ( const CheckNormGrad< GridT, TreeIterT, GradScheme > &  other)
inline

Definition at line 478 of file Diagnostics.h.

Member Function Documentation

template<typename GridT , typename TreeIterT = typename GridT::ValueOnCIter, math::BiasedGradientScheme GradScheme = math::FIRST_BIAS>
bool openvdb::OPENVDB_VERSION_NAME::tools::CheckNormGrad< GridT, TreeIterT, GradScheme >::operator() ( const ValueType v) const
inline

Return true if the value is smaller than min or larger than max.

Definition at line 487 of file Diagnostics.h.

template<typename GridT , typename TreeIterT = typename GridT::ValueOnCIter, math::BiasedGradientScheme GradScheme = math::FIRST_BIAS>
bool openvdb::OPENVDB_VERSION_NAME::tools::CheckNormGrad< GridT, TreeIterT, GradScheme >::operator() ( const TreeIterT &  ) const
inline

Return true if zero is outside the range.

Note
We assume that the norm of the gradient of a tile is always zero.

Definition at line 491 of file Diagnostics.h.

template<typename GridT , typename TreeIterT = typename GridT::ValueOnCIter, math::BiasedGradientScheme GradScheme = math::FIRST_BIAS>
bool openvdb::OPENVDB_VERSION_NAME::tools::CheckNormGrad< GridT, TreeIterT, GradScheme >::operator() ( const VoxelIterT iter) const
inline

Return true if the norm of the gradient at a voxel location of the iterator is out of range.

Definition at line 495 of file Diagnostics.h.

template<typename GridT , typename TreeIterT = typename GridT::ValueOnCIter, math::BiasedGradientScheme GradScheme = math::FIRST_BIAS>
std::string openvdb::OPENVDB_VERSION_NAME::tools::CheckNormGrad< GridT, TreeIterT, GradScheme >::str ( ) const
inline

Return a string describing a failed check.

Definition at line 502 of file Diagnostics.h.

Member Data Documentation

template<typename GridT , typename TreeIterT = typename GridT::ValueOnCIter, math::BiasedGradientScheme GradScheme = math::FIRST_BIAS>
AccT openvdb::OPENVDB_VERSION_NAME::tools::CheckNormGrad< GridT, TreeIterT, GradScheme >::acc

Definition at line 509 of file Diagnostics.h.

template<typename GridT , typename TreeIterT = typename GridT::ValueOnCIter, math::BiasedGradientScheme GradScheme = math::FIRST_BIAS>
const ValueType openvdb::OPENVDB_VERSION_NAME::tools::CheckNormGrad< GridT, TreeIterT, GradScheme >::invdx2

Definition at line 510 of file Diagnostics.h.

template<typename GridT , typename TreeIterT = typename GridT::ValueOnCIter, math::BiasedGradientScheme GradScheme = math::FIRST_BIAS>
const ValueType openvdb::OPENVDB_VERSION_NAME::tools::CheckNormGrad< GridT, TreeIterT, GradScheme >::maxVal2

Definition at line 510 of file Diagnostics.h.

template<typename GridT , typename TreeIterT = typename GridT::ValueOnCIter, math::BiasedGradientScheme GradScheme = math::FIRST_BIAS>
const ValueType openvdb::OPENVDB_VERSION_NAME::tools::CheckNormGrad< GridT, TreeIterT, GradScheme >::minVal2

Definition at line 510 of file Diagnostics.h.


The documentation for this struct was generated from the following file: