Go to the source code of this file.
|
template<typename T , typename LeafNodeT > |
T * | initPcaArrayAttribute (LeafNodeT &leaf, const size_t idx, const bool fill=true) |
|
template<typename Scalar > |
Vec3i | descendingOrder (math::Vec3< Scalar > &vector) |
| Sort a vector into descending order and output a vector of the resulting order. More...
|
|
template<typename Scalar > |
bool | decomposeSymmetricMatrix (const math::Mat3< Scalar > &mat, math::Mat3< Scalar > &U, math::Vec3< Scalar > &sigma) |
| Decomposes a symmetric matrix into its eigenvalues and a rotation matrix of eigenvectors. Note that if mat is positive-definite, this will be equivalent to a singular value decomposition where V = U. More...
|
|
template<typename PointDataGridT > |
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 'Reconstructing Fluid Surfaces with Anisotropic Kernels'. The results are stored on the attributes pointed to by the PcaAttributes. See the PcaSettings and PcaAttributes structs for more details. More...
|
|
#define OPENVDB_PCA_SELF_CONTRIBUTION 1 |
when enabled, prints timings for each substep of the PCA algorithm
Experimental option to skip storing the self weight for the weighted PCA when set to 0