UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
Chaos::TTriangle< T > Class Template Reference

#include <Triangle.h>

Classes

struct  FLineIntersectionToleranceProvider
 

Public Member Functions

 TTriangle ()
 
 TTriangle (const TVec3< T > &InA, const TVec3< T > &InB, const TVec3< T > &InC)
 
FORCEINLINE TVec3< T > & operator[] (uint32 InIndex)
 
FORCEINLINE const TVec3< T > & operator[] (uint32 InIndex) const
 
FORCEINLINE const TVec3< T > & GetVertex (const int32 InIndex) const
 
FORCEINLINE TVec3< T > GetNormal () const
 
FORCEINLINE TPlane< T, 3 > GetPlane () const
 
FORCEINLINE TPlaneConcrete< T, 3 > GetPlane (int32 FaceIndex) const
 
FORCEINLINE void GetPlaneNX (const int32 FaceIndex, TVec3< T > &OutN, TVec3< T > &OutX) const
 
FORCEINLINE TVec3< T > GetCentroid () const
 
TVec3< T > GetClosestEdge (int32 PlaneIndexHint, const TVec3< T > &Position, TVec3< T > &OutEdgePos0, TVec3< T > &OutEdgePos1) const
 
TVec3< T > GetClosestEdgePosition (int32 PlaneIndexHint, const TVec3< T > &Position) const
 
int32 NumPlaneVertices (int32 PlaneIndex) const
 
FTriangleReverseWinding ()
 
FORCEINLINEGetWindingOrder () const
 
FORCEINLINE int32 FindVertexPlanes (int32 VertexIndex, int32 *OutVertexPlanes, int32 MaxVertexPlanes) const
 
int32 GetVertexPlanes3 (int32 VertexIndex, int32 &PlaneIndex0, int32 &PlaneIndex1, int32 &PlaneIndex2) const
 
int32 GetMostOpposingPlane (const TVec3< T > &Normal) const
 
int32 GetPlaneVertex (int32 PlaneIndex, int32 PlaneVertexIndex) const
 
int32 NumPlanes () const
 
FORCEINLINEPhiWithNormal (const TVec3< T > &InSamplePoint, TVec3< T > &OutNormal) const
 
FORCEINLINE TVec3< T > Support (const TVec3< T > &Direction, const T Thickness, int32 &VertexIndex) const
 
FORCEINLINE_DEBUGGABLE TVec3< T > SupportCore (const TVec3< T > &Direction, const T InMargin, T *OutSupportDelta, int32 &VertexIndex) const
 
FORCEINLINE TVec3< T > SupportCoreScaled (const TVec3< T > &Direction, T InMargin, const TVec3< T > &Scale, T *OutSupportDelta, int32 &VertexIndex) const
 
FORCEINLINEGetMargin () const
 
FORCEINLINEGetRadius () const
 
FORCEINLINE FRealSingle GetMarginf () const
 
FORCEINLINE FRealSingle GetRadiusf () const
 
FORCEINLINE bool Raycast (const TVec3< T > &StartPoint, const TVec3< T > &Dir, const T Length, const T Thickness, T &OutTime, TVec3< T > &OutPosition, TVec3< T > &OutNormal, int32 &OutFaceIndex) const
 
FORCEINLINE bool Overlap (const TVec3< T > &Point, const T Thickness) const
 
FORCEINLINE bool IsConvex () const
 
FString ToString () const
 
FORCEINLINE bool LineIntersection (const TVec3< T > &StartPoint, const TVec3< T > &EndPoint, TVector< T, 2 > &OutBary, T &OutTime) const
 

Friends

FChaosArchiveoperator<< (FChaosArchive &Ar, TTriangle &Value)
 

Constructor & Destructor Documentation

◆ TTriangle() [1/2]

template<typename T >
Chaos::TTriangle< T >::TTriangle ( )
inline

◆ TTriangle() [2/2]

template<typename T >
Chaos::TTriangle< T >::TTriangle ( const TVec3< T > &  InA,
const TVec3< T > &  InB,
const TVec3< T > &  InC 
)
inline

Member Function Documentation

◆ FindVertexPlanes()

template<typename T >
FORCEINLINE int32 Chaos::TTriangle< T >::FindVertexPlanes ( int32  VertexIndex,
int32 OutVertexPlanes,
int32  MaxVertexPlanes 
) const
inline

◆ GetCentroid()

template<typename T >
FORCEINLINE TVec3< T > Chaos::TTriangle< T >::GetCentroid ( ) const
inline

◆ GetClosestEdge()

template<typename T >
TVec3< T > Chaos::TTriangle< T >::GetClosestEdge ( int32  PlaneIndexHint,
const TVec3< T > &  Position,
TVec3< T > &  OutEdgePos0,
TVec3< T > &  OutEdgePos1 
) const
inline

◆ GetClosestEdgePosition()

template<typename T >
TVec3< T > Chaos::TTriangle< T >::GetClosestEdgePosition ( int32  PlaneIndexHint,
const TVec3< T > &  Position 
) const
inline

◆ GetMargin()

template<typename T >
FORCEINLINE T Chaos::TTriangle< T >::GetMargin ( ) const
inline

◆ GetMarginf()

template<typename T >
FORCEINLINE FRealSingle Chaos::TTriangle< T >::GetMarginf ( ) const
inline

