#include <openvdb/Grid.h>
#include <openvdb/Exceptions.h>
#include <openvdb/math/Math.h>
#include <openvdb/math/Transform.h>
#include <openvdb/util/NullInterrupter.h>
#include <openvdb/util/Util.h>
#include <openvdb/openvdb.h>
#include "VolumeToMesh.h"
#include "MeshToVolume.h"
#include <tbb/blocked_range.h>
#include <tbb/parallel_for.h>
#include <type_traits>
Go to the source code of this file.
|
template<class GridType > |
GridType::Ptr | openvdb::OPENVDB_VERSION_NAME::tools::levelSetRebuild (const GridType &grid, float isovalue=0, float halfWidth=float(LEVEL_SET_HALF_WIDTH), const math::Transform *xform=nullptr) |
| Return a new grid of type GridType that contains a narrow-band level set representation of an isosurface of a given grid. More...
|
|
template<class GridType > |
GridType::Ptr | openvdb::OPENVDB_VERSION_NAME::tools::levelSetRebuild (const GridType &grid, float isovalue, float exBandWidth, float inBandWidth, const math::Transform *xform=nullptr) |
| Return a new grid of type GridType that contains a narrow-band level set representation of an isosurface of a given grid. More...
|
|
template<class GridType , typename InterruptT > |
GridType::Ptr | openvdb::OPENVDB_VERSION_NAME::tools::levelSetRebuild (const GridType &grid, float isovalue, float exBandWidth, float inBandWidth, const math::Transform *xform=nullptr, InterruptT *interrupter=nullptr) |
| Return a new grid of type GridType that contains a narrow-band level set representation of an isosurface of a given grid. More...
|
|
#define OPENVDB_USE_ORACLE_IN_REBUILD 0 |
When rebuilding we convert from grid -> mesh -> grid. The conversion from mesh -> grid will close any internal bubbles. By using the original grid as an oracle we can set the sign of the bubbles properly. Unfortunately, when increasing resolution the rasterization of the mesh diverges too far from interpolated original grid and results in incorrect sign choices. The likely correct solution is to use a different approach for rebuilding when resolution is increasing.
Definition at line 15 of file LevelSetRebuild.h.