OpenVDB  9.0.1
Public Member Functions | List of all members
GridTransformOp< Sampler > Class Template Reference

GridTransformOp is a functor class for use with GridBase::apply() that samples an input grid into an output grid of the same type through a given affine transform. More...

#include <openvdb_houdini/UT_VDBTools.h>

Public Member Functions

 GridTransformOp (GridPtr &outGrid, const openvdb::tools::GridTransformer &t)
 
template<typename GridType >
void operator() (const GridType &inGrid)
 

Detailed Description

template<typename Sampler>
class openvdb_houdini::GridTransformOp< Sampler >

GridTransformOp is a functor class for use with GridBase::apply() that samples an input grid into an output grid of the same type through a given affine transform.

The output grid's transform is unchanged by this operation.

See also
GridResampleOp, GridResampleToMatchOp
Example:
const Grid& inGrid = ...; // generic reference to a grid of any type
// Create a new, empty output grid of the same (so far, unknown) type
// as the input grid and with the same transform and metadata.
GridPtr outGrid = inGrid.copyGridWithNewTree();
// Initialize a GridTransformer with the parameters of an affine transform.
openvdb::tools::GridTransformer xform(pivot, scale, rotate, ...);
// Resolve the input grid's type and resample it into the output grid,
// using a second-order sampling kernel.
GridTransformOp<openvdb::tools::QuadraticSampler> op(outGrid, xform);

Constructor & Destructor Documentation

GridTransformOp ( GridPtr outGrid,
const openvdb::tools::GridTransformer &  t 
)
inline
Parameters
outGrida generic pointer to an output grid of the same type as the grid to be resampled
ta GridTransformer that defines an affine transform
Note
GridTransformOp makes an internal copy of the GridTransformer and supplies the copy with a default Interrupter that replaces any existing interrupter.

Member Function Documentation

void operator() ( const GridType &  inGrid)
inline