108 Capsule.Radius = FMath::Max(Extent.
X, Extent.
Y);
124 SetSphere(
static_cast<float>(Extent[0]));
188 return FMath::Max<float>(
Capsule.HalfHeight -
Capsule.Radius, FCollisionShape::FCollisionShape::MinCapsuleAxisHalfHeight());
262 return FString::Printf(
TEXT(
"Box=(X=%3.3f Y=%3.3f Z=%3.3f)"),
Box.HalfExtentX,
Box.HalfExtentY,
Box.HalfExtentZ);
266 return FString::Printf(
TEXT(
"Sphere=(Radius=%3.3f)"),
Sphere.Radius);
270 return FString::Printf(
TEXT(
"Capsule=(Radius=%3.3f HalfHeight=%3.3f)"),
Capsule.Radius,
Capsule.HalfHeight);
#define ensure( InExpression)
Definition AssertionMacros.h:464
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define FVector
Definition IOSSystemIncludes.h:8
UE::Math::TVector< float > FVector3f
Definition MathFwd.h:73
#define UE_KINDA_SMALL_NUMBER
Definition UnrealMathUtility.h:131
Definition CollisionShape.h:9
Type
Definition CollisionShape.h:11
@ Sphere
Definition CollisionShape.h:14
@ Box
Definition CollisionShape.h:13
@ Line
Definition CollisionShape.h:12
@ Capsule
Definition CollisionShape.h:15
Definition CollisionShape.h:21
FVector GetExtent() const
Definition CollisionShape.h:162
const float GetCapsuleHalfHeight() const
Definition CollisionShape.h:210
static constexpr float MinCapsuleRadius()
Definition CollisionShape.h:26
FCollisionShape()
Definition CollisionShape.h:51
float HalfHeight
Definition CollisionShape.h:47
void SetCapsule(const float Radius, const float HalfHeight)
Definition CollisionShape.h:97
struct FCollisionShape::@1660::@1663 Sphere
void SetShape(const ECollisionShape::Type InShapeType, const FVector &Extent)
Definition CollisionShape.h:113
static FCollisionShape MakeCapsule(const FVector &Extent)
Definition CollisionShape.h:316
float GetCapsuleAxisHalfLength() const
Definition CollisionShape.h:185
struct FCollisionShape::@1660::@1662 Box
bool IsSphere() const
Definition CollisionShape.h:69
FString ToString() const
Definition CollisionShape.h:256
static FCollisionShape MakeSphere(const float SphereRadius)
Definition CollisionShape.h:300
static constexpr float MinSphereRadius()
Definition CollisionShape.h:25
static FCollisionShape MakeBox(const FVector &BoxHalfExtent)
Definition CollisionShape.h:284
static constexpr float MinBoxExtent()
Definition CollisionShape.h:24
bool IsNearlyZero() const
Definition CollisionShape.h:139
ECollisionShape::Type ShapeType
Definition CollisionShape.h:22
float HalfExtentX
Definition CollisionShape.h:34
FCollisionShape Inflate(const float Inflation) const
Definition CollisionShape.h:215
struct FCollisionShape::@1660::@1664 Capsule
bool IsLine() const
Definition CollisionShape.h:57
float HalfExtentZ
Definition CollisionShape.h:36
FVector GetBox() const
Definition CollisionShape.h:192
float HalfExtentY
Definition CollisionShape.h:35
bool IsBox() const
Definition CollisionShape.h:63
void SetCapsule(const FVector3f &Extent)
Definition CollisionShape.h:105
static FCollisionShape MakeBox(const FVector3f &BoxHalfExtent)
Definition CollisionShape.h:292
void SetSphere(const float Radius)
Definition CollisionShape.h:90
const float GetCapsuleRadius() const
Definition CollisionShape.h:204
const float GetSphereRadius() const
Definition CollisionShape.h:198
void SetBox(const FVector3f &HalfExtent)
Definition CollisionShape.h:81
float Radius
Definition CollisionShape.h:41
bool IsCapsule() const
Definition CollisionShape.h:75
static constexpr float MinCapsuleAxisHalfHeight()
Definition CollisionShape.h:27
static FCollisionShape MakeCapsule(const float CapsuleRadius, const float CapsuleHalfHeight)
Definition CollisionShape.h:308
static struct FCollisionShape LineShape
Definition CollisionShape.h:281
T Z
Definition Vector.h:68
T Y
Definition Vector.h:65
static CORE_API const TVector< double > ZeroVector
Definition Vector.h:79
TVector< T > ComponentMax(const TVector< T > &Other) const
Definition Vector.h:1704
T X
Definition Vector.h:62