24namespace IntersectionToolBase
47 ,
Boundary(StartPoint, EndPoint, Tolerance)
176namespace IntersectionSegmentTool
187 : IntersectionToolBase::
FSegment(Tolerance, StartPoint, EndPoint)
192 virtual bool IsValid()
const override;
206template<
typename SegmentType>
261 Algo::Sort(
Segments, [](
const SegmentType& Segment1,
const SegmentType& Segment2) {
return Segment1.AxisMin < Segment2.AxisMin; });
265 template<
typename ExtremityType1,
typename ExtremityType2>
268 using namespace IntersectionSegmentTool;
312 template<
typename ExtremityType1,
typename ExtremityType2>
374#ifdef CADKERNEL_DEBUG
@ INDEX_NONE
Definition CoreMiscDefines.h:150
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define ensureCADKernel(InExpression)
Definition Types.h:115
DIRECTLINK_API Display
Definition DirectLinkLog.h:8
#define DOUBLE_KINDA_SMALL_NUMBER
Definition UnrealMathUtility.h:73
UE_REWRITE SizeType Num() const
Definition Array.h:1144
void RemoveAt(SizeType Index, EAllowShrinking AllowShrinking=UE::Core::Private::AllowShrinkingByDefault< AllocatorType >())
Definition Array.h:2083
void Reset(SizeType NewSize=0)
Definition Array.h:2246
UE_FORCEINLINE_HINT SizeType Emplace(ArgsType &&... Args)
Definition Array.h:2561
void SetNum(SizeType NewNum, EAllowShrinking AllowShrinking=UE::Core::Private::AllowShrinkingByDefault< AllocatorType >())
Definition Array.h:2308
SizeType IndexOfByPredicate(Predicate Pred) const
Definition Array.h:1423
UE_FORCEINLINE_HINT void EmplaceAt(SizeType Index, ArgsType &&... Args)
Definition Array.h:2665
UE_FORCEINLINE_HINT void Reserve(SizeType Number)
Definition Array.h:3016
Definition IsoSegment.h:52
Definition Boundary.h:248
UE_REWRITE void Sort(RangeType &&Range)
Definition Sort.h:16
Definition CADEntity.cpp:23
bool DoIntersect(const FSegment2D &SegmentAB, const FSegment2D &SegmentCD, TFunction< bool(double, double, double, double)> DoCoincidentSegmentsIntersect, const double Min, const double Max)
Definition Geometry.cpp:167
void DisplaySegment(const FVector &Point1, const FVector &Point2, FIdent Ident, EVisuProperty Property)
Definition Display.cpp:1268
void Open3DDebugSession(bool bIsDisplayed, FString name, const TArray< FIdent > &idList=TArray< FIdent >())
Definition Display.h:56
void Close3DDebugSession(bool bIsDisplayed=true)
Definition Display.h:58
EConnectionType
Definition IntersectionSegmentTool.h:17
@ IsoV
Definition GeoEnum.h:68
@ IsoU
Definition GeoEnum.h:67
bool AreParallel(const FSegment2D &SegmentAB, const FSegment2D &SegmentCD)
Definition Geometry.h:528
EVisuProperty
Definition Visu.h:15
@ BlueCurve
Definition Visu.h:31
@ false
Definition radaudio_common.h:23
U16 Index
Definition radfft.cpp:71
static UE_FORCEINLINE_HINT bool IsNearlyZero(float Value, float ErrorTolerance=UE_SMALL_NUMBER)
Definition UnrealMathUtility.h:407
Definition Geometry.h:250
PointType GetVector() const
Definition Geometry.h:280