HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
openvdb::OPENVDB_VERSION_NAME::tools::FastSweeping< SdfGridT, ExtValueT >::SweepingKernel Struct Reference

Private class of FastSweeping to perform concurrent fast sweeping in two directions. More...

#include <FastSweeping.h>

Classes

struct  NN
 

Public Member Functions

 SweepingKernel (FastSweeping &parent)
 
 SweepingKernel (const SweepingKernel &)=delete
 
SweepingKerneloperator= (const SweepingKernel &)=delete
 
template<typename HashOp >
void computeVoxelSlices (HashOp hash)
 Main method that performs concurrent bi-directional sweeps. More...
 
template<typename ExtT = ExtValueT, typename SdfT = SdfValueT, typename std::enable_if< std::is_same< ExtT, int >::value, int >::type = 0>
ExtT twoNghbr (const NN &d1, const NN &d2, const SdfT &, const ExtT &v1, const ExtT &v2) const
 
template<typename ExtT = ExtValueT, typename SdfT = SdfValueT, typename std::enable_if<!std::is_same< ExtT, int >::value, int >::type = 0>
ExtT twoNghbr (const NN &d1, const NN &d2, const SdfT &w, const ExtT &v1, const ExtT &v2) const
 
template<typename ExtT = ExtValueT, typename SdfT = SdfValueT, typename std::enable_if< std::is_same< ExtT, int >::value, int >::type = 0>
ExtT threeNghbr (const NN &d1, const NN &d2, const NN &d3, const SdfT &, const ExtT &v1, const ExtT &v2, const ExtT &v3) const
 
template<typename ExtT = ExtValueT, typename SdfT = SdfValueT, typename std::enable_if<!std::is_same< ExtT, int >::value, int >::type = 0>
ExtT threeNghbr (const NN &d1, const NN &d2, const NN &d3, const SdfT &w, const ExtT &v1, const ExtT &v2, const ExtT &v3) const
 
void sweep ()
 

Detailed Description

template<typename SdfGridT, typename ExtValueT = typename SdfGridT::ValueType>
struct openvdb::OPENVDB_VERSION_NAME::tools::FastSweeping< SdfGridT, ExtValueT >::SweepingKernel

Private class of FastSweeping to perform concurrent fast sweeping in two directions.

Definition at line 1404 of file FastSweeping.h.

Constructor & Destructor Documentation

template<typename SdfGridT , typename ExtValueT = typename SdfGridT::ValueType>
openvdb::OPENVDB_VERSION_NAME::tools::FastSweeping< SdfGridT, ExtValueT >::SweepingKernel::SweepingKernel ( FastSweeping parent)
inline

Definition at line 1406 of file FastSweeping.h.

template<typename SdfGridT , typename ExtValueT = typename SdfGridT::ValueType>
openvdb::OPENVDB_VERSION_NAME::tools::FastSweeping< SdfGridT, ExtValueT >::SweepingKernel::SweepingKernel ( const SweepingKernel )
delete

Member Function Documentation

template<typename SdfGridT , typename ExtValueT = typename SdfGridT::ValueType>
template<typename HashOp >
void openvdb::OPENVDB_VERSION_NAME::tools::FastSweeping< SdfGridT, ExtValueT >::SweepingKernel::computeVoxelSlices ( HashOp  hash)
inline

Main method that performs concurrent bi-directional sweeps.

Definition at line 1412 of file FastSweeping.h.

template<typename SdfGridT , typename ExtValueT = typename SdfGridT::ValueType>
SweepingKernel& openvdb::OPENVDB_VERSION_NAME::tools::FastSweeping< SdfGridT, ExtValueT >::SweepingKernel::operator= ( const SweepingKernel )
delete
template<typename SdfGridT , typename ExtValueT = typename SdfGridT::ValueType>
void openvdb::OPENVDB_VERSION_NAME::tools::FastSweeping< SdfGridT, ExtValueT >::SweepingKernel::sweep ( )
inline

Definition at line 1555 of file FastSweeping.h.

template<typename SdfGridT , typename ExtValueT = typename SdfGridT::ValueType>
template<typename ExtT = ExtValueT, typename SdfT = SdfValueT, typename std::enable_if< std::is_same< ExtT, int >::value, int >::type = 0>
ExtT openvdb::OPENVDB_VERSION_NAME::tools::FastSweeping< SdfGridT, ExtValueT >::SweepingKernel::threeNghbr ( const NN d1,
const NN d2,
const NN d3,
const SdfT &  ,
const ExtT &  v1,
const ExtT &  v2,
const ExtT &  v3 
) const
inline
Note
Extending an integer field is based on the nearest-neighbor interpolation

Definition at line 1543 of file FastSweeping.h.

template<typename SdfGridT , typename ExtValueT = typename SdfGridT::ValueType>
template<typename ExtT = ExtValueT, typename SdfT = SdfValueT, typename std::enable_if<!std::is_same< ExtT, int >::value, int >::type = 0>
ExtT openvdb::OPENVDB_VERSION_NAME::tools::FastSweeping< SdfGridT, ExtValueT >::SweepingKernel::threeNghbr ( const NN d1,
const NN d2,
const NN d3,
const SdfT &  w,
const ExtT &  v1,
const ExtT &  v2,
const ExtT &  v3 
) const
inline
Note
Extending a non-integer field is based on a weighted interpolation

Definition at line 1551 of file FastSweeping.h.

template<typename SdfGridT , typename ExtValueT = typename SdfGridT::ValueType>
template<typename ExtT = ExtValueT, typename SdfT = SdfValueT, typename std::enable_if< std::is_same< ExtT, int >::value, int >::type = 0>
ExtT openvdb::OPENVDB_VERSION_NAME::tools::FastSweeping< SdfGridT, ExtValueT >::SweepingKernel::twoNghbr ( const NN d1,
const NN d2,
const SdfT &  ,
const ExtT &  v1,
const ExtT &  v2 
) const
inline
Note
Extending an integer field is based on the nearest-neighbor interpolation

Definition at line 1535 of file FastSweeping.h.

template<typename SdfGridT , typename ExtValueT = typename SdfGridT::ValueType>
template<typename ExtT = ExtValueT, typename SdfT = SdfValueT, typename std::enable_if<!std::is_same< ExtT, int >::value, int >::type = 0>
ExtT openvdb::OPENVDB_VERSION_NAME::tools::FastSweeping< SdfGridT, ExtValueT >::SweepingKernel::twoNghbr ( const NN d1,
const NN d2,
const SdfT &  w,
const ExtT &  v1,
const ExtT &  v2 
) const
inline
Note
Extending a non-integer field is based on a weighted interpolation

Definition at line 1539 of file FastSweeping.h.


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