OpenVDB  1.1.0
Classes | Namespaces | Functions
Composite.h File Reference

Functions to efficiently perform various compositing operations on grids. More...

#include <openvdb/Platform.h>
#include <openvdb/Exceptions.h>
#include <openvdb/Types.h>
#include <openvdb/Grid.h>
#include <openvdb/math/Math.h>
#include "ValueTransformer.h"
#include <boost/utility/enable_if.hpp>

Go to the source code of this file.

Classes

struct  CompReplaceOp< TreeT >
class  CsgVisitorBase< TreeType >
struct  CsgUnionVisitor< TreeType >
struct  CsgIntersectVisitor< TreeType >
struct  CsgDiffVisitor< TreeType >

Namespaces

namespace  openvdb
namespace  openvdb::v1_1_0
namespace  openvdb::v1_1_0::tools
namespace  openvdb::v1_1_0::tools::composite

Functions

template<typename GridOrTreeT >
OPENVDB_STATIC_SPECIALIZATION void csgUnion (GridOrTreeT &a, GridOrTreeT &b, bool prune=true)
 Given two level set grids, replace the A grid with the union of A and B.
template<typename GridOrTreeT >
OPENVDB_STATIC_SPECIALIZATION void csgIntersection (GridOrTreeT &a, GridOrTreeT &b, bool prune=true)
 Given two level set grids, replace the A grid with the intersection of A and B.
template<typename GridOrTreeT >
OPENVDB_STATIC_SPECIALIZATION void csgDifference (GridOrTreeT &a, GridOrTreeT &b, bool prune=true)
 Given two level set grids, replace the A grid with the difference A / B.
template<typename GridOrTreeT >
OPENVDB_STATIC_SPECIALIZATION void compMax (GridOrTreeT &a, GridOrTreeT &b)
 Given grids A and B, compute max(a, b) per voxel (using sparse traversal). Store the result in the A grid and leave the B grid empty.
template<typename GridOrTreeT >
OPENVDB_STATIC_SPECIALIZATION void compMin (GridOrTreeT &a, GridOrTreeT &b)
 Given grids A and B, compute min(a, b) per voxel (using sparse traversal). Store the result in the A grid and leave the B grid empty.
template<typename GridOrTreeT >
OPENVDB_STATIC_SPECIALIZATION void compSum (GridOrTreeT &a, GridOrTreeT &b)
 Given grids A and B, compute a + b per voxel (using sparse traversal). Store the result in the A grid and leave the B grid empty.
template<typename GridOrTreeT >
OPENVDB_STATIC_SPECIALIZATION void compMul (GridOrTreeT &a, GridOrTreeT &b)
 Given grids A and B, compute a * b per voxel (using sparse traversal). Store the result in the A grid and leave the B grid empty.
template<typename GridOrTreeT >
OPENVDB_STATIC_SPECIALIZATION void compReplace (GridOrTreeT &a, const GridOrTreeT &b)
 Copy the active voxels of B into A.
template<typename T >
const boost::disable_if_c
< VecTraits< T >::IsVec, T >
::type & 
min (const T &a, const T &b)
template<typename T >
const boost::disable_if_c
< VecTraits< T >::IsVec, T >
::type & 
max (const T &a, const T &b)

Detailed Description

Functions to efficiently perform various compositing operations on grids.

Author
Peter Cucka