68#ifndef OPENVDB_POINTS_RASTERIZE_SDF_HAS_BEEN_INCLUDED
69#define OPENVDB_POINTS_RASTERIZE_SDF_HAS_BEEN_INCLUDED
79#include <openvdb/thread/Threading.h>
83#include <unordered_map>
85#include <tbb/task_group.h>
86#include <tbb/parallel_reduce.h>
137template <
typename PointDataGridT,
138 typename SdfT =
typename PointDataGridT::template ValueConverter<float>::Type,
141rasterizeSdf(
const PointDataGridT& points,
const SettingsT& settings);
153template <
typename AttributeTs = TypeList<>,
154 typename RadiusAttributeT =
float,
155 typename FilterT = NullFilter>
232template <
typename AttributeTs = TypeList<>,
233 typename RadiusAttributeT =
float,
234 typename FilterT = NullFilter>
236 :
protected SphereSettings<AttributeTs, RadiusAttributeT, FilterT>
281template <
typename AttributeTs = TypeList<>,
282 typename RadiusAttributeT = Vec3f,
283 typename FilterT = NullFilter>
285 :
protected SphereSettings<AttributeTs, RadiusAttributeT, FilterT>
Attribute-owned data structure for points. Point attributes are stored in leaf nodes and ordered by v...
Functions to perform multi threaded reductions and analysis of arbitrary point attribute types....
Framework methods for rasterizing PointDataGrid data to Trees.
Defined various multi-threaded utility functions for trees.
GridPtrVec rasterizeSdf(const PointDataGridT &points, const SettingsT &settings)
Perform point rasterzation to produce a signed distance field.
Definition PointRasterizeSDFImpl.h:1525
static const Real LEVEL_SET_HALF_WIDTH
Definition Types.h:532
std::vector< GridBase::Ptr > GridPtrVec
Definition Grid.h:508
double Real
Definition Types.h:60
Definition Exceptions.h:13
Anisotropic point rasterization based on the principal component analysis of point neighbours....
Definition PointRasterizeSDF.h:286
std::string rotation
Definition PointRasterizeSDF.h:308
typename BaseT::AttributeTypes AttributeTypes
Definition PointRasterizeSDF.h:288
typename BaseT::RadiusAttributeType RadiusAttributeType
Definition PointRasterizeSDF.h:289
SphereSettings< AttributeTs, RadiusAttributeT, FilterT > BaseT
Definition PointRasterizeSDF.h:287
std::string pws
Definition PointRasterizeSDF.h:314
typename BaseT::FilterType FilterType
Definition PointRasterizeSDF.h:290
Smoothed point distribution based sphere stamping with a uniform radius or varying radius and optiona...
Definition PointRasterizeSDF.h:237
typename BaseT::AttributeTypes AttributeTypes
Definition PointRasterizeSDF.h:239
typename BaseT::RadiusAttributeType RadiusAttributeType
Definition PointRasterizeSDF.h:240
SphereSettings< AttributeTs, RadiusAttributeT, FilterT > BaseT
Definition PointRasterizeSDF.h:238
Real searchRadius
Definition PointRasterizeSDF.h:266
typename BaseT::FilterType FilterType
Definition PointRasterizeSDF.h:241
Generic settings for narrow band spherical stamping with a uniform or varying radius and optionally w...
Definition PointRasterizeSDF.h:157
std::vector< std::string > attributes
Definition PointRasterizeSDF.h:216
const FilterT * filter
Definition PointRasterizeSDF.h:221
math::Transform::Ptr transform
Definition PointRasterizeSDF.h:187
Real halfband
Definition PointRasterizeSDF.h:183
RadiusScaleT radiusScale
Definition PointRasterizeSDF.h:180
RadiusAttributeT RadiusAttributeType
Definition PointRasterizeSDF.h:159
typename PromoteType< RadiusAttributeT >::Highest RadiusScaleT
Definition PointRasterizeSDF.h:179
util::NullInterrupter * interrupter
Definition PointRasterizeSDF.h:224
FilterT FilterType
Definition PointRasterizeSDF.h:160
AttributeTs AttributeTypes
Definition PointRasterizeSDF.h:158
std::string radius
Definition PointRasterizeSDF.h:169
Base class for interrupters.
Definition NullInterrupter.h:26
#define OPENVDB_VERSION_NAME
The version namespace name for this library version.
Definition version.h.in:121
#define OPENVDB_USE_VERSION_NAMESPACE
Definition version.h.in:218