FTriangleMeshImplicitObject

Windows
MacOS
Linux

Inheritance Hierarchy

FImplicitObject

FTriangleMeshImplicitObject

References

Module

Chaos

Header

/Engine/Source/Runtime/Experimental/Chaos/Public/Chaos/TriangleMeshImplicitObject.h

Include

#include "Chaos/TriangleMeshImplicitObject.h"

Syntax

class FTriangleMeshImplicitObject : public Chaos::FImplicitObject

Constructors

Name Description

Public function

FTriangleMeshImplicitObject

(
    const FTriangleMeshImplicitObject&...
)

Public function

FTriangleMeshImplicitObject

(
    FTriangleMeshImplicitObject&& Othe...
)

Public function

FTriangleMeshImplicitObject

(
    FParticles&& Particles,
    TArray< TVec3< IdxType >>&& Elemen...,
    TArray< uint16 >&& InMaterialIndic...,
    TUniquePtr< TArray< int32 >>&& InE...,
    TUniquePtr< TArray< int32 >>&& InE...,
    const bool bInCullsBackFaceRaycast
)

Destructors

Functions

Name Description

Public function Const

TUniquePtr< ...

 

CopySlow()

Public function Const

const FTrime...

 

Elements()

Public function Const

bool

 

GetCullsBackFaceRaycast()

Does Trimesh cull backfaces in raycast.

Public function Const

int32

 

GetExternalFaceIndexFromInternal

(
    int32 InternalFaceIndex
)

Returns -1 if InternalFaceIndex is not in map, or map is invalid.

Public function Const

FVec3

 

GetFaceNormal

(
    const int32 FaceIdx
)

Public function Const

FReal

 

GetRadius()

Public function Const

bool

 

GJKContactPoint

(
    const TImplicitObjectScaled< FConve...,
    const FRigidTransform3& QueryTM,
    const FReal Thickness,
    FVec3& Location,
    FVec3& Normal,
    FReal& Penetration,
    FVec3 TriMeshScale
)

Public function Const

bool

 

GJKContactPoint

(
    const TImplicitObjectScaled< FCapsu...,
    const FRigidTransform3& QueryTM,
    const FReal Thickness,
    FVec3& Location,
    FVec3& Normal,
    FReal& Penetration,
    FVec3 TriMeshScale
)

Public function Const

bool

 

GJKContactPoint

(
    const TImplicitObjectScaled< TBox< ...,
    const FRigidTransform3& QueryTM,
    const FReal Thickness,
    FVec3& Location,
    FVec3& Normal,
    FReal& Penetration,
    FVec3 TriMeshScale
)

Public function Const

bool

 

GJKContactPoint

(
    const TImplicitObjectScaled< TSpher...,
    const FRigidTransform3& QueryTM,
    const FReal Thickness,
    FVec3& Location,
    FVec3& Normal,
    FReal& Penetration,
    FVec3 TriMeshScale
)

Public function Const

bool

 

GJKContactPoint

(
    const FCapsule& QueryGeom,
    const FRigidTransform3& QueryTM,
    const FReal Thickness,
    FVec3& Location,
    FVec3& Normal,
    FReal& Penetration
)

Public function Const

bool

 

GJKContactPoint

(
    const TBox< FReal, 3 >& QueryGeom,
    const FRigidTransform3& QueryTM,
    const FReal Thickness,
    FVec3& Location,
    FVec3& Normal,
    FReal& Penetration
)

Public function Const

bool

 

GJKContactPoint

(
    const TSphere< FReal, 3 >& QueryGe...,
    const FRigidTransform3& QueryTM,
    const FReal Thickness,
    FVec3& Location,
    FVec3& Normal,
    FReal& Penetration
)

Public function Const

bool

 

GJKContactPoint

(
    const FConvex& QueryGeom,
    const FRigidTransform3& QueryTM,
    const FReal Thickness,
    FVec3& Location,
    FVec3& Normal,
    FReal& Penetration
)

