HDK
|
Framework methods for rasterizing PointDataGrid data to Trees. More...
#include <openvdb/openvdb.h>
#include <openvdb/Types.h>
#include <openvdb/Grid.h>
#include <openvdb/math/Transform.h>
#include <openvdb/util/NullInterrupter.h>
#include <openvdb/thread/Threading.h>
#include <type_traits>
#include <tuple>
Go to the source code of this file.
Classes | |
struct | openvdb::OPENVDB_VERSION_NAME::points::TransformTransfer |
The TransformTransfer module should be used if the source transform of the input points and the target transforms of the destination volumes differ. The default rasterizer will skip index to world (and vice versa) transformations unless a transfer scheme derives from a TransformTransfer. More... | |
struct | openvdb::OPENVDB_VERSION_NAME::points::VolumeTransfer< TreeTypes > |
The VolumeTransfer module provides methods to automatically setup and access destination buffers for multiple target volumes of arbitrary types. Deriving from a VolumeTransfer ensures that the available buffers correlate to the order of the provided tree arguments. More... | |
struct | openvdb::OPENVDB_VERSION_NAME::points::VolumeTransfer< TreeTypes >::TypeResolver< T > |
struct | openvdb::OPENVDB_VERSION_NAME::points::VolumeTransfer< TreeT > |
VolumeTransfer specialization for a single target volume. More... | |
struct | openvdb::OPENVDB_VERSION_NAME::points::transfer_internal::RasterizePoints< TransferT, TopologyT, PointFilterT, InterrupterT > |
Namespaces | |
openvdb | |
openvdb::OPENVDB_VERSION_NAME | |
openvdb::OPENVDB_VERSION_NAME::points | |
openvdb::OPENVDB_VERSION_NAME::points::transfer_internal | |
Functions | |
template<typename PointDataTreeOrGridT , typename TransferT , typename FilterT = NullFilter, typename InterrupterT = util::NullInterrupter> | |
void | openvdb::OPENVDB_VERSION_NAME::points::rasterize (const PointDataTreeOrGridT &points, TransferT &transfer, const FilterT &filter=NullFilter(), InterrupterT *interrupter=nullptr) |
Perform potentially complex rasterization from a user defined transfer scheme. More... | |
template<typename T , typename F , size_t... Is> | |
void | openvdb::OPENVDB_VERSION_NAME::points::transfer_internal::foreach (T &&t, const F &func, std::integer_sequence< size_t, Is...>) |
template<typename T , typename F , size_t... Is> | |
void | openvdb::OPENVDB_VERSION_NAME::points::transfer_internal::foreach (void **buffers, const F &func, std::integer_sequence< size_t, Is...>) |
template<typename T , template< typename > class R, typename F , size_t... Is> | |
void | openvdb::OPENVDB_VERSION_NAME::points::transfer_internal::foreach (void **buffers, const F &func, std::integer_sequence< size_t, Is...>) |
openvdb::OPENVDB_VERSION_NAME::points::mBuffers () | |
openvdb::OPENVDB_VERSION_NAME::points::mMasks () | |
Framework methods for rasterizing PointDataGrid data to Trees.
Provides a generic inherited interface for deriving transfer schemes that represent how point data should be rasterized. The provided components together support the transfer of multiple attributes to arbitrary and multiple grid types. Target grids must have the same transform, but this transform can differ from the source PointDataGrid (multiple instantiations of rasterize() should instead be invoked to transfer to grids of different transforms). Arbitrary attributes can be accessed and transfered to arbitrary trees.
Definition in file PointTransfer.h.