OpenVDB 11.0.0

Loading...
Searching...
No Matches
Classes | Public Types | Public Member Functions | Protected Member Functions | List of all members
GridTransformer Class Reference

A GridTransformer applies a geometric transformation to an input grid using one of several sampling schemes, and stores the result in an output grid. More...

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

Inheritance diagram for GridTransformer:

## Classes
struct | MatrixTransform

## Public Types
using | Ptr = SharedPtr< GridTransformer >
using | InterruptFunc = std::function< bool(void)>

## Public Member Functions
| GridTransformer (const Mat4R &xform)
| GridTransformer (const Vec3R &pivot, const Vec3R &scale, const Vec3R &rotate, const Vec3R &translate, const std::string &xformOrder="tsr", const std::string &rotationOrder="zyx")
| ~GridTransformer () override=default
| GridTransformer (const GridTransformer &)=default
GridTransformer & | operator= (const GridTransformer &)=default
const Mat4R & | getTransform () const
template<class Sampler , class GridT >
void | transformGrid (const GridT &inGrid, GridT &outGrid) const
void | setThreaded (bool b)
| Enable or disable threading. (Threading is enabled by default.)
bool | threaded () const
| Return `true` if threading is enabled.
void | setTransformTiles (bool b)
| Enable or disable processing of tiles. (Enabled by default, except for level set grids.)
bool | transformTiles () const
| Return `true` if tile processing is enabled.
template<typename InterrupterType >
void | setInterrupter (InterrupterType &)
| Allow processing to be aborted by providing an interrupter object. The interrupter will be queried periodically during processing.
template<typename Sampler , typename GridT , typename Transformer >
void | transformGrid (const Transformer &, const GridT &inGrid, GridT &outGrid) const

## Protected Member Functions
template<typename Sampler , typename GridT , typename Transformer >
void | applyTransform (const Transformer &, const GridT &inGrid, GridT &outGrid) const
bool | interrupt () const

## Detailed Description

A GridTransformer applies a geometric transformation to an input grid using one of several sampling schemes, and stores the result in an output grid.

Note
  GridTransformer is optimized for affine transformations.

Usage:

Mat4R xform = ...;
GridTransformer transformer(xform);
transformer.transformGrid<BoxSampler>(inGrid, outGrid);
openvdb::v11_0::math::Mat4< Real >
openvdb::v11_0::tools::GridTransformer
A GridTransformer applies a geometric transformation to an input grid using one of several sampling s...
Definition GridTransformer.h:234
openvdb::v11_0::tools::BoxSampler
Definition Interpolation.h:120

or

Vec3R pivot = ..., scale = ..., rotate = ..., translate = ...;
GridTransformer transformer(pivot, scale, rotate, translate);
transformer.transformGrid<QuadraticSampler>(inGrid, outGrid);
openvdb::v11_0::math::Vec3< Real >
openvdb::v11_0::tools::QuadraticSampler
Definition Interpolation.h:163

## Member Typedef Documentation

## ◆ InterruptFunc

using InterruptFunc = std::function<bool (void)>
| inherited

## ◆ Ptr

using Ptr = SharedPtr<GridTransformer>

## Constructor & Destructor Documentation

## ◆ GridTransformer() [1/3]

GridTransformer | ( | const Mat4R & | xform | ) |
| inline

## ◆ GridTransformer() [2/3]

GridTransformer | ( | const Vec3R & | pivot,
|  | const Vec3R & | scale,
|  | const Vec3R & | rotate,
|  | const Vec3R & | translate,
|  | const std::string & | xformOrder = `"tsr"`,
|  | const std::string & | rotationOrder = `"zyx"`
| ) |  |
| inline

## ◆ ~GridTransformer()

~GridTransformer | ( |  | ) |
| override default

## ◆ GridTransformer() [3/3]

GridTransformer | ( | const GridTransformer & |  | ) |
| default

## Member Function Documentation

## ◆ applyTransform()

template<class Sampler , class GridT , typename Transformer >

void applyTransform | ( | const Transformer & | xform,
|  | const GridT & | inGrid,
|  | GridT & | outGrid
| ) |  | const
| protected inherited

## ◆ getTransform()

const Mat4R & getTransform | ( |  | ) | const
| inline

## ◆ interrupt()

bool interrupt | ( |  | ) | const
| inline protected inherited

## ◆ operator=()

GridTransformer & operator= | ( | const GridTransformer & |  | ) |
| default

## ◆ setInterrupter()

template<typename InterrupterType >

void setInterrupter | ( | InterrupterType & | interrupter | ) |
| inherited

Allow processing to be aborted by providing an interrupter object. The interrupter will be queried periodically during processing.

See also
  util/NullInterrupter.h for interrupter interface requirements.

## ◆ setThreaded()

void setThreaded | ( | bool | b | ) |
| inline inherited

Enable or disable threading. (Threading is enabled by default.)

## ◆ setTransformTiles()

void setTransformTiles | ( | bool | b | ) |
| inline inherited

Enable or disable processing of tiles. (Enabled by default, except for level set grids.)

## ◆ threaded()

bool threaded | ( |  | ) | const
| inline inherited

Return `true` if threading is enabled.

## ◆ transformGrid() [1/2]

template<class Sampler , class GridT >

void transformGrid | ( | const GridT & | inGrid,
|  | GridT & | outGrid
| ) |  | const

## ◆ transformGrid() [2/2]

template<typename Sampler , typename GridT , typename Transformer >

void transformGrid | ( | const Transformer & | xform,
|  | const GridT & | inGrid,
|  | GridT & | outGrid
| ) |  | const
| inherited

## ◆ transformTiles()

bool transformTiles | ( |  | ) | const
| inline inherited

Return `true` if tile processing is enabled.