Navigation
API > API/Plugins > API/Plugins/DynamicMesh
Description
Create a selection of the elements adjacent to the "Border" of the given ReferenceSelection and return in BoundaryConnectedSelection. The type of selected element is defined by ReferenceSelection. Currently "adjacency" is defined as "included in the one-ring of the boundary vertices of the ReferenceSelection", ie first the vertices on boundary edges are found, and then their one-rings are enumerated. Note that this will include "inside" and "outside" adjacent elements, and for vertices, the boundary vertices will still also be included. The main purpose of this function is to implement expand/contract selection operations, which would typically involve first finding the boundary-connected set and then using CombineSelectionInPlace to modify the original selection.
| Name | UE::Geometry::MakeBoundaryConnectedSelection |
| Type | function |
| Header File | /Engine/Plugins/Runtime/GeometryProcessing/Source/DynamicMesh/Public/Selections/GeometrySelectionUtil.h |
| Include Path | #include "Selections/GeometrySelectionUtil.h" |
| Source | /Engine/Plugins/Runtime/GeometryProcessing/Source/DynamicMesh/Private/Selections/GeometrySelectionUtil.cpp |
namespace UE
{
namespace Geometry
{
bool UE::Geometry::MakeBoundaryConnectedSelection
(
const UE::Geometry::FDynamicMesh3 & Mesh,
const FGroupTopology * GroupTopology,
const FGeometrySelection & ReferenceSelection,
TFunctionRef < bool)> SelectionIDPredicate,
FGeometrySelection & BoundaryConnectedSelection
)
}
}
true if ReferenceSelection had a known geometry/topology type pair and BoundaryConnectedSelection was populated
Parameters
| Name | Remarks |
|---|---|
| GroupTopology | precomputed group topology for Mesh, can be passed as null for EGeometryTopologyType::Triangle selections |
| SelectionIDPredicate | only elements that pass this filter will be expanded "to" (but elements of ReferenceSelection that fail the filter will still be included in output) |