14 #ifndef OPENVDB_TOOLS_LEVELSETTUBES_HAS_BEEN_INCLUDED
15 #define OPENVDB_TOOLS_LEVELSETTUBES_HAS_BEEN_INCLUDED
44 template <
typename Gr
idType,
typename ScalarType,
typename InterruptT>
45 typename GridType::Ptr
47 ScalarType radius,
float voxelSize,
float halfWidth =
float(LEVEL_SET_HALF_WIDTH),
48 InterruptT* interrupter =
nullptr,
bool threaded =
true);
63 template <
typename Gr
idType,
typename ScalarType>
64 typename GridType::Ptr
66 ScalarType radius,
float voxelSize,
float halfWidth =
float(LEVEL_SET_HALF_WIDTH),
86 template <
typename Gr
idType,
typename ScalarType,
typename InterruptT>
87 typename GridType::Ptr
89 ScalarType radius1, ScalarType radius2,
90 float voxelSize,
float halfWidth =
float(LEVEL_SET_HALF_WIDTH),
91 InterruptT* interrupter =
nullptr,
bool threaded =
true);
108 template <
typename Gr
idType,
typename ScalarType>
109 typename GridType::Ptr
111 ScalarType radius1, ScalarType radius2,
float voxelSize,
112 float halfWidth =
float(LEVEL_SET_HALF_WIDTH),
bool threaded =
true);
145 template <
typename Gr
idType,
typename ScalarType,
typename InterruptT = util::NullInterrupter>
146 typename GridType::Ptr
148 const std::vector<Vec2I>& segments, ScalarType radius,
float voxelSize,
149 float halfWidth =
float(LEVEL_SET_HALF_WIDTH), InterruptT* interrupter =
nullptr);
167 template <
typename Gr
idType,
typename ScalarType,
typename InterruptT = util::NullInterrupter>
168 typename GridType::Ptr
170 const std::vector<Vec2I>& segments,
const std::vector<ScalarType>& radii,
float voxelSize,
172 InterruptT* interrupter =
nullptr);
180 #ifdef OPENVDB_USE_EXPLICIT_INSTANTIATION
182 #ifdef OPENVDB_INSTANTIATE_LEVELSETTUBES
186 #define _FUNCTION(TreeT) \
187 Grid<TreeT>::Ptr createLevelSetTubeComplex<Grid<TreeT>>(const std::vector<Vec3s>&, \
188 const std::vector<Vec2I>&, float, float, float, util::NullInterrupter*)
192 #define _FUNCTION(TreeT) \
193 Grid<TreeT>::Ptr createLevelSetTubeComplex<Grid<TreeT>>(const std::vector<Vec3s>&, \
194 const std::vector<Vec2I>&, const std::vector<float>&, float, float, TubeRadiiPolicy, \
195 util::NullInterrupter*)
199 #define _FUNCTION(TreeT) \
200 Grid<TreeT>::Ptr createLevelSetCapsule<Grid<TreeT>>(const Vec3s&, const Vec3s&, \
201 float, float, float, util::NullInterrupter*, bool)
205 #define _FUNCTION(TreeT) \
206 Grid<TreeT>::Ptr createLevelSetTaperedCapsule<Grid<TreeT>>(const Vec3s&, const Vec3s&, \
207 float, float, float, float, util::NullInterrupter*, bool)
211 #endif // OPENVDB_USE_EXPLICIT_INSTANTIATION
219 #endif // OPENVDB_TOOLS_LEVELSETTUBES_HAS_BEEN_INCLUDED
#define OPENVDB_REAL_TREE_INSTANTIATE(Function)
#define OPENVDB_USE_VERSION_NAMESPACE
General-purpose arithmetic and comparison routines, most of which accept arbitrary value types (or at...
Generate a narrow-band level set of a capsule, tapered capsule, and tube complex. ...
#define OPENVDB_VERSION_NAME
The version namespace name for this library version.