Public function Const

bool

 

OverlapGeom

(
    const TImplicitObjectScaled< FConve...,
    const FRigidTransform3& QueryTM,
    const FReal Thickness,
    FMTDInfo* OutMTD,
    FVec3 TriMeshScale
)

Public function Const

bool

 

OverlapGeom

(
    const TImplicitObjectScaled< FCapsu...,
    const FRigidTransform3& QueryTM,
    const FReal Thickness,
    FMTDInfo* OutMTD,
    FVec3 TriMeshScale
)

Public function Const

bool

 

OverlapGeom

(
    const TImplicitObjectScaled< TBox< ...,
    const FRigidTransform3& QueryTM,
    const FReal Thickness,
    FMTDInfo* OutMTD,
    FVec3 TriMeshScale
)

Public function Const

bool

 

OverlapGeom

(
    const TImplicitObjectScaled< TSpher...,
    const FRigidTransform3& QueryTM,
    const FReal Thickness,
    FMTDInfo* OutMTD,
    FVec3 TriMeshScale
)

Public function Const

bool

 

OverlapGeom

(
    const FConvex& QueryGeom,
    const FRigidTransform3& QueryTM,
    const FReal Thickness,
    FMTDInfo* OutMTD
)

Public function Const

bool

 

OverlapGeom

(
    const TBox< FReal, 3 >& QueryGeom,
    const FRigidTransform3& QueryTM,
    const FReal Thickness,
    FMTDInfo* OutMTD
)

Public function Const

bool

 

OverlapGeom

(
    const TSphere< FReal, 3 >& QueryGe...,
    const FRigidTransform3& QueryTM,
    const FReal Thickness,
    FMTDInfo* OutMTD
)

Public function Const

bool

 

OverlapGeom

(
    const FCapsule& QueryGeom,
    const FRigidTransform3& QueryTM,
    const FReal Thickness,
    FMTDInfo* OutMTD
)

Public function Const

const FParti...

 

Particles()

Public function Const

bool

 

RaycastImp

(
    const TArray< TVector< IdxType, 3 >...,
    const FVec3& StartPoint,
    const FVec3& Dir,
    const FReal Length,
    const FReal Thickness,
    FReal& OutTime,
    FVec3& OutPosition,
    FVec3& OutNormal,
    int32& OutFaceIndex
)

Public function

void

 

SerializeImp

(
    FChaosArchive& Ar
)

Public function

void

 

SetCullsBackFaceRaycast

(
    const bool bInCullsBackFace
)

Public function Static

constexpr EI...

 

StaticType()

Public function Const

bool

 

SweepGeom

(
    const FConvex& QueryGeom,
    const FRigidTransform3& StartTM,
    const FVec3& Dir,
    const FReal Length,
    FReal& OutTime,
    FVec3& OutPosition,
    FVec3& OutNormal,
    int32& OutFaceIndex,
    const FReal Thickness,
    const bool bComputeMTD
)

Public function Const

bool

 

SweepGeom

(
    const TImplicitObjectScaled< TSpher...,
    const FRigidTransform3& StartTM,
    const FVec3& Dir,
    const FReal Length,
    FReal& OutTime,
    FVec3& OutPosition,
    FVec3& OutNormal,
    int32& OutFaceIndex,
    const FReal Thickness,
    const bool bComputeMTD,
    FVec3 TriMeshScale
)

Public function Const

bool

 

SweepGeom

(
    const TImplicitObjectScaled< TBox< ...,
    const FRigidTransform3& StartTM,
    const FVec3& Dir,
    const FReal Length,
    FReal& OutTime,
    FVec3& OutPosition,
    FVec3& OutNormal,
    int32& OutFaceIndex,
    const FReal Thickness,
    const bool bComputeMTD,
    FVec3 TriMeshScale
)

Public function Const

bool

 

SweepGeom

