OpenVDB 12.1.0
Loading...
Searching...
No Matches
LevelSetDilatedMesh.h File Reference

Generate a narrow-band level set of a dilated surface mesh. More...

#include <openvdb/Grid.h>
#include <openvdb/openvdb.h>
#include <openvdb/math/Math.h>
#include <openvdb/util/NullInterrupter.h>
#include <vector>
#include "impl/LevelSetDilatedMeshImpl.h"

Go to the source code of this file.

Namespaces

namespace  openvdb
namespace  openvdb::v12_1
namespace  openvdb::v12_1::tools

Functions

template<typename GridType, typename ScalarType, typename InterruptT = util::NullInterrupter>
GridType::Ptr createLevelSetDilatedMesh (const std::vector< math::Vec3< ScalarType > > &vertices, const std::vector< Vec3I > &triangles, ScalarType radius, float voxelSize, float halfWidth=float(LEVEL_SET_HALF_WIDTH), InterruptT *interrupter=nullptr)
 Return a grid of type GridType containing a narrow-band level set representation of a dilated triangle surface mesh (dilated by a radius in all directions).
template<typename GridType, typename ScalarType, typename InterruptT = util::NullInterrupter>
GridType::Ptr createLevelSetDilatedMesh (const std::vector< math::Vec3< ScalarType > > &vertices, const std::vector< Vec4I > &quads, ScalarType radius, float voxelSize, float halfWidth=float(LEVEL_SET_HALF_WIDTH), InterruptT *interrupter=nullptr)
 Return a grid of type GridType containing a narrow-band level set representation of a dilated quad surface mesh (dilated by a radius in all directions).
template<typename GridType, typename ScalarType, typename InterruptT = util::NullInterrupter>
GridType::Ptr createLevelSetDilatedMesh (const std::vector< math::Vec3< ScalarType > > &vertices, const std::vector< Vec3I > &triangles, const std::vector< Vec4I > &quads, ScalarType radius, float voxelSize, float halfWidth=float(LEVEL_SET_HALF_WIDTH), InterruptT *interrupter=nullptr)
 Return a grid of type GridType containing a narrow-band level set representation of a dilated triangle & quad surface mesh (dilated by a radius in all directions).

Detailed Description

Generate a narrow-band level set of a dilated surface mesh.

Author
Greg Hurst
Note
By definition a level set has a fixed narrow band width (the half width is defined by LEVEL_SET_HALF_WIDTH in Types.h), whereas an SDF can have a variable narrow band width.