MCPcopy Create free account
hub / github.com/PCGEx/PCGExtendedToolkit / ConeBox

Function ConeBox

Source/PCGExtendedToolkit/Public/PCGExMath.h:341–355  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

339 }
340
341 FORCEINLINE static FBox ConeBox(const FVector& Center, const FVector& ConeDirection, const double Size)
342 {
343 const FVector Dir = ConeDirection.GetSafeNormal();
344 const FVector U = FVector::CrossProduct(Dir, Dir + FVector(0.1)).GetSafeNormal();
345 const FVector V = FVector::CrossProduct(Dir, Dir + FVector(-0.1)).GetSafeNormal();
346
347 FBox Box = FBox(Center - FVector(0.0001), Center + FVector(0.0001));
348 Box += Center + Dir * Size;
349 Box += Center + U * Size;
350 Box += Center + V * Size;
351
352 //UE_LOG(LogPCGEx, Warning, TEXT("Box Min X:%f, Y:%f, Z:%f | Max X:%f, Y:%f, Z:%f"), Box.Min.X, Box.Min.Y, Box.Min.Z, Box.Max.X, Box.Max.Y, Box.Max.Z);
353
354 return Box;
355 }
356
357 template <typename T>
358 FORCEINLINE static void GetMinMax(const TArray<T>& Values, T& OutMin, T& OutMax)

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected