public class PnPCA
extends java.lang.Object
Constructor and Description |
---|
PnPCA() |
Modifier and Type | Method and Description |
---|---|
static PdVector |
getBarycenter(PgElementSet geom)
Compute the barycenter of an element set.
|
static PdVector |
getBarycenter(PgElementSet geom,
int[] indices)
Compute the barycenter of a subset of an element set.
|
static PdVector |
getBarycenter(PgTetraSet geom)
Compute the barycenter of an element set.
|
static PdVector |
getBarycenter(PgTetraSet geom,
int[] indices)
Compute the barycenter of a tetra set.
|
static PdMatrix |
getCovarianceMatrix(PgElementSet geom)
Compute the covariance matrix of an element set.
|
static PdMatrix |
getCovarianceMatrix(PgElementSet geom,
PdVector center)
Compute the covariance matrix of an element set.
|
static PdMatrix |
getCovarianceMatrix(PgElementSet geom,
PdVector center,
int[] indices)
Compute the covariance matrix of a subset of an element set.
|
static PdMatrix |
getCovarianceMatrix(PgTetraSet geom)
Compute the covariance matrix of a tetra set.
|
static PdMatrix |
getCovarianceMatrix(PgTetraSet geom,
PdVector center)
Compute the covariance matrix of a tetra set.
|
static PdMatrix |
getCovarianceMatrix(PgTetraSet geom,
PdVector center,
int[] indices)
Compute the covariance matrix of a tetra set.
|
static PdVector |
getNormal(PgElementSet geom,
PdVector center)
Compute the normal of the best-fitting plane to an element set.
|
static PdVector |
getNormal(PgElementSet geom,
PdVector center,
int[] indices)
Compute the normal of the best-fitting plane to a subset of an element set.
|
static PdVector |
getNormal(PgTetraSet geom,
PdVector center)
Compute the normal of the best-fitting plane to a tetra set.
|
static PdVector |
getNormal(PgTetraSet geom,
PdVector center,
int[] indices)
Compute the normal of the best-fitting plane to a subset of a tetra set.
|
static PdVector |
getWeightedBarycenter(PgTetraSet geom,
PdMatrix[] tensorField,
int[] indices)
Compute the barycenter of a tetra set.
|
static PdVector |
getWeightedBarycenter(PgTetraSet geom,
PgVectorField vf,
int[] indices)
Compute the barycenter of a tetra set.
|
static PdMatrix |
getWeightedCovarianceMatrix(PgTetraSet geom,
PdMatrix[] tensorField,
PdVector center,
int[] indices)
Compute the covariance matrix of a tetra set.
|
static PdMatrix |
getWeightedCovarianceMatrix(PgTetraSet geom,
PgVectorField vf,
PdVector center,
int[] indices)
Compute the covariance matrix of a tetra set.
|
static PdVector |
getWeightedNormal(PgTetraSet geom,
PgVectorField vf,
PdVector center,
int[] indices)
Compute the normal of the best-fitting plane to a subset of a tetra set.
|
static void |
transformToNormalPosition(PgElementSet geom)
Translates and rotates a surface, such that its barycenter lies in the origin
and the three eigenvectors of the covariance matrix are aligned to the axes.
|
public static PdMatrix getCovarianceMatrix(PgElementSet geom)
geom
- The element set to analyzepublic static PdMatrix getCovarianceMatrix(PgElementSet geom, PdVector center)
geom
- The element set to analyzecenter
- The center of covariance analysis (expectation)public static PdMatrix getCovarianceMatrix(PgElementSet geom, PdVector center, int[] indices)
geom
- The element set to analyzecenter
- The center of covariance analysis (expectation)indices
- The indices of the subsetpublic static PdMatrix getCovarianceMatrix(PgTetraSet geom)
geom
- The tetra set to analyzepublic static PdMatrix getCovarianceMatrix(PgTetraSet geom, PdVector center)
geom
- The tetra set to analyzecenter
- The center of covariance analysis (expectation)public static PdMatrix getCovarianceMatrix(PgTetraSet geom, PdVector center, int[] indices)
geom
- The tetra set to analyzecenter
- The center of covariance analysis (expectation)indices
- Set of elements, which are treated by this methodpublic static PdMatrix getWeightedCovarianceMatrix(PgTetraSet geom, PgVectorField vf, PdVector center, int[] indices)
geom
- The tetra set to analyzecenter
- The center of covariance analysis (expectation)public static PdMatrix getWeightedCovarianceMatrix(PgTetraSet geom, PdMatrix[] tensorField, PdVector center, int[] indices)
geom
- The tetra set to analyzetensorField
- center
- The center of covariance analysis (expectation)indices
- public static PdVector getBarycenter(PgElementSet geom)
geom
- The element setpublic static PdVector getBarycenter(PgTetraSet geom)
geom
- The element setpublic static PdVector getBarycenter(PgElementSet geom, int[] indices)
geom
- The element setindices
- The indices of the subsetpublic static PdVector getBarycenter(PgTetraSet geom, int[] indices)
geom
- The tetra setindices
- The indices of the subsetpublic static PdVector getWeightedBarycenter(PgTetraSet geom, PgVectorField vf, int[] indices)
geom
- The tetra setindices
- The indices of the subsetpublic static PdVector getNormal(PgElementSet geom, PdVector center)
geom
- the element setcenter
- the barycenter of the element setpublic static PdVector getNormal(PgTetraSet geom, PdVector center)
geom
- the tetra setcenter
- the barycenter of the tetra setpublic static PdVector getNormal(PgElementSet geom, PdVector center, int[] indices)
geom
- the element setcenter
- the barycenter of the element setindices
- the indices of the subsetpublic static PdVector getNormal(PgTetraSet geom, PdVector center, int[] indices)
geom
- the tetra setcenter
- the barycenter of the element setindices
- the indices of the subsetpublic static PdVector getWeightedNormal(PgTetraSet geom, PgVectorField vf, PdVector center, int[] indices)
geom
- the tetra setcenter
- the barycenter of the tetra setindices
- the indices of the subsetpublic static PdVector getWeightedBarycenter(PgTetraSet geom, PdMatrix[] tensorField, int[] indices)
geom
- the tetra settensorField
- specifies the weightsindices
- the indices of the subsetpublic static void transformToNormalPosition(PgElementSet geom)
"