180 for (
int32 VertexIndex = 0; VertexIndex < 3; ++VertexIndex)
206 for (
int32 I=0; I<3; ++I)
208 for (
int32 J=0; J<3; ++J)
222 for (
int32 I=0; I<3; ++I)
224 for (
int32 J=0; J<3; ++J)
242 return Other->Vertices[0];
247 return Other->Vertices[1];
252 return Other->Vertices[2];
268 check (Result != 0.f);
373 return (IsCollinear(
A,
B,
C)==
false);
461 , NumGridPointsForAxis(5, 5)
#define NULL
Definition oodle2base.h:134
#define check(expr)
Definition AssertionMacros.h:314
EPreferredTriangulationDirection
Definition BlendSpace.h:53
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
Definition BlendSpaceHelpers.h:433
void SetGridInfo(const FBlendParameter &BlendParamX, const FBlendParameter &BlendParamY)
Definition BlendSpaceHelpers.h:470
bool FindTriangleThisPointBelongsTo(const FVector2D &TestPoint, FVector &OutBarycentricCoords, FTriangle *&OutTriangle, const TArray< FTriangle * > &TriangleList) const
Definition BlendSpaceHelpers.cpp:593
const FEditorElement & GetElement(const int32 GridX, const int32 GridY) const
Definition BlendSpaceHelpers.cpp:757
const FVector2D GetPosFromIndex(const int32 GridX, const int32 GridY) const
Definition BlendSpaceHelpers.cpp:743
void GenerateGridElements(const TArray< FVertex > &SamplePoints, const TArray< FTriangle * > &TriangleList)
Definition BlendSpaceHelpers.cpp:657
FBlendSpaceGrid()
Definition BlendSpaceHelpers.h:458
void Reset()
Definition BlendSpaceHelpers.h:465
const TArray< FEditorElement > & GetElements() const
Definition BlendSpaceHelpers.h:486
Definition BlendSpaceHelpers.h:286
const TArray< FVertex > & GetSamplePointList() const
Definition BlendSpaceHelpers.h:336
ECircumCircleState
Definition BlendSpaceHelpers.h:289
@ ECCS_Inside
Definition BlendSpaceHelpers.h:292
@ ECCS_Outside
Definition BlendSpaceHelpers.h:290
@ ECCS_On
Definition BlendSpaceHelpers.h:291
void EmptySamplePoints()
Definition BlendSpaceHelpers.cpp:40
void Triangulate(EPreferredTriangulationDirection PreferredTriangulationDirection)
Definition BlendSpaceHelpers.cpp:57
const TArray< FTriangle * > & GetTriangleList() const
Definition BlendSpaceHelpers.h:331
void Step(int32 StartIndex)
void SetGridBox(const FBlendParameter &BlendParamX, const FBlendParameter &BlendParamY)
Definition BlendSpaceHelpers.cpp:18
void Reset()
Definition BlendSpaceHelpers.cpp:45
~FDelaunayTriangleGenerator()
Definition BlendSpaceHelpers.h:323
void AddSamplePoint(const FVector2D &NewPoint, const int32 SampleIndex)
Definition BlendSpaceHelpers.cpp:51
TArray< struct FBlendSpaceTriangle > CalculateTriangles() const
Definition BlendSpaceHelpers.cpp:311
void EmptyTriangles()
Definition BlendSpaceHelpers.cpp:31
SizeType Remove(const ElementType &Item)
Definition Array.h:3091
UE_FORCEINLINE_HINT SizeType AddUnique(ElementType &&Item)
Definition Array.h:2993
void Empty(SizeType Slack=0)
Definition Array.h:2273
Definition BlendSpace.h:114
Definition BlendSpace.h:377
Definition BlendSpaceHelpers.h:61
bool DoesShare(const FHalfEdge &A) const
Definition BlendSpaceHelpers.h:72
FHalfEdge()
Definition BlendSpaceHelpers.h:65
FHalfEdge(FVertex *A, FVertex *B)
Definition BlendSpaceHelpers.h:66
FVertex * Vertices[2]
Definition BlendSpaceHelpers.h:63
bool operator==(const FHalfEdge &Other) const
Definition BlendSpaceHelpers.h:77
static UE_FORCEINLINE_HINT int32 Memcmp(const void *Buf1, const void *Buf2, SIZE_T Count)
Definition UnrealMemory.h:114
static UE_FORCEINLINE_HINT void * Memcpy(void *Dest, const void *Src, SIZE_T Count)
Definition UnrealMemory.h:160
Definition BlendSpaceHelpers.h:88
void UpdateCenter()
Definition BlendSpaceHelpers.h:96
FHalfEdge Edges[3]
Definition BlendSpaceHelpers.h:94
FTriangle(FTriangle &Copy)
Definition BlendSpaceHelpers.h:107
FVertex * FindNonSharingPoint(const FTriangle *Other) const
Definition BlendSpaceHelpers.h:238
FVector2D Center
Definition BlendSpaceHelpers.h:92
FTriangle(FVertex *A)
Definition BlendSpaceHelpers.h:137
bool Contains(const FVertex &Other) const
Definition BlendSpaceHelpers.h:189
bool HasSameHalfEdge(const FTriangle *Other) const
Definition BlendSpaceHelpers.h:204
FTriangle()
Definition BlendSpaceHelpers.h:171
bool DoesShareSameEdge(const FTriangle *Other) const
Definition BlendSpaceHelpers.h:220
double GetDistance(const FVector2D &Other) const
Definition BlendSpaceHelpers.h:199
FVertex * Vertices[3]
Definition BlendSpaceHelpers.h:90
FTriangle(FVertex *A, FVertex *B, FVertex *C)
Definition BlendSpaceHelpers.h:118
~FTriangle()
Definition BlendSpaceHelpers.h:178
double GetDistance(const FVertex &Other) const
Definition BlendSpaceHelpers.h:194
FTriangle(FVertex *A, FVertex *B)
Definition BlendSpaceHelpers.h:154
bool operator==(const FTriangle &Other) const
Definition BlendSpaceHelpers.h:101
Definition BlendSpaceHelpers.h:20
TArray< FTriangle * > Triangles
Definition BlendSpaceHelpers.h:25
void AddTriangle(FTriangle *NewTriangle)
Definition BlendSpaceHelpers.h:44
int32 SampleIndex
Definition BlendSpaceHelpers.h:28
double GetDistance(const FVertex &Other)
Definition BlendSpaceHelpers.h:54
bool operator==(const FVector2D &Other) const
Definition BlendSpaceHelpers.h:32
FVertex(FVector2D InPosition, int32 InSampleIndex)
Definition BlendSpaceHelpers.h:30
void RemoveTriangle(FTriangle *TriangleToRemove)
Definition BlendSpaceHelpers.h:49
FVector2D Position
Definition BlendSpaceHelpers.h:22
bool operator==(const FVertex &Other) const
Definition BlendSpaceHelpers.h:38
IntType Y
Definition IntPoint.h:37
IntType X
Definition IntPoint.h:34
T Y
Definition Vector2D.h:52
T X
Definition Vector2D.h:49