(
    const FCapsule& QueryGeom,
    const FRigidTransform3& StartTM,
    const FVec3& Dir,
    const FReal Length,
    FReal& OutTime,
    FVec3& OutPosition,
    FVec3& OutNormal,
    int32& OutFaceIndex,
    const FReal Thickness,
    const bool bComputeMTD
)

Public function Const

bool

 

SweepGeom

(
    const TImplicitObjectScaled< FConve...,
    const FRigidTransform3& StartTM,
    const FVec3& Dir,
    const FReal Length,
    FReal& OutTime,
    FVec3& OutPosition,
    FVec3& OutNormal,
    int32& OutFaceIndex,
    const FReal Thickness,
    const bool bComputeMTD,
    FVec3 TriMeshScale
)

Public function Const

bool

 

SweepGeom

(
    const TSphere< FReal, 3 >& QueryGe...,
    const FRigidTransform3& StartTM,
    const FVec3& Dir,
    const FReal Length,
    FReal& OutTime,
    FVec3& OutPosition,
    FVec3& OutNormal,
    int32& OutFaceIndex,
    const FReal Thickness,
    const bool bComputeMTD
)

Public function Const

bool

 

SweepGeom

(
    const TImplicitObjectScaled< FCapsu...,
    const FRigidTransform3& StartTM,
    const FVec3& Dir,
    const FReal Length,
    FReal& OutTime,
    FVec3& OutPosition,
    FVec3& OutNormal,
    int32& OutFaceIndex,
    const FReal Thickness,
    const bool bComputeMTD,
    FVec3 TriMeshScale
)

Public function Const

bool

 

SweepGeom

(
    const TBox< FReal, 3 >& QueryGeom,
    const FRigidTransform3& StartTM,
    const FVec3& Dir,
    const FReal Length,
    FReal& OutTime,
    FVec3& OutPosition,
    FVec3& OutNormal,
    int32& OutFaceIndex,
    const FReal Thickness,
    const bool bComputeMTD
)

Public function

void

 

UpdateVertices

(
    const TArray< FVector >& Positions
)

Public function Const

void

 

VisitTriangles

(
    const FAABB3& InQueryBounds,
    const TFunction< void...
)

Overridden from FImplicitObject

Name Description

Public function Virtual Const

const FAABB3

 

BoundingBox()

Public function Virtual Const

FVec3

 

FindGeometryOpposingNormal

(
    const FVec3& DenormDir,
    int32 FaceIndex,
    const FVec3& OriginalNormal
)

Given a normal and a face index, compute the most opposing normal associated with the underlying geometry features.

Public function Virtual Const

int32

 

FindMostOpposingFace

(
    const FVec3& Position,
    const FVec3& UnitDir,
    int32 HintFaceIndex,
    FReal SearchDist
)

Returns the most opposing face.

Public function Virtual Const

uint16

 

GetMaterialIndex

(
    uint32 HintIndex
)

Public function Virtual Const

uint32

 

GetTypeHash()

Public function Virtual Const

bool

 

Overlap

(
    const FVec3& Point,
    const FReal Thickness
)

This gives derived types a way to do an overlap check without calling PhiWithNormal todo: this api is confusing.

Public function Virtual Const

FReal

 

PhiWithNormal

(
    const FVec3& x,
    FVec3& Normal
)

Find the closest point on the surface, and return the separating distance and axis.

Public function Virtual Const

bool

 

Raycast

(
    const FVec3& StartPoint,
    const FVec3& Dir,
    const FReal Length,
    const FReal Thickness,
    FReal& OutTime,
    FVec3& OutPosition,
    FVec3& OutNormal,
    int32& OutFaceIndex
)

This gives derived types a way to avoid calling PhiWithNormal todo: this api is confusing.

Public function Virtual

void

 

Serialize

(
    FChaosArchive& Ar
)

Public function Virtual Const

FString

 

ToString()

Typedefs

Name

Description

BVHType

Help shape the future of Unreal Engine documentation! Tell us how we're doing so we can serve you better.
Take our survey
Dismiss