17 #ifndef OPENVDB_POINTS_POINT_PRINCIPAL_COMPONENT_ANALYSIS_HAS_BEEN_INCLUDED 18 #define OPENVDB_POINTS_POINT_PRINCIPAL_COMPONENT_ANALYSIS_HAS_BEEN_INCLUDED 24 #include <openvdb/thread/Threading.h> 57 template <
typename Po
intDataGr
idT>
59 pca(PointDataGridT& points,
60 const PcaSettings& settings,
61 const PcaAttributes& attrs);
78 float searchRadius = 1.0f;
94 float allowedAnisotropyRatio = 0.25f;
99 float nonAnisotropicStretch = 1.0;
111 size_t neighbourThreshold = 20;
123 size_t maxSourcePointsPerVoxel = 8;
147 float averagePositions = 1.0f;
161 std::string stretch =
"stretch";
176 std::string positionWS =
"pws";
185 std::string ellipses =
"ellipsoids";
194 #endif // OPENVDB_POINTS_POINT_PRINCIPAL_COMPONENT_ANALYSIS_HAS_BEEN_INCLUDED Framework methods for rasterizing PointDataGrid data to Trees.
Point attribute manipulation in a VDB Point Grid.
Point group manipulation in a VDB Point Grid.
Base class for interrupters.
Definition: NullInterrupter.h:25
void pca(PointDataGridT &points, const PcaSettings &settings, const PcaAttributes &attrs)
Calculate ellipsoid transformations from the local point distributions as described in Yu and Turk's ...
Definition: PrincipalComponentAnalysisImpl.h:548
Various settings for the neighborhood analysis of point distributions.
Definition: PrincipalComponentAnalysis.h:66
Definition: Exceptions.h:13
Attribute-owned data structure for points. Point attributes are stored in leaf nodes and ordered by v...
The persistent attributes created by the PCA methods.
Definition: PrincipalComponentAnalysis.h:155
MatType rotation(const Quat< typename MatType::value_type > &q, typename MatType::value_type eps=static_cast< typename MatType::value_type >(1.0e-8))
Return the rotation matrix specified by the given quaternion.
Definition: Mat.h:172
#define OPENVDB_VERSION_NAME
The version namespace name for this library version.
Definition: version.h.in:121
3x3 matrix class.
Definition: Mat3.h:28
#define OPENVDB_USE_VERSION_NAMESPACE
Definition: version.h.in:218