Loading...
Searching...
No Matches
ParticlesToLevelSet< SdfGridT, AttributeT, InterrupterT >::Raster< ParticleListT, GridT > Struct Template Reference

Class with multi-threaded implementation of particle rasterization. More...

`#include <openvdb/tools/ParticlesToLevelSet.h>`

## Public Types

using | DisableT = typename std::is_void<AttributeT>::type
using | ParticlesToLevelSetT = ParticlesToLevelSet<SdfGridT, AttributeT, InterrupterT>
using | SdfT = typename ParticlesToLevelSetT::SdfType
using | AttT = typename ParticlesToLevelSetT::AttType
using | ValueT = typename GridT::ValueType
using | AccessorT = typename GridT::Accessor
using | TreeT = typename GridT::TreeType
using | LeafNodeT = typename TreeT::LeafNodeType
using | PointPartitionerT = PointPartitioner<Index32, LeafNodeT::LOG2DIM>

## Public Member Functions

| Raster (ParticlesToLevelSetT &parent, GridT *grid, const ParticleListT &particles)
| Main constructor.
| Raster (Raster &other, tbb::split)
| Copy constructor called by tbb threads.
virtual | ~Raster ()
void | rasterizeSpheres ()
void | rasterizeSpheres (Real radius)
void | rasterizeTrails (Real delta=1.0)
void | operator() (const tbb::blocked_range< size_t > &r)
| Kick off the optionally multithreaded computation.
void | join (Raster &other)
| Required by tbb::parallel_reduce.

## Static Public Attributes

static const bool | OutputIsMask = std::is_same<SdfT, bool>::value
static const bool | DoAttrXfer = !DisableT::value

## Detailed Description

template<typename SdfGridT, typename AttributeT = void, typename InterrupterT = util::NullInterrupter>
template<typename ParticleListT, typename GridT>
struct openvdb::v11_0::tools::ParticlesToLevelSet< SdfGridT, AttributeT, InterrupterT >::Raster< ParticleListT, GridT >

Class with multi-threaded implementation of particle rasterization.

## Member Typedef Documentation

## AccessorT

template<typename SdfGridT , typename AttributeT = void, typename InterrupterT = util::NullInterrupter>
template<typename ParticleListT , typename GridT >

using AccessorT = typename GridT::Accessor

## AttT

template<typename SdfGridT , typename AttributeT = void, typename InterrupterT = util::NullInterrupter>
template<typename ParticleListT , typename GridT >

using AttT = typename ParticlesToLevelSetT::AttType

## DisableT

template<typename SdfGridT , typename AttributeT = void, typename InterrupterT = util::NullInterrupter>
template<typename ParticleListT , typename GridT >

using DisableT = typename std::is_void<AttributeT>::type

## LeafNodeT

template<typename SdfGridT , typename AttributeT = void, typename InterrupterT = util::NullInterrupter>
template<typename ParticleListT , typename GridT >

using LeafNodeT = typename TreeT::LeafNodeType

## ParticlesToLevelSetT

template<typename SdfGridT , typename AttributeT = void, typename InterrupterT = util::NullInterrupter>
template<typename ParticleListT , typename GridT >

using ParticlesToLevelSetT = ParticlesToLevelSet<SdfGridT, AttributeT, InterrupterT>

## PointPartitionerT

template<typename SdfGridT , typename AttributeT = void, typename InterrupterT = util::NullInterrupter>
template<typename ParticleListT , typename GridT >

using PointPartitionerT = PointPartitioner<Index32, LeafNodeT::LOG2DIM>

## SdfT

template<typename SdfGridT , typename AttributeT = void, typename InterrupterT = util::NullInterrupter>
template<typename ParticleListT , typename GridT >

using SdfT = typename ParticlesToLevelSetT::SdfType

## TreeT

template<typename SdfGridT , typename AttributeT = void, typename InterrupterT = util::NullInterrupter>
template<typename ParticleListT , typename GridT >

using TreeT = typename GridT::TreeType

## ValueT

template<typename SdfGridT , typename AttributeT = void, typename InterrupterT = util::NullInterrupter>
template<typename ParticleListT , typename GridT >

using ValueT = typename GridT::ValueType

## Constructor & Destructor Documentation

## Raster() [1/2]

template<typename SdfGridT , typename AttributeT = void, typename InterrupterT = util::NullInterrupter>
template<typename ParticleListT , typename GridT >

Raster | ( | ParticlesToLevelSetT & | parent,
|  | GridT * | grid,
|  | const ParticleListT & | particles )

inline

Main constructor.

## Raster() [2/2]

template<typename SdfGridT , typename AttributeT = void, typename InterrupterT = util::NullInterrupter>
template<typename ParticleListT , typename GridT >

Raster | ( | Raster< ParticleListT, GridT > & | other,
|  | tbb::split | )

inline

Copy constructor called by tbb threads.

## ~Raster()

template<typename SdfGridT , typename AttributeT = void, typename InterrupterT = util::NullInterrupter>
template<typename ParticleListT , typename GridT >

virtual ~Raster | ( |  | ) |

inlinevirtual

## Member Function Documentation

## join()

template<typename SdfGridT , typename AttributeT = void, typename InterrupterT = util::NullInterrupter>
template<typename ParticleListT , typename GridT >

void join | ( | Raster< ParticleListT, GridT > & | other | ) |

inline

Required by tbb::parallel_reduce.

## operator()()

template<typename SdfGridT , typename AttributeT = void, typename InterrupterT = util::NullInterrupter>
template<typename ParticleListT , typename GridT >

void operator() | ( | const tbb::blocked_range< size_t > & | r | ) |

inline

Kick off the optionally multithreaded computation.

## rasterizeSpheres() [1/2]

template<typename SdfGridT , typename AttributeT = void, typename InterrupterT = util::NullInterrupter>
template<typename ParticleListT , typename GridT >

void rasterizeSpheres | ( |  | ) |

inline

## rasterizeSpheres() [2/2]

template<typename SdfGridT , typename AttributeT = void, typename InterrupterT = util::NullInterrupter>
template<typename ParticleListT , typename GridT >

void rasterizeSpheres | ( | Real | radius | ) |

inline

## rasterizeTrails()

template<typename SdfGridT , typename AttributeT = void, typename InterrupterT = util::NullInterrupter>
template<typename ParticleListT , typename GridT >

void rasterizeTrails | ( | Real | delta = 1.0 | ) |

inline

## Member Data Documentation

## DoAttrXfer

template<typename SdfGridT , typename AttributeT = void, typename InterrupterT = util::NullInterrupter>
template<typename ParticleListT , typename GridT >

const bool DoAttrXfer = !DisableT::value

static

## OutputIsMask

template<typename SdfGridT , typename AttributeT = void, typename InterrupterT = util::NullInterrupter>
template<typename ParticleListT , typename GridT >

const bool OutputIsMask = std::is_same<SdfT, bool>::value

static