// All rights reserved Dominik Pavlicek 2023 #pragma once #include "CoreMinimal.h" #include "Layout/ComboActionGraphLayoutStrategy.h" #include "UObject/Object.h" #include "ComboActionForceDirectedSolveLayoutStrategy.generated.h" /** * */ UCLASS() class COMBOINPUTEDITOR_API UComboActionForceDirectedSolveLayoutStrategy : public UComboActionGraphLayoutStrategy { GENERATED_BODY() UComboActionForceDirectedSolveLayoutStrategy(); virtual void Layout(UEdGraph *EdGraph) override; protected: virtual FBox2D LayoutOneTree(UComboActionGraphNode* RootNode, const FBox2D &PreTreeBound); protected: bool bRandomInit; float InitTemperature; float CoolDownRate; };