MCPcopy Create free account
hub / github.com/EricLengyel/Terathon-Math-Library / GetTransformMatrix

Method GetTransformMatrix

TSFlector3D.cpp:16–42  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

14
15
16Transform3D Flector3D::GetTransformMatrix(void) const
17{
18 float gx2 = g.x * g.x;
19 float gy2 = g.y * g.y;
20 float gz2 = g.z * g.z;
21
22 float A00 = (gy2 + gz2) * 2.0F - 1.0F;
23 float A11 = (gz2 + gx2) * 2.0F - 1.0F;
24 float A22 = (gx2 + gy2) * 2.0F - 1.0F;
25 float A01 = g.x * g.y * -2.0F;
26 float A02 = g.z * g.x * -2.0F;
27 float A12 = g.y * g.z * -2.0F;
28 float A03 = p.x * p.w - g.x * g.w;
29 float A13 = p.y * p.w - g.y * g.w;
30 float A23 = p.z * p.w - g.z * g.w;
31
32 float B01 = g.z * p.w * 2.0F;
33 float B20 = g.y * p.w * 2.0F;
34 float B12 = g.x * p.w * 2.0F;
35 float B03 = g.y * p.z - g.z * p.y;
36 float B13 = g.z * p.x - g.x * p.z;
37 float B23 = g.x * p.y - g.y * p.x;
38
39 return (Transform3D( A00, A01 + B01, A02 - B20, (A03 + B03) * 2.0F,
40 A01 - B01, A11, A12 + B12, (A13 + B13) * 2.0F,
41 A02 + B20, A12 - B12, A22, (A23 + B23) * 2.0F));
42}
43
44Transform3D Flector3D::GetInverseTransformMatrix(void) const
45{

Callers

nothing calls this directly

Calls 1

Transform3DClass · 0.70

Tested by

no test coverage detected