Ark Server API (ASA) - Wiki
Loading...
Searching...
No Matches
UE::Math Namespace Reference

Namespaces

namespace  anonymous_namespace{ScaleRotationTranslationMatrix.h}
 

Classes

struct  TBasisVectorMatrix
 
struct  TBox
 
struct  TBox2
 
struct  TBoxConstInit
 
struct  TBoxSphereBounds
 
struct  TCapsuleShape
 
struct  TClipProjectionMatrix
 
struct  TDualQuat
 
struct  TIntPoint
 
struct  TIntRect
 
struct  TIntVector2
 
struct  TIntVector3
 
struct  TIntVector4
 
struct  TInverseRotationMatrix
 
struct  TLookAtMatrix
 
struct  TLookFromMatrix
 
struct  TMatrix
 
struct  TMirrorMatrix
 
struct  TOrthoMatrix
 
struct  TPerspectiveMatrix
 
struct  TPlane
 
struct  TQuat
 
struct  TQuatRotationMatrix
 
struct  TQuatRotationTranslationMatrix
 
struct  TRay
 
struct  TReversedZOrthoMatrix
 
struct  TReversedZPerspectiveMatrix
 
struct  TRotationAboutPointMatrix
 
struct  TRotationMatrix
 
struct  TRotationTranslationMatrix
 
struct  TRotator
 
struct  TScaleMatrix
 
struct  TScaleRotationTranslationMatrix
 
struct  TSphere
 
struct  TTransform
 
struct  TTranslationMatrix
 
struct  TVector
 
struct  TVector2
 
struct  TVector4
 
struct  TVectorConstInit
 

Functions

void operator<< (FStructuredArchive::FSlot Slot, TVector< float > &V)
 
void operator<< (FStructuredArchive::FSlot Slot, TVector< double > &V)
 
template<typename T , typename T2 , TEMPLATE_REQUIRES(std::is_arithmetic< T2 >::value) >
FORCEINLINE TVector< Toperator* (T2 Scale, const TVector< T > &V)
 
template<typename T >
FORCEINLINE uint32 GetTypeHash (const TVector< T > &Vector)
 
FArchiveoperator<< (FArchive &Ar, TRotator< float > &R)
 
FArchiveoperator<< (FArchive &Ar, TRotator< double > &R)
 
template<typename T , typename FArg , TEMPLATE_REQUIRES(std::is_arithmetic< FArg >::value) >
FORCEINLINE TRotator< Toperator* (FArg Scale, const TRotator< T > &R)
 
template<typename IntType >
uint32 GetTypeHash (const TIntPoint< IntType > &InPoint)
 
template<typename T >
FORCEINLINE uint32 GetTypeHash (const TVector2< T > &Vector)
 
FArchiveoperator<< (FArchive &Ar, TVector2< float > &V)
 
void operator<< (FStructuredArchive::FSlot Slot, TVector2< float > &V)
 
FArchiveoperator<< (FArchive &Ar, TVector2< double > &V)
 
void operator<< (FStructuredArchive::FSlot Slot, TVector2< double > &V)
 
template<typename T , typename T2 , TEMPLATE_REQUIRES(std::is_arithmetic< T2 >::value) >
FORCEINLINE TVector2< Toperator* (T2 Scale, const TVector2< T > &V)
 
template<typename T >
uint32 GetTypeHash (const TIntVector2< T > &Vector)
 
template<typename T >
uint32 GetTypeHash (const TIntVector3< T > &Vector)
 
template<typename T >
uint32 GetTypeHash (const TIntVector4< T > &Vector)
 
template<typename T >
uint32 GetTypeHash (const TTransform< T > &Transform)
 
FArchiveoperator<< (FArchive &Ar, TQuat< float > &F)
 
FArchiveoperator<< (FArchive &Ar, TQuat< double > &F)
 
template<typename T >
FORCEINLINE TQuat< Toperator* (const float Scale, const TQuat< T > &Q)
 
template<typename T >
FORCEINLINE TQuat< Toperator* (const double Scale, const TQuat< T > &Q)
 
template<typename T >
FORCEINLINE uint32 GetTypeHash (const TQuat< T > &Quat)
 
FArchiveoperator<< (FArchive &Ar, TMatrix< float > &M)
 
FArchiveoperator<< (FArchive &Ar, TMatrix< double > &M)
 
FArchiveoperator<< (FArchive &Ar, TVector4< float > &V)
 
FArchiveoperator<< (FArchive &Ar, TVector4< double > &V)
 
template<typename T , typename T2 , TEMPLATE_REQUIRES(std::is_arithmetic< T2 >::value) >
FORCEINLINE TVector4< Toperator* (T2 Scale, const TVector4< T > &V)
 
FArchiveoperator<< (FArchive &Ar, TPlane< float > &P)
 
