|
| SweepingKernel (FastSweeping &parent) |
|
| SweepingKernel (const SweepingKernel &)=delete |
|
SweepingKernel & | operator= (const SweepingKernel &)=delete |
|
template<typename HashOp > |
void | computeVoxelSlices (HashOp hash) |
| Main method that performs concurrent bi-directional sweeps.
|
|
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 () |
|
template<typename SdfGridT, typename ExtValueT = typename SdfGridT::ValueType>
struct openvdb::v11_0::tools::FastSweeping< SdfGridT, ExtValueT >::SweepingKernel
Private class of FastSweeping to perform concurrent fast sweeping in two directions.
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 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
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 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
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 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
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 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