Module 

Header 
/Engine/Source/Runtime/Core/Public/Math/TransformCalculus2D.h 
Include 
#include "Math/TransformCalculus2D.h" 
class FQuat2D
Represents a 2D rotation as a complex number (analagous to quaternions). Rot(theta) == cos(theta) + i * sin(theta) General transformation follows complex number algebra from there. Does not use "spinor" notation using theta/2 as we don't need that decomposition for our purposes. This makes the implementation for straightforward and efficient for 2D.
Name  Description  


Concatenate ( 
Transform 2 rotations defined by complex numbers: In imaginary land: (A + Bi) * (C + Di) == (AC  BD) + (AD + BC)i 


const FVecto... 
GetVector() 
Access to the underlying FVector2D that stores the complex number. 

Inverse() 
Invert the rotation defined by complex numbers: In imaginary land, an inverse is a complex conjugate, which is equivalent to reflecting about the X axis: Conj(A + Bi) == A  Bi 


TransformPoint ( 
Transform a 2D point by the 2D complex number representing the rotation: In imaginary land: (x + yi) * (u + vi) == (xu  yv) + (xv + yu)i 


TransformVector ( 
Vector rotation is equivalent to rotating a point. 
Name  Description  


operator!= ( 
Inequality. 


operator== ( 
Equality. 