◆ GetMostOpposingPlane()

template<typename T >
int32 Chaos::TTriangle< T >::GetMostOpposingPlane ( const TVec3< T > &  Normal) const
inline

◆ GetNormal()

template<typename T >
FORCEINLINE TVec3< T > Chaos::TTriangle< T >::GetNormal ( ) const
inline

◆ GetPlane() [1/2]

template<typename T >
FORCEINLINE TPlane< T, 3 > Chaos::TTriangle< T >::GetPlane ( ) const
inline

◆ GetPlane() [2/2]

template<typename T >
FORCEINLINE TPlaneConcrete< T, 3 > Chaos::TTriangle< T >::GetPlane ( int32  FaceIndex) const
inline

◆ GetPlaneNX()

template<typename T >
FORCEINLINE void Chaos::TTriangle< T >::GetPlaneNX ( const int32  FaceIndex,
TVec3< T > &  OutN,
TVec3< T > &  OutX 
) const
inline

◆ GetPlaneVertex()

template<typename T >
int32 Chaos::TTriangle< T >::GetPlaneVertex ( int32  PlaneIndex,
int32  PlaneVertexIndex 
) const
inline

◆ GetRadius()

template<typename T >
FORCEINLINE T Chaos::TTriangle< T >::GetRadius ( ) const
inline

◆ GetRadiusf()

template<typename T >
FORCEINLINE FRealSingle Chaos::TTriangle< T >::GetRadiusf ( ) const
inline

◆ GetVertex()

template<typename T >
FORCEINLINE const TVec3< T > & Chaos::TTriangle< T >::GetVertex ( const int32  InIndex) const
inline

◆ GetVertexPlanes3()

template<typename T >
int32 Chaos::TTriangle< T >::GetVertexPlanes3 ( int32  VertexIndex,
int32 PlaneIndex0,
int32 PlaneIndex1,
int32 PlaneIndex2 
) const
inline

◆ GetWindingOrder()

template<typename T >
FORCEINLINE T Chaos::TTriangle< T >::GetWindingOrder ( ) const
inline

◆ IsConvex()

template<typename T >
FORCEINLINE bool Chaos::TTriangle< T >::IsConvex ( ) const
inline

◆ LineIntersection()

template<typename T >
FORCEINLINE bool Chaos::TTriangle< T >::LineIntersection ( const TVec3< T > &  StartPoint,
const TVec3< T > &  EndPoint,
TVector< T, 2 > &  OutBary,
T &  OutTime 
) const

◆ NumPlanes()

template<typename T >
int32 Chaos::TTriangle< T >::NumPlanes ( ) const
inline

◆ NumPlaneVertices()

template<typename T >
int32 Chaos::TTriangle< T >::NumPlaneVertices ( int32  PlaneIndex) const
inline

◆ operator[]() [1/2]

template<typename T >
FORCEINLINE TVec3< T > & Chaos::TTriangle< T >::operator[] ( uint32  InIndex)
inline

◆ operator[]() [2/2]

template<typename T >
FORCEINLINE const TVec3< T > & Chaos::TTriangle< T >::operator[] ( uint32  InIndex) const
inline

◆ Overlap()

template<typename T >
FORCEINLINE bool Chaos::TTriangle< T >::Overlap ( const TVec3< T > &  Point,
const T  Thickness 
) const
inline

◆ PhiWithNormal()

template<typename T >
FORCEINLINE T Chaos::TTriangle< T >::PhiWithNormal ( const TVec3< T > &  InSamplePoint,
TVec3< T > &  OutNormal 
) const
inline

◆ Raycast()

template<typename T >
FORCEINLINE bool Chaos::TTriangle< T >::Raycast ( const TVec3< T > &  StartPoint,
const TVec3< T > &  Dir,
const T  Length,
const T  Thickness,
T &  OutTime,
TVec3< T > &  OutPosition,
TVec3< T > &  OutNormal,
int32 OutFaceIndex 
) const
inline

◆ ReverseWinding()

template<typename T >
FTriangle & Chaos::TTriangle< T >::ReverseWinding ( )
inline

◆ Support()

template<typename T >
FORCEINLINE TVec3< T > Chaos::TTriangle< T >::Support ( const TVec3< T > &  Direction,
const T  Thickness,
int32 VertexIndex 
) const
inline

◆ SupportCore()

template<typename T >
FORCEINLINE_DEBUGGABLE TVec3< T > Chaos::TTriangle< T >::SupportCore ( const TVec3< T > &  Direction,
const T  InMargin,
T *  OutSupportDelta,
int32 VertexIndex 
) const
inline

◆ SupportCoreScaled()

template<typename T >
FORCEINLINE TVec3< T > Chaos::TTriangle< T >::SupportCoreScaled ( const TVec3< T > &  Direction,
InMargin,
const TVec3< T > &  Scale,
T *  OutSupportDelta,
int32 VertexIndex 
) const
inline

◆ ToString()

template<typename T >
FString Chaos::TTriangle< T >::ToString ( ) const
inline

Friends And Related Symbol Documentation

◆ operator<<

template<typename T >
FChaosArchive & operator<< ( FChaosArchive Ar,
TTriangle< T > &  Value 
)
friend

The documentation for this class was generated from the following files: