OpenVDB
12.0.0
|
Miscellaneous utility methods that operate primarily or exclusively on level set grids. More...
#include "MeshToVolume.h"
#include "SignedFloodFill.h"
#include <openvdb/Types.h>
#include <openvdb/Grid.h>
#include <openvdb/openvdb.h>
#include <openvdb/points/PointDataGrid.h>
#include <tbb/blocked_range.h>
#include <tbb/parallel_for.h>
#include <tbb/parallel_reduce.h>
#include <tbb/parallel_sort.h>
#include <algorithm>
#include <cmath>
#include <cstdlib>
#include <deque>
#include <limits>
#include <memory>
#include <set>
#include <vector>
Go to the source code of this file.
Namespaces | |
openvdb | |
openvdb::v12_0 | |
openvdb::v12_0::tools | |
Functions | |
template<class GridType > | |
void | sdfToFogVolume (GridType &grid, typename GridType::ValueType cutoffDistance=lsutilGridMax< GridType >()) |
Threaded method to convert a sparse level set/SDF into a sparse fog volume. More... | |
template<class GridOrTreeType > | |
GridOrTreeType::template ValueConverter< bool >::Type::Ptr | sdfInteriorMask (const GridOrTreeType &volume, typename GridOrTreeType::ValueType isovalue=lsutilGridZero< GridOrTreeType >()) |
Threaded method to construct a boolean mask that represents interior regions in a signed distance field. More... | |
template<typename GridOrTreeType > | |
GridOrTreeType::template ValueConverter< bool >::Type::Ptr | extractEnclosedRegion (const GridOrTreeType &volume, typename GridOrTreeType::ValueType isovalue=lsutilGridZero< GridOrTreeType >(), const typename TreeAdapter< GridOrTreeType >::TreeType::template ValueConverter< bool >::Type *fillMask=nullptr) |
Extracts the interior regions of a signed distance field and topologically enclosed (watertight) regions of value greater than the isovalue (cavities) that can arise as the result of CSG union operations between different shapes where at least one of the shapes has a concavity that is capped. More... | |
template<typename GridOrTreeType > | |
GridOrTreeType::template ValueConverter< bool >::Type::Ptr | extractIsosurfaceMask (const GridOrTreeType &volume, typename GridOrTreeType::ValueType isovalue) |
Return a mask of the voxels that intersect the implicit surface with the given isovalue. More... | |
template<typename GridOrTreeType > | |
void | extractActiveVoxelSegmentMasks (const GridOrTreeType &volume, std::vector< typename GridOrTreeType::template ValueConverter< bool >::Type::Ptr > &masks) |
Return a mask for each connected component of the given grid's active voxels. More... | |
template<typename GridOrTreeType > | |
void | segmentActiveVoxels (const GridOrTreeType &volume, std::vector< typename GridOrTreeType::Ptr > &segments) |
Separates disjoint active topology components into distinct grids or trees. More... | |
template<typename GridOrTreeType > | |
void | segmentSDF (const GridOrTreeType &volume, std::vector< typename GridOrTreeType::Ptr > &segments) |
Separates disjoint SDF surfaces into distinct grids or trees. More... | |
template<class GridType > | |
OPENVDB_DOCS_INTERNAL void | sdfToFogVolume (GridType &grid, typename GridType::ValueType cutoffDistance) |
Threaded method to convert a sparse level set/SDF into a sparse fog volume. More... | |
Miscellaneous utility methods that operate primarily or exclusively on level set grids.