|
| | TImplicitObjectTransformed (TUniquePtr< Chaos::FImplicitObject > &&ObjectOwner, const TRigidTransform< T, d > &InTransform) |
| |
| | TImplicitObjectTransformed (Chaos::FImplicitObjectPtr &&Object, const TRigidTransform< T, d > &InTransform) |
| |
| | TImplicitObjectTransformed (const Chaos::FImplicitObjectPtr &Object, const TRigidTransform< T, d > &InTransform) |
| |
| | TImplicitObjectTransformed (const TImplicitObjectTransformed< T, d, bSerializable > &Other)=delete |
| |
| | TImplicitObjectTransformed (TImplicitObjectTransformed< T, d, bSerializable > &&Other) |
| |
| virtual EImplicitObjectType | GetNestedType () const override |
| |
| virtual Chaos::FImplicitObjectPtr | CopyGeometry () const |
| |
| virtual Chaos::FImplicitObjectPtr | CopyGeometryWithScale (const FVec3 &Scale) const override |
| |
| virtual Chaos::FImplicitObjectPtr | DeepCopyGeometry () const |
| |
| virtual Chaos::FImplicitObjectPtr | DeepCopyGeometryWithScale (const FVec3 &Scale) const override |
| |
| | ~TImplicitObjectTransformed () |
| |
| const FImplicitObject * | GetTransformedObject () const |
| |
| virtual FReal | GetMargin () const override |
| |
| virtual FReal | GetRadius () const override |
| |
| bool | GetDoCollide () const |
| |
| virtual T | PhiWithNormal (const TVector< T, d > &x, TVector< T, d > &Normal) const override |
| |
| virtual bool | Raycast (const TVector< T, d > &StartPoint, const TVector< T, d > &Dir, const T Length, const T Thickness, T &OutTime, TVector< T, d > &OutPosition, TVector< T, d > &OutNormal, int32 &OutFaceIndex) const override |
| |
| virtual int32 | FindMostOpposingFace (const TVector< T, 3 > &Position, const TVector< T, 3 > &UnitDir, int32 HintFaceIndex, T SearchDistance) const override |
| |
| virtual TVector< T, 3 > | FindGeometryOpposingNormal (const TVector< T, d > &DenormDir, int32 FaceIndex, const TVector< T, d > &OriginalNormal) const override |
| |
| virtual bool | Overlap (const TVector< T, d > &Point, const T Thickness) const override |
| |
| virtual Pair< TVector< T, d >, bool > | FindClosestIntersectionImp (const TVector< T, d > &StartPoint, const TVector< T, d > &EndPoint, const T Thickness) const override |
| |
| virtual int32 | FindClosestFaceAndVertices (const FVec3 &Position, TArray< FVec3 > &FaceVertices, FReal SearchDist=0.01f) const override |
| |
| const TRigidTransform< T, d > & | GetTransform () const |
| |
| void | SetTransform (const TRigidTransform< T, d > &InTransform) |
| |
| virtual void | AccumulateAllImplicitObjects (TArray< Pair< const FImplicitObject *, TRigidTransform< T, d > > > &Out, const TRigidTransform< T, d > &ParentTM) const override |
| |
| virtual void | FindAllIntersectingObjects (TArray< Pair< const FImplicitObject *, TRigidTransform< T, d > > > &Out, const TAABB< T, d > &LocalBounds) const override |
| |
| virtual const TAABB< T, d > | BoundingBox () const override |
| |
| virtual FAABB3 | CalculateTransformedBounds (const FRigidTransform3 &InTransform) const |
| |
| const FReal | GetVolume () const |
| |
| const FMatrix33 | GetInertiaTensor (const FReal Mass) const |
| |
| const FVec3 | GetCenterOfMass () const |
| |
| const ObjectType | Object () const |
| |
| virtual void | Serialize (FChaosArchive &Ar) override |
| |
| virtual uint32 | GetTypeHash () const override |
| |
| virtual uint16 | GetMaterialIndex (uint32 HintIndex) const override |
| |
| const Chaos::FImplicitObjectRef | GetGeometry () const |
| |
| void | SetGeometry (const Chaos::FImplicitObjectPtr &ImplicitObject) |
| |
| virtual FName | GetTypeName () const |
| |
| CHAOS_API | FImplicitObject (int32 Flags, EImplicitObjectType InType=ImplicitObjectType::Unknown) |
| |
| | FImplicitObject (const FImplicitObject &)=delete |
| |
| | FImplicitObject (FImplicitObject &&)=delete |
| |
| virtual CHAOS_API | ~FImplicitObject () override |
| |
| template<typename TargetType > |
| bool | IsA () const |
| |
| template<typename TargetType > |
| const TargetType * | AsA () const |
| |
| template<typename TargetType > |
| TargetType * | AsA () |
| |
| template<typename TargetType > |
| const TargetType * | AsAChecked () const |
| |
| template<typename TargetType > |
| TargetType * | AsAChecked () |
| |
| template<class T_DERIVED > |
| T_DERIVED * | GetObject () |
| |
| template<class T_DERIVED > |
| const T_DERIVED * | GetObject () const |
| |
| template<class T_DERIVED > |
| const T_DERIVED & | GetObjectChecked () const |
| |
| template<class T_DERIVED > |
| T_DERIVED & | GetObjectChecked () |
| |
| CHAOS_API EImplicitObjectType | GetType () const |
| |
| CHAOS_API EImplicitObjectType | GetCollisionType () const |
| |
| void | SetCollisionType (EImplicitObjectType InCollisionType) |
| |
| virtual FRealSingle | GetRadiusf () const |
| |
| virtual FRealSingle | GetMarginf () const |
| |
| virtual CHAOS_API bool | IsValidGeometry () const |
| |
| virtual FImplicitObject * | Duplicate () const |
| |
| virtual TUniquePtr< FImplicitObject > | Copy () const |
| |
| virtual TUniquePtr< FImplicitObject > | CopyWithScale (const FVec3 &Scale) const |
| |
| virtual TUniquePtr< FImplicitObject > | DeepCopy () const |
| |
| virtual TUniquePtr< FImplicitObject > | DeepCopyWithScale (const FVec3 &Scale) const |
| |
| CHAOS_API bool | IsUnderlyingUnion () const |
| |
| CHAOS_API bool | IsUnderlyingMesh () const |
| |
| CHAOS_API FReal | SignedDistance (const FVec3 &x) const |
| |
| CHAOS_API FVec3 | Normal (const FVec3 &x) const |
| |
| virtual FReal | PhiWithNormal (const FVec3 &x, FVec3 &Normal) const =0 |
| |
| virtual FReal | PhiWithNormalScaled (const FVec3 &Pos, const FVec3 &Scale, FVec3 &Normal) const |
| |
| bool | HasBoundingBox () const |
| |
| bool | IsConvex () const |
| |
| void | SetConvex (const bool Convex=true) |
| |
| void | SetDoCollide (const bool Collide) |
| |
| bool | GetDoCollide () const |
| |
| CHAOS_API void | Track (TSerializablePtr< FImplicitObject > This, const FString &DebugInfo) |
| |
| virtual bool | IsPerformanceWarning () const |
| |
| virtual FString | PerformanceWarningAndSimplifaction () |
| |
| CHAOS_API Pair< FVec3, bool > | FindDeepestIntersection (const FImplicitObject *Other, const FBVHParticles *Particles, const FMatrix33 &OtherToLocalTransform, const FReal Thickness) const |
| |
| CHAOS_API Pair< FVec3, bool > | FindDeepestIntersection (const FImplicitObject *Other, const FParticles *Particles, const FMatrix33 &OtherToLocalTransform, const FReal Thickness) const |
| |
| CHAOS_API Pair< FVec3, bool > | FindClosestIntersection (const FVec3 &StartPoint, const FVec3 &EndPoint, const FReal Thickness) const |
| |
| virtual bool | Raycast (const FVec3 &StartPoint, const FVec3 &Dir, const FReal Length, const FReal Thickness, FReal &OutTime, FVec3 &OutPosition, FVec3 &OutNormal, int32 &OutFaceIndex) const |
| |
| virtual int32 | FindMostOpposingFace (const FVec3 &Position, const FVec3 &UnitDir, int32 HintFaceIndex, FReal SearchDist) const |
| |
| virtual int32 | FindMostOpposingFaceScaled (const FVec3 &Position, const FVec3 &UnitDir, int32 HintFaceIndex, FReal SearchDist, const FVec3 &Scale) const |
| |
| virtual FVec3 | FindGeometryOpposingNormal (const FVec3 &DenormDir, int32 FaceIndex, const FVec3 &OriginalNormal) const |
| |
| virtual bool | Overlap (const FVec3 &Point, const FReal Thickness) const |
| |
| virtual void | AccumulateAllImplicitObjects (TArray< Pair< const FImplicitObject *, FRigidTransform3 > > &Out, const FRigidTransform3 &ParentTM) const |
| |
| virtual void | AccumulateAllSerializableImplicitObjects (TArray< Pair< TSerializablePtr< FImplicitObject >, FRigidTransform3 > > &Out, const FRigidTransform3 &ParentTM, TSerializablePtr< FImplicitObject > This) const |
| |
| virtual CHAOS_API void | FindAllIntersectingObjects (TArray< Pair< const FImplicitObject *, FRigidTransform3 > > &Out, const FAABB3 &LocalBounds) const |
| |
| virtual FString | ToString () const |
| |
| CHAOS_API void | SerializeImp (FArchive &Ar) |
| |
| virtual void | Serialize (FArchive &Ar) |
| |
| int32 | CountObjectsInHierarchy () const |
| |
| int32 | CountLeafObjectsInHierarchy () const |
| |
| void | VisitOverlappingLeafObjects (const FAABB3 &LocalBounds, const FImplicitHierarchyVisitor &Visitor) const |
| |
| void | VisitLeafObjects (const FImplicitHierarchyVisitor &Visitor) const |
| |
| void | VisitObjects (const FImplicitHierarchyVisitorBool &Visitor) const |
| |
| bool | IsOverlappingBounds (const FAABB3 &LocalBounds) const |
| |
| | FChaosRefCountedObject () |
| |
| virtual | ~FChaosRefCountedObject () |
| |
| | FChaosRefCountedObject (const FChaosRefCountedObject &Rhs)=delete |
| |
| FChaosRefCountedObject & | operator= (const FChaosRefCountedObject &Rhs)=delete |
| |
| uint32 | AddRef () const |
| |
| uint32 | Release () const |
| |
| uint32 | GetRefCount () const |
| |
| void | MakePersistent () const |
| |
template<class T, int d,
bool bSerializable = true>
class Chaos::TImplicitObjectTransformed< T, d, bSerializable >
Transform the contained shape. If you pass a TUniquePtr to the constructor, ownership is transferred to the TransformedImplicit. If you pass a SerializablePtr, the lifetime of the object must be handled externally (do not delete it before deleting the TransformedImplicit). @template bSerializable Whether the shape can be serialized (usually true). Set to false for transient/stack-allocated objects.