Navigation
API > API/Runtime > API/Runtime/GeometryCore > API/Runtime/GeometryCore/DynamicMesh
References
| Module | GeometryCore |
| Header | /Engine/Source/Runtime/GeometryCore/Public/DynamicMesh/MeshNormals.h |
| Include | #include "DynamicMesh/MeshNormals.h" |
Syntax
class FMeshNormals
Remarks
FMeshNormals is a utility class that can calculate and store various types of normal vectors for a FDynamicMesh.
Variables
| Type | Name | Description | |
|---|---|---|---|
| const FDynamicMesh3 * | Mesh | Target Mesh | |
| TArray< FVector3d > | Normals | Set of computed normals |
Constructors
| Type | Name | Description | |
|---|---|---|---|
FMeshNormals () |
|||
FMeshNormals
(
const FDynamicMesh3* Mesh |
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | Compute_FaceAvg
(
bool bWeightByArea, |
Compute per-vertex normals using a custom combination of area-weighted and angle-weighted averaging of one-ring triangle normals | |
| void | Compute per-vertex normals using area-weighted averaging of one-ring triangle normals | ||
| void | Compute_Overlay_FaceAvg
(
const FDynamicMeshNormalOverlay* NormalOverlay, |
Recompute the element Normals of the given attribute overlay using a custom combination of area-weighted and angle-weighted averaging of one-ring triangle normals | |
| void | Compute_Overlay_FaceAvg_AreaWeighted
(
const FDynamicMeshNormalOverlay* NormalOverlay |
Recompute the element Normals of the given attribute overlay using area-weighted averaging of one-ring triangle normals | |
| void | Compute per-triangle normals | ||
| FVector3d | ComputeOverlayNormal
(
const FDynamicMesh3& Mesh, |
||
| void | Compute per-triangle normals | ||
| FVector3d | ComputeVertexNormal
(
const FDynamicMesh3& Mesh, |
Compute normal at mesh vertex by weighted sum of subset of one-ring triangle normals. | |
| FVector3d | ComputeVertexNormal
(
const FDynamicMesh3& Mesh, |
Compute normal at mesh vertex by weighted sum of one-ring triangle normals. | |
| void | ComputeVertexNormals
(
bool bWeightByArea, |
Compute standard per-vertex normals by averaging one-ring face normals | |
| void | CopyToOverlay
(
FDynamicMeshNormalOverlay* NormalOverlay, |
Copy the current set of normals to the NormalOverlay attribute layer | |
| void | CopyToVertexNormals
(
FDynamicMesh3* SetMesh, |
Copy the current set of normals to the vertex normals of SetMesh | |
| const TArray< FVector3d > & | GetNormals () |
||
| FVector3d | GetVertexWeightsOnTriangle
(
const FDynamicMesh3* Mesh, |
Retrieve the area and/or angle weights for each vertex of a triangle | |
| void | Initialize the given Mesh with per-face normals, ie separate overlay element for each vertex of each triangle. | ||
| void | InitializeOverlayRegionToPerVertexNormals
(
FDynamicMeshNormalOverlay* NormalOverlay, |
Initialize the given triangles of NormalOverlay with per-vertex normals, ie single overlay element for each mesh vertex. | |
| void | InitializeOverlayToPerTriangleNormals
(
FDynamicMeshNormalOverlay* NormalOverlay |
Initialize the given NormalOverlay with per-face normals, ie separate overlay element for each vertex of each triangle. | |
| void | InitializeOverlayToPerVertexNormals
(
FDynamicMeshNormalOverlay* NormalOverlay, |
Initialize the given NormalOverlay with per-vertex normals, ie single overlay element for each mesh vertex. | |
| void | InitializeOverlayTopologyFromFaceGroups
(
const FDynamicMesh3* Mesh, |
||
| void | InitializeOverlayTopologyFromOpeningAngle
(
const FDynamicMesh3* Mesh, |
||
| void | QuickComputeVertexNormals
(
FDynamicMesh3& Mesh, |
Compute per-vertex normals for the given Mesh | |
| void | QuickComputeVertexNormalsForTriangles
(
FDynamicMesh3& Mesh, |
Compute per-vertex normals for the vertices of a set of triangles of a Mesh | |
| bool | QuickRecomputeOverlayNormals
(
FDynamicMesh3& Mesh, |
Compute overlay normals for the given mesh | |
| bool | RecomputeOverlayElementNormals
(
FDynamicMesh3& Mesh, |
Compute overlay normals for the given mesh, for the given set of element IDs | |
| void | RecomputeOverlayNormals
(
const FDynamicMeshNormalOverlay* NormalOverlay, |
Recompute the per-element normals of the given overlay by averaging one-ring face normals | |
| bool | RecomputeOverlayTriNormals
(
FDynamicMesh3& Mesh, |
Compute overlay normals for the given mesh, for the given set of triangles | |
| void | SetCount
(
int Count, |
Set the size of the Normals array to Count, and optionally clear all values to (0,0,0) | |
| void | Assumes that ComputeTriangleNormals() has already been run. | ||
| void | SetMesh
(
const FDynamicMesh3* MeshIn |
||
| void | SmoothVertexNormals
(
FDynamicMesh3& Mesh, |
Apply rounds of explicit uniform-weighted normal smoothing to the VertexNormals attribute of the given Mesh. |
Operators
| Type | Name | Description | |
|---|---|---|---|
| FVector3d & | operator[]
(
int i |
||
| const FVector3d & | operator[]
(
int i |