68#ifndef OPENVDB_POINTS_RASTERIZE_SDF_HAS_BEEN_INCLUDED
69#define OPENVDB_POINTS_RASTERIZE_SDF_HAS_BEEN_INCLUDED
82#include <openvdb/simd/Simd.h>
84#include <unordered_map>
86#include <tbb/task_group.h>
87#include <tbb/parallel_reduce.h>
139template <
typename PointDataGridT,
140 typename SdfT =
typename PointDataGridT::template ValueConverter<float>::Type,
155template <
typename AttributeTs = TypeList<>,
156 typename RadiusAttributeT =
float,
157 typename FilterT = NullFilter>
234template <
typename AttributeTs = TypeList<>,
235 typename RadiusAttributeT =
float,
236 typename FilterT = NullFilter>
238 :
protected SphereSettings<AttributeTs, RadiusAttributeT, FilterT>
287template <
typename AttributeTs = TypeList<>,
288 typename RadiusAttributeT = Vec3f,
289 typename FilterT = NullFilter>
291 :
protected SphereSettings<AttributeTs, RadiusAttributeT, FilterT>
336#include "impl/PointRasterizeSDFImpl.h"
337#include "impl/PointRasterizeEllipsoidsSDFImpl.h"
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.
Definition AttributeArray.h:42
GridPtrVec rasterizeSdf(const PointDataGridT &points, const SettingsT &settings)
Perform point rasterzation to produce a signed distance field.
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:40
Definition Exceptions.h:13
Anisotropic point rasterization based on the principal component analysis of point neighbours....
Definition PointRasterizeSDF.h:292
std::string rotation
Definition PointRasterizeSDF.h:327
typename BaseT::AttributeTypes AttributeTypes
Definition PointRasterizeSDF.h:294
typename BaseT::RadiusAttributeType RadiusAttributeType
Definition PointRasterizeSDF.h:295
SphereSettings< AttributeTs, RadiusAttributeT, FilterT > BaseT
Definition PointRasterizeSDF.h:293
std::string xform
Definition PointRasterizeSDF.h:316
std::string pws
Definition PointRasterizeSDF.h:322
typename BaseT::FilterType FilterType
Definition PointRasterizeSDF.h:296
Smoothed point distribution based sphere stamping with a uniform radius or varying radius and optiona...
Definition PointRasterizeSDF.h:239
typename BaseT::AttributeTypes AttributeTypes
Definition PointRasterizeSDF.h:241
typename BaseT::RadiusAttributeType RadiusAttributeType
Definition PointRasterizeSDF.h:242
SphereSettings< AttributeTs, RadiusAttributeT, FilterT > BaseT
Definition PointRasterizeSDF.h:240
Real searchRadius
Definition PointRasterizeSDF.h:268
typename BaseT::FilterType FilterType
Definition PointRasterizeSDF.h:243
Generic settings for narrow band spherical stamping with a uniform or varying radius and optionally w...
Definition PointRasterizeSDF.h:159
std::vector< std::string > attributes
Definition PointRasterizeSDF.h:218
const FilterT * filter
Definition PointRasterizeSDF.h:223
math::Transform::Ptr transform
Definition PointRasterizeSDF.h:189
Real halfband
Definition PointRasterizeSDF.h:185
RadiusScaleT radiusScale
Definition PointRasterizeSDF.h:182
RadiusAttributeT RadiusAttributeType
Definition PointRasterizeSDF.h:161
typename PromoteType< RadiusAttributeT >::Highest RadiusScaleT
Definition PointRasterizeSDF.h:181
util::NullInterrupter * interrupter
Definition PointRasterizeSDF.h:226
FilterT FilterType
Definition PointRasterizeSDF.h:162
AttributeTs AttributeTypes
Definition PointRasterizeSDF.h:160
std::string radius
Definition PointRasterizeSDF.h:171
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:284