Module |
|
Header |
/Engine/Plugins/Experimental/GeometryProcessing/Source/DynamicMesh/Public/Operations/MeshSelfUnion.h |
Include |
#include "Operations/MeshSelfUnion.h" |
class FMeshSelfUnion
MeshSelfUnion perform a "Mesh Boolean" style union of a mesh on itself, resolving any self intersections and welding the new boundaries as needed
Name | Description | ||
---|---|---|---|
|
AllNewEdges |
All edges created by mesh boolean algorithm. Only populated if bTrackAllNewEdges = true |
|
|
bCollapseDegenerateEdgesOnCut |
InputsWhether to do additional processing to try to remove degenerate edges |
|
|
bPreserveOverlayUVs |
Prevent simplification from distorting overlay UVs |
|
|
bPreserveVertexUVs |
Prevent simplification from distorting vertex UVs |
|
|
bSimplifyAlongNewEdges |
Control whether we attempt to auto-simplify the small planar triangles that the boolean operation tends to generate |
|
|
bTrackAllNewEdges |
Control whether new edges should be tracked |
|
|
bTrimFlaps |
Whether to remove visible "open" geometry |
|
|
bWeldSharedEdges |
Weld newly-created cut edges where the mesh is unioned with itself. |
|
|
TArray< int > |
CreatedBoundaryEdges |
OutputBoundary edges created by the mesh boolean algorithm failing to cleanly weld (doesn't include boundaries that already existed in source mesh) |
|
double |
DegenerateEdgeTolFactor |
Tolerance factor (multiplied by SnapTolerance) for removing short edges created by the cutting process; should be no more than 2 |
|
FDynamicMesh3 &... |
Mesh |
The input mesh, to be modified. |
|
double |
NormalOffset |
Amount we nudge samples off the surface when evaluating winding number, to avoid numerical issues |
|
Progress |
Set this to be able to cancel running operation |
|
|
double |
SimplificationAngleTolerance |
Simplification-specific settings (only relevant if bSimplifyAlongNewEdges==true):Degrees of deviation from coplanar that we will still simplify |
|
double |
SnapTolerance |
Tolerance distance for considering a point to be on a vertex or edge, especially during mesh-mesh cutting |
|
double |
TryToImproveTriQualityThreshold |
If triangle quality (aspect ratio) is worse than this threshold, only simplify in ways that improve quality. |
|
float |
UVDistortTolerance |
When preserving UVs, sets maximum allowed change in UV coordinates from collapsing an edge, measured at the removed vertex |
|
double |
WindingThreshold |
Threshold to determine whether triangle in one mesh is inside or outside of the other |
Name | Description | |
---|---|---|
|
FMeshSelfUnion ( |
Name | Description | |
---|---|---|
|
~FMeshSelfUnion() |
Name | Description | ||
---|---|---|---|
|
Cancelled() |
If this returns true, abort computation. |
|
|
Compute() |
Compute the plane cut by splitting mesh edges that cross the cut plane, and then deleting any triangles on the positive side of the cutting plane. |
|
|
EOperationVa... |
Validate() |