![]() |
UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
|
#include <TransformTypes.h>
Static Public Member Functions | |
| static TTransformSRT3< RealType > | Identity () |
| static TVector< RealType > | GetSafeScaleReciprocal (const TVector< RealType > &InScale, RealType Tolerance=TMathUtil< RealType >::ZeroTolerance) |
Protected Attributes | |
| TQuaternion< RealType > | Rotation |
| TVector< RealType > | Translation |
| TVector< RealType > | Scale3D |
TTransformSRT3 is a variant of the standard UE FTransform/TTransform that uses the UE::Geometry::TQuaternion instead of the UE::Math::TQuat.
Transform order is Scale, then Rotate, then Translate. So mathematically (T * R * S) * v , assuming traditional matrix-vector multiplication order (note that the UE::Math library uses the opposite vector*Matrix ordering for TMatrix!)
Implicit constructors/casts are defined to/from FTransform3d and FTransform3f. This will likely be revised in future so that conversions that lose precision are explicit.
|
inline |
|
inline |
|
inlineexplicit |
|
inlineexplicit |
|
inline |
|
inline |
|
inline |
Reports wheth the inverse is representable with a single TTransformSRT3. (Ignores zeros in scale.)
|
inline |
Clamp all scale components to a minimum value. Sign of scale components is preserved. This is used to remove uninvertible zero/near-zero scaling.
|
inline |
|
inline |
|
inline |
|
inlinestatic |
|
inline |
|
inline |
|
inline |
|
inline |
|
inlinestatic |
|
inline |
Surface Normals are special, their inverse transform is InverseRotate( Normalize(Scale * Normal) ) )
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
Attempts to return an inverse, but will give an incorrect result if the transform has both non-uniform scaling and rotation, because TTransformSRT3<RealType> cannot represent the true inverse in that case.
|
inline |
|
inline |
|
inline |
Set Rotation portion of Transform
|
inline |
set Scale portion of transform
|
inline |
set Translation portion of transform
|
inline |
Surface Normals are special, their transform is Rotate( Normalize( (1/Scale) * Normal) ) ). However 1/Scale requires special handling in case any component is near-zero.
|
inline |
|
inline |
|
inline |
|
inline |
|
protected |
|
protected |
|
protected |