Navigation
API > API/Plugins > API/Plugins/GeometryScriptingCore > API/Plugins/GeometryScriptingCore/GeometryScript
References
| Module | GeometryScriptingCore |
| Header | /Engine/Plugins/Runtime/GeometryScripting/Source/GeometryScriptingCore/Public/GeometryScript/GeometryScriptSelectionTypes.h |
| Include | #include "GeometryScript/GeometryScriptSelectionTypes.h" |
Syntax
USTRUCT (BlueprintType , Meta=(DisplayName="Mesh Selection"))
struct FGeometryScriptMeshSelection
Remarks
FGeometryScriptMeshSelection is a container for a Mesh Selection used in Geometry Script. The actual selection representation is not exposed to BP, use functions in MeshSelectionFunctions/etc to manipulate the selection.
Internally the selection is stored as a SharedPtr to a FGeometrySelection, which stores a TSet (so unique add and remove are efficient, but the selection cannot be directly indexed without converting to an Array).
Note that the Selection storage is not a UProperty, and is not serialized. FGeometryScriptMeshSelection instances cannot be serialized, they are only transient data structures, that can be created and used Blueprint instances.
Constructors
| Type | Name | Description | |
|---|---|---|---|
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | |||
| void | CombineSelectionInPlace
(
const FGeometryScriptMeshSelection& SelectionB, |
Combine SelectionB with current selection, updating current selection, using CombineMode to control how combining happens | |
| bool | ConvertIndexTypeToSelectionType
(
EGeometryScriptIndexType IndexType, |
||
| EGeometryScriptIndexType | ConvertToMeshIndexArray
(
const UE::Geometry::FDynamicMesh3& Mesh, |
Convert the current selection to a TArray, optionally converting to ConvertToType. | |
| void | DebugPrint () |
||
| int32 | Note that for edge selections, this can return more elements than expected because both can be redundantly represented i.e. an edge can be in the selection once per 'half edge', since it is represented by triangle/index-in-triangle pair. | ||
| int32 | GetNumUniqueSelected
(
const UE::Geometry::FDynamicMesh3& Mesh |
Return the number of valid, unique elements in the selection; e.g., with no double-counting of selected edges. | |
| EGeometryScriptMeshSelectionType | |||
| bool | IsEmpty () |
||
| void | ProcessByEdgeID
(
const UE::Geometry::FDynamicMesh3& Mesh, |
Call PerEdgeFunc for each EdgeID in the Selection. | |
| void | ProcessByTriangleID
(
const UE::Geometry::FDynamicMesh3& Mesh, |
Call PerTriangleFunc for each TriangleID in the Selection. | |
| void | ProcessByVertexID
(
const UE::Geometry::FDynamicMesh3& Mesh, |
Call PerVertexFunc for each VertexID in the Selection. | |
| void | SetSelection
(
const FGeometryScriptMeshSelection& Selection |
||
| void | SetSelection
(
const UE::Geometry::FGeometrySelection& Selection |
||
| void | SetSelection
(
UE::Geometry::FGeometrySelection&& Selection |
Operators
| Type | Name | Description | |
|---|---|---|---|
| bool | operator!=
(
const FGeometryScriptMeshSelection& Other |
||
| bool | operator==
(
const FGeometryScriptMeshSelection& Other |