Navigation
API > API/Runtime > API/Runtime/InteractiveToolsFramework
Old description: UGizmoScaledTransformSource wraps another IGizmoTransformSource implementation and adds a separate scaling vector to the Transform. The main use of this class is to support scaling in a 3D gizmo without actually scaling the Gizmo itself. Generally our pattern is to apply the gizmo's position/rotation transform to the target object via a TransformProxy, but that does not work with Scaling. So this class stores the scaling vector separately, provided by an external source via FSeparateScaleProvider, and in GetTransform/SetTransform rewrites the Transform from the child IGizmoTransformSource with the new scale.
| Name | UGizmoScaledTransformSource |
| Type | class |
| Header File | /Engine/Source/Runtime/InteractiveToolsFramework/Public/BaseGizmos/TransformSources.h |
| Include Path | #include "BaseGizmos/TransformSources.h" |
Syntax
UCLASS (MinimalAPI)
class UGizmoScaledTransformSource : public UGizmoBaseTransformSource
Inheritance Hierarchy
- UObjectBase → UObjectBaseUtility → UObject → UGizmoBaseTransformSource → UGizmoScaledTransformSource
Implements Interfaces
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| ChildTransformSource | TScriptInterface< IGizmoTransformSource > | Child transform source | BaseGizmos/TransformSources.h | |
| ScaleProvider | FSeparateScaleProvider | Provider for external scale value/storage | BaseGizmos/TransformSources.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FTransform GetScaledTransform() |
Return the child transform with combined scale | BaseGizmos/TransformSources.h |
Overridden from IGizmoTransformSource
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual FTransform GetTransform() |
IGizmoTransformSource implementation, returns child transform with local sclae | BaseGizmos/TransformSources.h | |
virtual void SetTransform
(
const FTransform& NewTransform |
IGizmoTransformSource implementation, removes scale and sends to ScaleProvider, then forwards remaining rotate+translate transform to child | BaseGizmos/TransformSources.h |
Static
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
static UGizmoScaledTransformSource * Construct
(
IGizmoTransformSource* ChildSource, |
Construct a default instance of UGizmoComponentWorldTransformSource with the given Component | BaseGizmos/TransformSources.h |