17#ifndef OPENVDB_POINTS_POINT_PRINCIPAL_COMPONENT_ANALYSIS_HAS_BEEN_INCLUDED
18#define OPENVDB_POINTS_POINT_PRINCIPAL_COMPONENT_ANALYSIS_HAS_BEEN_INCLUDED
27#include <openvdb/simd/Simd.h>
58template <
typename Po
intDataGr
idT>
231#include "impl/PrincipalComponentAnalysisImpl.h"
Point attribute manipulation in a VDB Point Grid.
Attribute-owned data structure for points. Point attributes are stored in leaf nodes and ordered by v...
Point group manipulation in a VDB Point Grid.
Framework methods for rasterizing PointDataGrid data to Trees.
3x3 matrix class.
Definition Mat3.h:29
Definition AttributeArray.h:42
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 Exceptions.h:13
The persistent attributes created by the PCA methods.
Definition PrincipalComponentAnalysis.h:165
std::string rotation
Definition PrincipalComponentAnalysis.h:222
math::Vec3< float > StretchT
Settings for the "stretch" attribute, a floating point vector attribute which represents the scaling ...
Definition PrincipalComponentAnalysis.h:190
std::string positionWS
Definition PrincipalComponentAnalysis.h:207
std::string ellipses
A point group to create that represents points which have valid ellipsoidal neighborhood....
Definition PrincipalComponentAnalysis.h:215
math::Mat3< float > RotationT
Settings for the "xform" attribute, either a floating point matrix or quaternion attribute....
Definition PrincipalComponentAnalysis.h:196
std::string stretch
Definition PrincipalComponentAnalysis.h:191
math::Quat< float > QuatT
Definition PrincipalComponentAnalysis.h:197
math::Vec3< double > PosWsT
Settings for the world space position of every point. This may end up being different to their actual...
Definition PrincipalComponentAnalysis.h:206
XformOutput xformOutput
Definition PrincipalComponentAnalysis.h:183
std::string xform
Definition PrincipalComponentAnalysis.h:198
XformOutput
Definition PrincipalComponentAnalysis.h:167
@ STRETCH_AND_UNITARY_MATRIX
Definition PrincipalComponentAnalysis.h:180
@ COMBINED_TRANSFORM
Definition PrincipalComponentAnalysis.h:171
@ STRETCH_AND_QUATERNION
Definition PrincipalComponentAnalysis.h:175
Various settings for the neighborhood analysis of point distributions.
Definition PrincipalComponentAnalysis.h:68
size_t neighbourThreshold
Definition PrincipalComponentAnalysis.h:116
float allowedAnisotropyRatio
Definition PrincipalComponentAnalysis.h:99
float averagePositions
Definition PrincipalComponentAnalysis.h:152
util::NullInterrupter * interrupter
Definition PrincipalComponentAnalysis.h:154
size_t maxTargetPointsPerVoxel
Definition PrincipalComponentAnalysis.h:142
size_t maxSourcePointsPerVoxel
Definition PrincipalComponentAnalysis.h:128
float nonAnisotropicStretch
Definition PrincipalComponentAnalysis.h:104
float searchRadius
Definition PrincipalComponentAnalysis.h:83
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:291