FArchiveoperator<< (FArchive &Ar, TPlane< double > &P)
 
template<typename T >
FORCEINLINE bool MakeFrustumPlane (T A, T B, T C, T D, TPlane< T > &OutPlane)
 
FArchiveoperator<< (FArchive &Ar, TBoxSphereBounds< float, float > &Bounds)
 
FArchiveoperator<< (FArchive &Ar, TBoxSphereBounds< double, double > &Bounds)
 
template<typename IntType >
uint32 GetTypeHash (const TIntRect< IntType > &InRect)
 
FArchiveoperator<< (FArchive &Ar, TSphere< float > &Sphere)
 
FArchiveoperator<< (FArchive &Ar, TSphere< double > &Sphere)
 
template<typename T >
UE::Math::TVector2< TConcatenate (const UE::Math::TVector2< T > &LHS, const UE::Math::TVector2< T > &RHS)
 
template<typename T >
UE::Math::TMatrix< TConcatenate (const UE::Math::TMatrix< T > &LHS, const UE::Math::TMatrix< T > &RHS)
 
template<typename T >
UE::Math::TVector< TConcatenate (const UE::Math::TVector< T > &LHS, const UE::Math::TVector< T > &RHS)
 
template<typename T >
UE::Math::TQuat< TConcatenate (const UE::Math::TQuat< T > &LHS, const UE::Math::TQuat< T > &RHS)
 

Function Documentation

◆ Concatenate() [1/4]

template<typename T >
UE::Math::TMatrix< T > UE::Math::Concatenate ( const UE::Math::TMatrix< T > & LHS,
const UE::Math::TMatrix< T > & RHS )
inline

Specialization for concatenating two Matrices.

Parameters
LHSrotation that goes from space A to space B
RHSrotation that goes from space B to space C.
Returns
a new rotation representing the transformation from the input space of LHS to the output space of RHS.

Definition at line 282 of file TransformCalculus3D.h.

◆ Concatenate() [2/4]

template<typename T >
UE::Math::TQuat< T > UE::Math::Concatenate ( const UE::Math::TQuat< T > & LHS,
const UE::Math::TQuat< T > & RHS )
inline

Specialization for concatenating two rotations.

NOTE: UE::Math::TQuat<T> concatenates right to left, opposite of how UE::Math::TMatrix<T> implements it. Confusing, no? That's why we have these high level functions!

Parameters
LHSrotation that goes from space A to space B
RHSrotation that goes from space B to space C.
Returns
a new rotation representing the transformation from the input space of LHS to the output space of RHS.

Definition at line 313 of file TransformCalculus3D.h.

◆ Concatenate() [3/4]

template<typename T >
UE::Math::TVector2< T > UE::Math::Concatenate ( const UE::Math::TVector2< T > & LHS,
const UE::Math::TVector2< T > & RHS )
inline

Specialization for concatenating two 2D Translations.

Definition at line 43 of file TransformCalculus2D.h.

◆ Concatenate() [4/4]

template<typename T >
UE::Math::TVector< T > UE::Math::Concatenate ( const UE::Math::TVector< T > & LHS,
const UE::Math::TVector< T > & RHS )
inline

Specialization for concatenating two translations.

Parameters
LHSTranslation that goes from space A to space B
RHSTranslation that goes from space B to space C.
Returns
a new Translation representing the transformation from the input space of LHS to the output space of RHS.

Definition at line 296 of file TransformCalculus3D.h.

◆ GetTypeHash() [1/9]

template<typename IntType >
uint32 UE::Math::GetTypeHash ( const TIntPoint< IntType > & InPoint)

Definition at line 500 of file IntPoint.h.

◆ GetTypeHash() [2/9]

template<typename IntType >
uint32 UE::Math::GetTypeHash ( const TIntRect< IntType > & InRect)

Definition at line 502 of file IntRect.h.

◆ GetTypeHash() [3/9]

template<typename T >
uint32 UE::Math::GetTypeHash ( const TIntVector2< T > & Vector)

Creates a hash value from an IntVector2.

Parameters
Vectorthe vector to create a hash value for
Returns
The hash value from the components

Definition at line 1060 of file IntVector.h.

◆ GetTypeHash() [4/9]

template<typename T >
uint32 UE::Math::GetTypeHash ( const TIntVector3< T > & Vector)

Creates a hash value from an IntVector3.

Parameters
Vectorthe vector to create a hash value for
Returns
The hash value from the components

Definition at line 1073 of file IntVector.h.

◆ GetTypeHash() [5/9]

template<typename T >
uint32 UE::Math::GetTypeHash ( const TIntVector4< T > & Vector)

Creates a hash value from an IntVector4.

Parameters
Vectorthe vector to create a hash value for
Returns
The hash value from the components

Definition at line 1086 of file IntVector.h.

◆ GetTypeHash() [6/9]

