UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
MergeCoincidentMeshEdges.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3// Port of geometry3Sharp MergeCoincidentEdges
4
5#pragma once
6
8#include "MathUtil.h"
9#include "VectorTypes.h"
11
12namespace UE
13{
14namespace Geometry
15{
16
17class FDynamicMesh3;
18
29{
30public:
32 static GEOMETRYCORE_API const double DEFAULT_TOLERANCE; // = FMathf::ZeroTolerance;
33
36
39
41 bool OnlyUniquePairs = false;
42
49
50
55
58
61
64
65public:
69
74 GEOMETRYCORE_API virtual bool Apply();
75
76
77protected:
78 double MergeVtxDistSqr; // cached value
79
80 // returns true if endpoint vertices are within tolerance. Note that we do not know the order of
81 // the vertices here so we try both combinations.
82 inline bool IsSameEdge(const FVector3d& a, const FVector3d& b, const FVector3d& c, const FVector3d& d) const
83 {
86 }
87};
88
89
90} // end namespace UE::Geometry
91} // end namespace UE
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
Definition DynamicMesh3.h:108
Definition MergeCoincidentMeshEdges.h:29
double MergeVtxDistSqr
Definition MergeCoincidentMeshEdges.h:78
TSet< int32 > * EdgesToMerge
Definition MergeCoincidentMeshEdges.h:63
bool bWeldAttrsOnMergedEdges
Definition MergeCoincidentMeshEdges.h:57
int32 InitialNumBoundaryEdges
Definition MergeCoincidentMeshEdges.h:52
double MergeVertexTolerance
Definition MergeCoincidentMeshEdges.h:38
virtual GEOMETRYCORE_API bool Apply()
Definition MergeCoincidentMeshEdges.cpp:17
bool OnlyUniquePairs
Definition MergeCoincidentMeshEdges.h:41
FMergeCoincidentMeshEdges(FDynamicMesh3 *mesh)
Definition MergeCoincidentMeshEdges.h:66
FSplitAttributeWelder SplitAttributeWelder
Definition MergeCoincidentMeshEdges.h:60
double MergeSearchTolerance
Definition MergeCoincidentMeshEdges.h:48
bool IsSameEdge(const FVector3d &a, const FVector3d &b, const FVector3d &c, const FVector3d &d) const
Definition MergeCoincidentMeshEdges.h:82
static GEOMETRYCORE_API const double DEFAULT_TOLERANCE
Definition MergeCoincidentMeshEdges.h:32
int32 FinalNumBoundaryEdges
Definition MergeCoincidentMeshEdges.h:54
FDynamicMesh3 * Mesh
Definition MergeCoincidentMeshEdges.h:35
Definition SplitAttributeWelder.h:24
T DistanceSquared(const UE::Math::TVector2< T > &V1, const UE::Math::TVector2< T > &V2)
Definition VectorTypes.h:82
Definition AdvancedWidgetsModule.cpp:13