30 template<
typename FArg UE_REQUIRES(!std::is_same_v<T, FArg>)>
62 template<
typename FArg UE_REQUIRES(!std::is_same_v<T, FArg>)>
79#if !(UE_BUILD_SHIPPING || UE_BUILD_TEST) && WITH_EDITORONLY_DATA
83 const T
x2 = Q.
X + Q.
X;
const T
y2 = Q.
Y + Q.
Y;
const T
z2 = Q.
Z + Q.
Z;
86 const T
wx = Q.
W *
x2;
const T wy = Q.
W *
y2;
const T wz = Q.
W *
z2;
88 M[0][0] = 1.0f - (
yy +
zz); M[1][0] =
xy - wz; M[2][0] =
xz + wy; M[3][0] = Origin.
X;
89 M[0][1] =
xy + wz; M[1][1] = 1.0f - (
xx +
zz); M[2][1] =
yz -
wx; M[3][1] = Origin.
Y;
90 M[0][2] =
xz - wy; M[1][2] =
yz +
wx; M[2][2] = 1.0f - (
xx +
yy); M[3][2] = Origin.
Z;
91 M[0][3] = 0.0f; M[1][3] = 0.0f; M[2][3] = 0.0f; M[3][3] = 1.0f;
#define check(expr)
Definition AssertionMacros.h:314
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define UE_DECLARE_LWC_TYPE(...)
Definition LargeWorldCoordinates.h:27
Definition AdvancedWidgetsModule.cpp:13
Definition IsUECoreType.h:19
@ Value
Definition IsUECoreType.h:20
T M[4][4]
Definition Matrix.h:49
Definition QuatRotationTranslationMatrix.h:48
TQuatRotationMatrix(const TQuatRotationMatrix< FArg > &From)
Definition QuatRotationTranslationMatrix.h:63
TQuatRotationMatrix(const TQuat< T > &Q)
Definition QuatRotationTranslationMatrix.h:56
static TMatrix< T > Make(const TQuat< T > &Q)
Definition QuatRotationTranslationMatrix.h:69
Definition QuatRotationTranslationMatrix.h:18
static TMatrix< T > Make(const TQuat< T > &Q, const TVector< T > &Origin)
Definition QuatRotationTranslationMatrix.h:37
TQuatRotationTranslationMatrix(const TQuatRotationTranslationMatrix< FArg > &From)
Definition QuatRotationTranslationMatrix.h:31
TQuatRotationTranslationMatrix(const TQuat< T > &Q, const TVector< T > &Origin)
Definition QuatRotationTranslationMatrix.h:77
bool IsNormalized() const
Definition Quat.h:1149
T Z
Definition Vector.h:68
T Y
Definition Vector.h:65
T X
Definition Vector.h:62