template<typename T >
FORCEINLINE uint32 UE::Math::GetTypeHash ( const TQuat< T > & Quat)

Creates a hash value from an FQuat.

Parameters
Quatthe quat to create a hash value for
Returns
The hash value from the components

Definition at line 1361 of file Quat.h.

◆ GetTypeHash() [7/9]

template<typename T >
uint32 UE::Math::GetTypeHash ( const TTransform< T > & Transform)
inline

Creates a hash value from an FTransform.

Parameters
Transformthe transform to create a hash value for
Returns
The hash value from the components

Definition at line 72 of file Transform.h.

◆ GetTypeHash() [8/9]

template<typename T >
FORCEINLINE uint32 UE::Math::GetTypeHash ( const TVector2< T > & Vector)

Creates a hash value from a TVector2<T>.

Parameters
Vectorthe vector to create a hash value for
Returns
The hash value from the components

Definition at line 716 of file Vector2D.h.

◆ GetTypeHash() [9/9]

template<typename T >
FORCEINLINE uint32 UE::Math::GetTypeHash ( const TVector< T > & Vector)

Creates a hash value from an FVector.

Parameters
Vectorthe vector to create a hash value for
Returns
The hash value from the components

Definition at line 2495 of file Vector.h.

◆ MakeFrustumPlane()

template<typename T >
FORCEINLINE bool UE::Math::MakeFrustumPlane ( T A,
T B,
T C,
T D,
TPlane< T > & OutPlane )

Definition at line 704 of file Matrix.inl.

◆ operator*() [1/6]

template<typename T >
FORCEINLINE TQuat< T > UE::Math::operator* ( const double Scale,
const TQuat< T > & Q )

Definition at line 1020 of file Quat.h.

◆ operator*() [2/6]

template<typename T >
FORCEINLINE TQuat< T > UE::Math::operator* ( const float Scale,
const TQuat< T > & Q )

Definition at line 1013 of file Quat.h.

◆ operator*() [3/6]

template<typename T , typename FArg , TEMPLATE_REQUIRES(std::is_arithmetic< FArg >::value) >
FORCEINLINE TRotator< T > UE::Math::operator* ( FArg Scale,
const TRotator< T > & R )

Scale a rotator and return.

Parameters
Scalescale to apply to R.
Rrotator to be scaled.
Returns
Scaled rotator.

Definition at line 524 of file Rotator.h.

◆ operator*() [4/6]

template<typename T , typename T2 , TEMPLATE_REQUIRES(std::is_arithmetic< T2 >::value) >
FORCEINLINE TVector2< T > UE::Math::operator* ( T2 Scale,
const TVector2< T > & V )

Multiplies a Vector2 by a scaling factor.

Parameters
ScaleScaling factor.
VVector2 to scale.
Returns
Result of multiplication.

Definition at line 805 of file Vector2D.h.

◆ operator*() [5/6]

template<typename T , typename T2 , TEMPLATE_REQUIRES(std::is_arithmetic< T2 >::value) >
FORCEINLINE TVector4< T > UE::Math::operator* ( T2 Scale,
const TVector4< T > & V )

Scales a vector.

Parameters
ScaleThe scaling factor.
VThe vector to scale.
Returns
The result of scaling.

Definition at line 999 of file Vector4.h.

◆ operator*() [6/6]

template<typename T , typename T2 , TEMPLATE_REQUIRES(std::is_arithmetic< T2 >::value) >
FORCEINLINE TVector< T > UE::Math::operator* ( T2 Scale,
const TVector< T > & V )

Multiplies a vector by a scaling factor.

Parameters
ScaleScaling factor.
VVector to scale.
Returns
Result of multiplication.

Definition at line 2483 of file Vector.h.

◆ operator<<() [1/20]

FArchive & UE::Math::operator<< ( FArchive & Ar,
TBoxSphereBounds< double, double > & Bounds )
inline

Serializes the given bounding volume from or into the specified archive.

Parameters
ArThe archive to serialize from or into.
BoundsThe bounding volume to serialize.
Returns
The archive..

Definition at line 333 of file BoxSphereBounds.h.

◆ operator<<() [2/20]

FArchive & UE::Math::operator<< ( FArchive & Ar,
TBoxSphereBounds< float, float > & Bounds )
inline

Serializes the given bounding volume from or into the specified archive.

Parameters
ArThe archive to serialize from or into.
BoundsThe bounding volume to serialize.
Returns
The archive..

Definition at line 320 of file BoxSphereBounds.h.

◆ operator<<() [3/20]

FArchive & UE::Math::operator<< ( FArchive & Ar,
TMatrix< double > & M )
inline

Serializes the Matrix.

Parameters
ArReference to the serialization archive.
MReference to the matrix being serialized.
Returns
Reference to the Archive after serialization.

Definition at line 483 of file Matrix.h.

