OpenVDB: openvdb::v12_1::points::pca_internal Namespace Reference

OpenVDB 12.1.1

Loading...
Searching...
No Matches
openvdb::v12_1::points::pca_internal Namespace Reference

## Classes
struct | NoTimer
struct | PcaTimer
struct | AttrIndices
struct | PcaTransfer
struct | WeightPosSumsTransfer
struct | CovarianceTransfer

## Typedefs
using | TimerT = NoTimer
using | WeightSumT = double
using | WeightedPositionSumT = Vec3d
using | GroupIndexT = points::AttributeSet::Descriptor::GroupIndex

## Functions
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.
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.

## Typedef Documentation

## ◆ GroupIndexT

using GroupIndexT = points::AttributeSet::Descriptor::GroupIndex

## ◆ TimerT

using TimerT = NoTimer

## ◆ WeightedPositionSumT

using WeightedPositionSumT = Vec3d

## ◆ WeightSumT

using WeightSumT = double

## Function Documentation

## ◆ decomposeSymmetricMatrix()

template<typename Scalar>

bool decomposeSymmetricMatrix | ( | const math::Mat3< Scalar > & | mat,
|  | math::Mat3< Scalar > & | U,
|  | math::Vec3< Scalar > & | sigma )
| inline

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.

Parameters

  mat | Matrix to decompose
  U | rotation matrix. The order of its columns (which will be eigenvectors) will match the eigenvalues in sigma
  sigma | vector of eigenvalues

## ◆ descendingOrder()

template<typename Scalar>

Vec3i descendingOrder | ( | math::Vec3< Scalar > & | vector | ) |
| inline

Sort a vector into descending order and output a vector of the resulting order.

Parameters

  vector | Vector to sort

## ◆ initPcaArrayAttribute()

template<typename T, typename LeafNodeT>

T * initPcaArrayAttribute | ( | LeafNodeT & | leaf,
|  | const size_t | idx,
|  | const bool | fill = true )
| inline