Files
UnrealEngine/Engine/Plugins/Runtime/MeshModelingToolset/Source/ModelingComponents/Public/Selection/BoundarySelectionMechanic.h
2025-05-18 13:04:45 +08:00

34 lines
847 B
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "PolygonSelectionMechanic.h"
#include "BoundarySelectionMechanic.generated.h"
#define UE_API MODELINGCOMPONENTS_API
namespace UE::Geometry { class FMeshBoundaryLoops; }
class FBoundarySelector;
UCLASS(MinimalAPI)
class UBoundarySelectionMechanic : public UMeshTopologySelectionMechanic
{
GENERATED_BODY()
public:
UE_API void Initialize(
const FDynamicMesh3* MeshIn,
FTransform3d TargetTransformIn,
UWorld* WorldIn,
const UE::Geometry::FMeshBoundaryLoops* BoundaryLoopsIn,
TFunction<FDynamicMeshAABBTree3* ()> GetSpatialSourceFuncIn);
UE_API virtual bool UpdateHighlight(const FRay& WorldRay) override;
UE_API virtual bool UpdateSelection(const FRay& WorldRay, FVector3d& LocalHitPositionOut, FVector3d& LocalHitNormalOut) override;
};
#undef UE_API