DREAM.3D v6 User Manual
Find Feature Face Curvature

Group (Subgroup)

Surface Meshing (Curvature)

Description

This Filter calculates principal direction vectors and the principal curvatures, and optionally the mean and Gaussian curvature, for each Triangle in a Triangle Geometry using the technique in [1]. The groups of Triangles over which to compute the curvatures is determines by the Features they are associated, denoted by their Face Labels. The curvature information will be stored in a Face Attribute Matrix.

Principal Curvatures 1 and 2 are the κ 1 and κ 2 from [1] and are the eigenvalues from the Wiengarten matrix. The Principal Directions 1 and 2 are the eigenvectors from the solution to the least squares fit algorithm. The Mean Curvature is (κ 1 + κ 2 ) / 2, while the Gaussian curvature is (κ 1 * κ 2 ).


FeatureFaceCurvatureFilter.png
Curvature Coloring of a Feature

Parameters

Name Type Description
Neighborhood Ring Count int32_t The size of the neighborhood to use to calculate the curvature values
Compute Principal Direction Vectors bool Whether to compute the principal direction vectors
Compute Gaussian Curvature bool Whether to compute the Gaussian curvature values
Compute Mean Curvature bool Whether to compute the mean curvature values
Use Face Normals for Curve Fitting bool Whether to use the Face normals to improve the least squares fit

Required Geometry

Triangle

Required Objects

Kind Default Name Type Component Dimensions Description
**Attribute Matrix**FaceData Face N / A Specifies which Attribute Matrix to store the results
**Face Attribute Array**FaceLabels int32_t (2) Specifies which Features are on either side of each Face
**Face Attribute Array**FeatureFaceIds int32_t (1) Specifies to which Feature boundary each Face belongs
**Face Attribute Array**FaceNormals double (3) Specifies the normal of each Face
**Face Attribute Array**FaceCentroids double (3) Specifies the centroid of each Face

Created Objects

Kind Default Name Type Component Dimensions Description
**Face Attribute Array**PrincipalCurvature1 double (1) First set eigenvalues of the Wiengarten matrix (κ1). Only created if Compute Principal Direction Vectors is checked
**Face Attribute Array**PrincipalCurvature2 double (1) Second set eigenvalues of the Wiengarten matrix (κ2). Only created if Compute Principal Direction Vectors is checked
**Face Attribute Array**PrincipalDirection1 double (3) First set of eigenvectors. Only created if Compute Principal Direction Vectors is checked
**Face Attribute Array**PrincipalDirection2 double (3) Second set of eigenvectors. Only created if Compute Principal Direction Vectors is checked
**Face Attribute Array**MeanCurvatures double (1) Mean curvature values. Only created if Compute Mean Curvature is checked
**Face Attribute Array**GaussianCurvatures double (1) Gaussian curvature values. Only created if Compute Gaussian Curvature is checked

References

[1] J. Goldfeather, V. Interrante, "A Novel Cubic-Order Algorithm for Approximating Principal Direction Vectors", ACM Transactions on Graphics 2004, 23(1), pp. 45 - 63.

License & Copyright

Please see the description file distributed with this**Plugin**

DREAM.3D Mailing Lists

If you need more help with a**Filter**, please consider asking your question on the DREAM.3D Users Google group!