Files
UnrealEngineUWP/Engine/Source/Runtime/GeometryFramework/Private/Changes/MeshReplacementChange.cpp
michael balzer 2b10993563 Move InteractiveToolsFramework and GeometryFramework out of Experimental
#jira UETOOL-3823
#rb brooke.hubert
#preflight 6109d1e9b4288d0001acb7ef

[CL 17055606 by michael balzer in ue5-main branch]
2021-08-04 13:58:55 -04:00

46 lines
1.1 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#include "Changes/MeshReplacementChange.h"
#include "DynamicMesh/DynamicMesh3.h"
using namespace UE::Geometry;
FMeshReplacementChange::FMeshReplacementChange()
{
}
FMeshReplacementChange::FMeshReplacementChange(TSharedPtr<const FDynamicMesh3, ESPMode::ThreadSafe> BeforeIn, TSharedPtr<const FDynamicMesh3, ESPMode::ThreadSafe> AfterIn)
{
Before = BeforeIn;
After = AfterIn;
}
void FMeshReplacementChange::Apply(UObject* Object)
{
IMeshReplacementCommandChangeTarget* ChangeTarget = CastChecked<IMeshReplacementCommandChangeTarget>(Object);
ChangeTarget->ApplyChange(this, false);
if (OnChangeAppliedFunc)
{
OnChangeAppliedFunc(this, Object, true);
}
}
void FMeshReplacementChange::Revert(UObject* Object)
{
IMeshReplacementCommandChangeTarget* ChangeTarget = CastChecked<IMeshReplacementCommandChangeTarget>(Object);
ChangeTarget->ApplyChange(this, true);
if (OnChangeAppliedFunc)
{
OnChangeAppliedFunc(this, Object, false);
}
}
FString FMeshReplacementChange::ToString() const
{
return FString(TEXT("Mesh Change"));
}