5#include "Containers/Array.h"
7#include "Containers/Set.h"
36template<
typename RealType>
55template<
typename RealType>
75template<
typename RealType>
115 template<
typename VectorType>
133 template<
typename VectorType>
139 }, [](
int32 Idx) {return true;});
221 template<
typename VectorType>
241 template<
typename VectorType>
#define ensure( InExpression)
Definition AssertionMacros.h:464
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
void Init()
Definition LockFreeList.h:4
UE_INTRINSIC_CAST UE_REWRITE constexpr std::remove_reference_t< T > && MoveTemp(T &&Obj) noexcept
Definition UnrealTemplate.h:520
Definition ProgressCancel.h:187
Definition ArrayView.h:139
UE_FORCEINLINE_HINT constexpr SizeType Num() const
Definition ArrayView.h:380
Definition AssetRegistryState.h:50
Definition MathUtil.h:150
Definition ConvexHull3.h:77
TArray< FIndex3i > const & GetTriangles() const
Definition ConvexHull3.h:160
TArray< FIndex3i > HullNeighbors
Definition ConvexHull3.h:305
TLine3< RealType > const & GetLine() const
Definition ConvexHull3.h:272
FProgressCancel * Progress
Definition ConvexHull3.h:290
GEOMETRYCORE_API void GetFaces(TFunctionRef< void(TArray< int32 > &, TVector< RealType >)> PolygonFunc, TFunctionRef< TVector< RealType >(int32)> GetPointFunc) const
Definition ConvexHull3.cpp:870
GEOMETRYCORE_API bool Solve(int32 NumPoints, TFunctionRef< TVector< RealType >(int32)> GetPointFunc, TFunctionRef< bool(int32)> FilterFunc)
Definition ConvexHull3.cpp:788
int GetDimension() const
Definition ConvexHull3.h:267
bool IsSolutionAvailable() const
Definition ConvexHull3.h:143
TArray< FIndex3i > && MoveTriangles()
Definition ConvexHull3.h:208
GEOMETRYCORE_API void GetSimplifiedFaces(TFunctionRef< void(TArray< int32 > &, TVector< RealType >)> PolygonFunc, TFunctionRef< TVector< RealType >(int32)> GetPointFunc, RealType FaceAngleToleranceInDegrees=(RealType) 1.0, RealType PlaneDistanceTolerance=(RealType) 1.0) const
Definition ConvexHull3.cpp:977
TPlane3< RealType > Plane
Definition ConvexHull3.h:300
static void WalkBorder(const TArray< FIndex3i > &Triangles, const TArray< FIndex3i > &TriangleNeighbors, TFunctionRef< bool(int32)> InGroupFunc, int32 StartIdx, TArray< int32 > &OutBorderVertexIndices)
Definition ConvexHull3.cpp:1463
bool bSaveTriangleNeighbors
Definition ConvexHull3.h:82
void GetTriangles(TFunctionRef< void(FIndex3i)> TriangleFunc)
Definition ConvexHull3.h:151
bool Solve(TArrayView< const VectorType > Points, TFunctionRef< bool(int32)> FilterFunc)
Definition ConvexHull3.h:116
void Empty()
Definition ConvexHull3.h:257
TArray< FIndex3i > Hull
Definition ConvexHull3.h:303
int NumHullPoints
Definition ConvexHull3.h:302
static GEOMETRYCORE_API double ComputeVolume(const TArrayView< const TVector< RealType > > Vertices)
Definition ConvexHull3.cpp:762
TArray< FIndex3i > const & GetTriangleNeighbors() const
Definition ConvexHull3.h:201
TConvexHullSimplificationSettings< RealType > SimplificationSettings
Definition ConvexHull3.h:85
bool Solve(int32 NumPoints, TFunctionRef< TVector< RealType >(int32)> GetPointFunc)
Definition ConvexHull3.h:101
int32 Dimension
Definition ConvexHull3.h:298
TLine3< RealType > Line
Definition ConvexHull3.h:299
TArray< THalfspace3< RealType > > GetAsHalfspaces(TArrayView< const VectorType > Points) const
Definition ConvexHull3.h:222
int GetNumHullPoints() const
Definition ConvexHull3.h:283
TArray< THalfspace3< RealType > > GetAsHalfspaces(TFunctionRef< VectorType(int32)> GetPointFunc) const
Definition ConvexHull3.h:242
bool Solve(TArrayView< const VectorType > Points)
Definition ConvexHull3.h:134
TPlane3< RealType > const & GetPlane() const
Definition ConvexHull3.h:277
TConvexHull3< double > FConvexHull3d
Definition ConvexHull3.h:312
TConvexHull3< float > FConvexHull3f
Definition ConvexHull3.h:311
TExtremePoints3< double > FExtremePoints3d
Definition ConvexHull3.h:310
TExtremePoints3< float > FExtremePoints3f
Definition ConvexHull3.h:309
Definition AdvancedWidgetsModule.cpp:13
Definition IndexTypes.h:158
Definition ConvexHull3.h:57
int32 MaxHullVertices
If positive, hulls generated will only have at most this many points.
Definition ConvexHull3.h:63
RealType DegenerateEdgeTolerance
Definition ConvexHull3.h:60
RealType SkipAtHullDistanceAsFraction
Definition ConvexHull3.h:69
RealType SkipAtHullDistanceAbsolute
If positive, skip adding points that are closer than this threshold to the in-progress hull.
Definition ConvexHull3.h:66
Definition ConvexHull3.h:38
TVector< RealType > Origin
Definition ConvexHull3.h:43
int Dimension
Definition ConvexHull3.h:39
TVector< RealType > Basis[3]
Definition ConvexHull3.h:44
int Extreme[4]
Definition ConvexHull3.h:40
TExtremePoints3(int32 NumPoints, TFunctionRef< TVector< RealType >(int32)> GetPointFunc, TFunctionRef< bool(int32)> FilterFunc=[](int32 Idx) {return true;}, RealType Epsilon=TMathUtil< RealType >::Epsilon)
Definition ConvexHull3.h:46
Definition HalfspaceTypes.h:22
Definition LineTypes.h:148
Definition PlaneTypes.h:21