UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
TransformProxy.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
6#include "Containers/Array.h"
8#include "CoreMinimal.h"
10#include "HAL/Platform.h"
13#include "Math/Transform.h"
14#include "Templates/Function.h"
15#include "Templates/UniquePtr.h"
16#include "UObject/Object.h"
21
22#include "TransformProxy.generated.h"
23
24class USceneComponent;
25
38UCLASS(Transient, MinimalAPI)
40{
42public:
43
49 INTERACTIVETOOLSFRAMEWORK_API virtual void AddComponent(USceneComponent* Component, bool bModifyComponentOnTransform = true);
50
60 INTERACTIVETOOLSFRAMEWORK_API virtual void AddComponentCustom(
61 USceneComponent* Component,
62 TUniqueFunction<FTransform(void)> GetTransformFunc,
63 TUniqueFunction<void(const FTransform&)> SetTransformFunc,
64 int64 UserDefinedIndex = 0,
65 bool bModifyComponentOnTransform = true);
66
67
71 INTERACTIVETOOLSFRAMEWORK_API virtual FTransform GetTransform() const;
72
76 INTERACTIVETOOLSFRAMEWORK_API virtual void SetTransform(const FTransform& Transform);
77
78
86 INTERACTIVETOOLSFRAMEWORK_API virtual void BeginTransformEditSequence();
87
91 INTERACTIVETOOLSFRAMEWORK_API virtual void EndTransformEditSequence();
92
97 INTERACTIVETOOLSFRAMEWORK_API virtual void BeginPivotEditSequence();
98
103 INTERACTIVETOOLSFRAMEWORK_API virtual void EndPivotEditSequence();
104
105public:
112
118
122
126
133
137
141
145 UPROPERTY()
146 bool bRotatePerObject = false;
147
151 UPROPERTY()
152 bool bSetPivotMode = false;
153
154
156
172
175
177 UPROPERTY()
178 FTransform SharedTransform;
179
181 UPROPERTY()
182 FTransform InitialSharedTransform;
183
185 INTERACTIVETOOLSFRAMEWORK_API virtual void UpdateSharedTransform();
186
188 INTERACTIVETOOLSFRAMEWORK_API virtual void UpdateObjectTransforms();
189
191 INTERACTIVETOOLSFRAMEWORK_API virtual void UpdateObjects();
192};
193
194
195
200{
201public:
204 bool bSetPivotMode = false;
205
206 INTERACTIVETOOLSFRAMEWORK_API virtual void Apply(UObject* Object) override;
207 INTERACTIVETOOLSFRAMEWORK_API virtual void Revert(UObject* Object) override;
208
209 virtual FString ToString() const override { return TEXT("FTransformProxyChange"); }
210};
211
OODEFFUNC typedef void(OODLE_CALLBACK t_fp_OodleCore_Plugin_Free)(void *ptr)
#define TEXT(x)
Definition Platform.h:1272
FPlatformTypes::int64 int64
A 64-bit signed integer.
Definition Platform.h:1127
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
UE::Math::TTransform< double > FTransform
Definition MathFwd.h:53
const bool
Definition NetworkReplayStreaming.h:178
#define UPROPERTY(...)
UObject definition macros.
Definition ObjectMacros.h:744
#define GENERATED_BODY(...)
Definition ObjectMacros.h:765
#define UCLASS(...)
Definition ObjectMacros.h:776
Definition Text.h:385
Definition InteractiveToolChange.h:18
Definition TransformProxy.h:217
TUniquePtr< FTransformProxyChange > ActiveChange
Definition TransformProxy.h:227
virtual INTERACTIVETOOLSFRAMEWORK_API TUniquePtr< FToolCommandChange > EndChange() override
Definition TransformProxy.cpp:241
virtual INTERACTIVETOOLSFRAMEWORK_API FText GetChangeDescription() override
Definition TransformProxy.cpp:279
bool bOverrideSetPivotMode
Definition TransformProxy.h:240
FTransformProxyChangeSource(UTransformProxy *ProxyIn)
Definition TransformProxy.h:219
TWeakObjectPtr< UTransformProxy > Proxy
Definition TransformProxy.h:226
virtual INTERACTIVETOOLSFRAMEWORK_API void BeginChange() override
Definition TransformProxy.cpp:220
virtual INTERACTIVETOOLSFRAMEWORK_API UObject * GetChangeTarget() override
Definition TransformProxy.cpp:274
virtual ~FTransformProxyChangeSource()
Definition TransformProxy.h:224
Definition TransformProxy.h:200
virtual FString ToString() const override
Definition TransformProxy.h:209
FTransform To
Definition TransformProxy.h:203
FTransform From
Definition TransformProxy.h:202
Definition InteractiveToolChange.h:68
Definition Array.h:670
Definition FunctionFwd.h:19
Definition UniquePtr.h:107
Definition Object.h:95
Definition TransformProxy.h:40
DECLARE_MULTICAST_DELEGATE_TwoParams(FOnPivotChanged, UTransformProxy *, FTransform)
DECLARE_MULTICAST_DELEGATE_TwoParams(FOnTransformChanged, UTransformProxy *, FTransform)
FOnTransformChanged OnTransformChanged
Definition TransformProxy.h:111
FOnTransformChanged OnTransformChangedUndoRedo
Definition TransformProxy.h:117
DECLARE_MULTICAST_DELEGATE_OneParam(FOnBeginPivotEdit, UTransformProxy *)
TArray< FRelativeObject > Objects
Definition TransformProxy.h:174
FOnBeginPivotEdit OnBeginPivotEdit
Definition TransformProxy.h:136
DECLARE_MULTICAST_DELEGATE_OneParam(FOnEndPivotEdit, UTransformProxy *)
FOnBeginTransformEdit OnBeginTransformEdit
Definition TransformProxy.h:121
DECLARE_MULTICAST_DELEGATE_OneParam(FOnEndTransformEdit, UTransformProxy *)
FOnEndPivotEdit OnEndPivotEdit
Definition TransformProxy.h:140
FOnEndTransformEdit OnEndTransformEdit
Definition TransformProxy.h:125
DECLARE_MULTICAST_DELEGATE_OneParam(FOnBeginTransformEdit, UTransformProxy *)
FOnPivotChanged OnPivotChanged
Definition TransformProxy.h:132
@ false
Definition radaudio_common.h:23
Definition WeakObjectPtrTemplates.h:25
Definition TransformProxy.h:158
bool bModifyComponentOnTransform
Definition TransformProxy.h:160
TUniqueFunction< void(const FTransform &)> SetTransformFunc
Definition TransformProxy.h:165
FTransform StartTransform
Definition TransformProxy.h:168
FTransform RelativeTransform
Definition TransformProxy.h:170
TWeakObjectPtr< USceneComponent > Component
Definition TransformProxy.h:159
TUniqueFunction< FTransform(void)> GetTransformFunc
Definition TransformProxy.h:164
int64 UserDefinedIndex
Definition TransformProxy.h:162