Navigation
API > API/Plugins > API/Plugins/ModelingComponents > API/Plugins/ModelingComponents/Selection
Inheritance Hierarchy
- IGeometrySelectionTransformer
- FBasicDynamicMeshSelectionTransformer
- FDynamicMeshPolygroupTransformer
References
| Module | ModelingComponents |
| Header | /Engine/Plugins/Runtime/MeshModelingToolset/Source/ModelingComponents/Public/Selection/GeometrySelector.h |
| Include | #include "Selection/GeometrySelector.h" |
Syntax
class IGeometrySelectionTransformer
Remarks
IGeometrySelectionTransformer is a transient object that is created by an IGeometrySelector to provide external code with a way to manipulate/transform an active Selection. This allows (eg) a Gizmo to be hooked up to an active Selection without either explicitly knowing about each other.
You should not construct an IGeometrySelectionTransformer implementation directly. IGeometrySelector::InitializeTransformation() will create a suitable IGeometrySelectionTransformer implementation if transformation is supported, and IGeometrySelector::ShutdownTransformation() is used to return/destroy it. Only one active Transformer is supported on a given Selector.
The API functions BeginTransform/UpdateTransform/EndTransform are called by external code with the relevant information, see details below.
The current API assumes the transformation will be applied "per vertex", ie that the concept of "vertices" exists and that the transform is done pointwise. This may be expanded/revisited in future.
Destructors
| Type | Name | Description | |
|---|---|---|---|
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | BeginTransform
(
const UE::Geometry::FGeometrySelection& Selection |
Start a transform (eg called at beginning of a user interaction with a 3D gizmo). | |
| void | EndTransform
(
IToolsContextTransactionsAPI* TransactionsAPI |
Finish a transform (eg called on mouse-up during 3D gizmo interaction). | |
| IGeometrySelector * | GetSelector () |
||
| void | PreviewRender
(
IToolsContextRenderAPI* RenderAPI |
Optional function called per-frame to visualize the active Transformation | |
| void | UpdateTransform
(
TFunctionRef< FVector3d(int VertexID, const FVector3d&InitialPosition, const FTransform&WorldTrans... |
Update the active transform (eg called on each mouse update during 3D gizmo usage). |