Navigation
API > API/Plugins > API/Plugins/ModelingComponents
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.
| Name | IGeometrySelectionTransformer |
| Type | class |
| Header File | /Engine/Plugins/Runtime/MeshModelingToolset/Source/ModelingComponents/Public/Selection/GeometrySelector.h |
| Include Path | #include "Selection/GeometrySelector.h" |
Syntax
class IGeometrySelectionTransformer
Derived Classes
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual ~IGeometrySelectionTransformer() |
Selection/GeometrySelector.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void BeginTransform
(
const UE::Geometry::FGeometrySelection& Selection |
Start a transform (eg called at beginning of a user interaction with a 3D gizmo). | Selection/GeometrySelector.h | |
void EndTransform
(
IToolsContextTransactionsAPI* TransactionsAPI |
Finish a transform (eg called on mouse-up during 3D gizmo interaction). | Selection/GeometrySelector.h | |
IGeometrySelector * GetSelector() |
Selection/GeometrySelector.h | ||
virtual void PreviewRender
(
IToolsContextRenderAPI* RenderAPI |
Optional function called per-frame to visualize the active Transformation | Selection/GeometrySelector.h | |
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). | Selection/GeometrySelector.h |