+ Here is the call graph for this function:

◆ operator<<() [4/20]

FArchive & UE::Math::operator<< ( FArchive & Ar,
TMatrix< float > & M )
inline

Serializes the Matrix.

Parameters
ArReference to the serialization archive.
MReference to the matrix being serialized.
Returns
Reference to the Archive after serialization.

Definition at line 466 of file Matrix.h.

◆ operator<<() [5/20]

FArchive & UE::Math::operator<< ( FArchive & Ar,
TPlane< double > & P )
inline

Serializer.

Parameters
ArSerialization Archive.
PPlane to serialize.
Returns
Reference to Archive after serialization.

Definition at line 365 of file Plane.h.

◆ operator<<() [6/20]

FArchive & UE::Math::operator<< ( FArchive & Ar,
TPlane< float > & P )
inline

Serializer.

Parameters
ArSerialization Archive.
PPlane to serialize.
Returns
Reference to Archive after serialization.

Definition at line 351 of file Plane.h.

◆ operator<<() [7/20]

FArchive & UE::Math::operator<< ( FArchive & Ar,
TQuat< double > & F )
inline

Definition at line 707 of file Quat.h.

+ Here is the call graph for this function:

◆ operator<<() [8/20]

FArchive & UE::Math::operator<< ( FArchive & Ar,
TQuat< float > & F )
inline

Serializes the quaternion.

Parameters
ArReference to the serialization archive.
FReference to the quaternion being serialized.
Returns
Reference to the Archive after serialization.

Definition at line 702 of file Quat.h.

◆ operator<<() [9/20]

FArchive & UE::Math::operator<< ( FArchive & Ar,
TRotator< double > & R )
inline

Definition at line 496 of file Rotator.h.

◆ operator<<() [10/20]

FArchive & UE::Math::operator<< ( FArchive & Ar,
TRotator< float > & R )
inline

Serializer.

Parameters
ArSerialization Archive.
RRotator being serialized.
Returns
Reference to Archive after serialization.

Definition at line 490 of file Rotator.h.

◆ operator<<() [11/20]

FArchive & UE::Math::operator<< ( FArchive & Ar,
TSphere< double > & Sphere )
inline

Serializes the given sphere from or into the specified archive.

Parameters
ArThe archive to serialize from or into.
SphereThe sphere to serialize.
Returns
The archive.

Definition at line 257 of file Sphere.h.

◆ operator<<() [12/20]

FArchive & UE::Math::operator<< ( FArchive & Ar,
TSphere< float > & Sphere )
inline

Serializes the given sphere from or into the specified archive.

Parameters
ArThe archive to serialize from or into.
SphereThe sphere to serialize.
Returns
The archive.

Definition at line 243 of file Sphere.h.

◆ operator<<() [13/20]

FArchive & UE::Math::operator<< ( FArchive & Ar,
TVector2< double > & V )
inline

Definition at line 748 of file Vector2D.h.

◆ operator<<() [14/20]

FArchive & UE::Math::operator<< ( FArchive & Ar,
TVector2< float > & V )
inline

Serialize a vector.

Parameters
ArSerialization archive.
VVector being serialized.
Returns
Reference to Archive after serialization.

Definition at line 732 of file Vector2D.h.

◆ operator<<() [15/20]

FArchive & UE::Math::operator<< ( FArchive & Ar,
TVector4< double > & V )
inline

Definition at line 550 of file Vector4.h.

+ Here is the call graph for this function:

◆ operator<<() [16/20]

FArchive & UE::Math::operator<< ( FArchive & Ar,
TVector4< float > & V )
inline

Serializer.

Parameters
ArThe Serialization Archive.
VThe vector being serialized.
Returns
Reference to the Archive after serialization.

Definition at line 545 of file Vector4.h.

◆ operator<<() [17/20]

void UE::Math::operator<< ( FStructuredArchive::FSlot Slot,
TVector2< double > & V )
inline

Definition at line 767 of file Vector2D.h.

◆ operator<<() [18/20]

void UE::Math::operator<< ( FStructuredArchive::FSlot Slot,
TVector2< float > & V )
inline

Definition at line 739 of file Vector2D.h.

◆ operator<<() [19/20]

void UE::Math::operator<< ( FStructuredArchive::FSlot Slot,
TVector< double > & V )
inline

Structured archive slot serializer for FVector3d.

Parameters
SlotStructured archive slot.
VVector to serialize.

Definition at line 1212 of file Vector.h.

+ Here is the call graph for this function:

◆ operator<<() [20/20]

void UE::Math::operator<< ( FStructuredArchive::FSlot Slot,
TVector< float > & V )
inline

Structured archive slot serializer for FVector3f.

Parameters
SlotStructured archive slot.
VVector to serialize.

Definition at line 1194 of file Vector.h.

+ Here is the call graph for this function: