Skip to content

Commit

Permalink
Remove even more Matrix4 Euler rotation methods
Browse files Browse the repository at this point in the history
It seems pretty much every possible permutation of X,Y,Z Euler angles was
implemented in its own public method, including both degrees and radians
variants, none of which were ever used. I'm not sure if this code was
autogenerated or if the original author was paid by the line.
  • Loading branch information
Matthew Mott committed Mar 20, 2021
1 parent 1297cfd commit d014dd9
Show file tree
Hide file tree
Showing 3 changed files with 0 additions and 497 deletions.
160 changes: 0 additions & 160 deletions libs/math/Matrix4.cpp
Expand Up @@ -238,166 +238,6 @@ Matrix4 Matrix4::getRotationForEulerXYZDegrees(const Vector3& euler)
return getRotationForEulerXYZ(euler_degrees_to_radians(euler));
}

Matrix4 Matrix4::getRotationForEulerYZX(const Vector3& euler)
{
double cx = cos(euler[0]);
double sx = sin(euler[0]);
double cy = cos(euler[1]);
double sy = sin(euler[1]);
double cz = cos(euler[2]);
double sz = sin(euler[2]);

return Matrix4::byColumns(
cy*cz,
cx*cy*sz + sx*sy,
sx*cy*sz - cx*sy,
0,
-sz,
cx*cz,
sx*cz,
0,
sy*cz,
cx*sy*sz - sx*cy,
sx*sy*sz + cx*cy,
0,
0,
0,
0,
1
);
}

Matrix4 Matrix4::getRotationForEulerXZY(const Vector3& euler)
{
double cx = cos(euler[0]);
double sx = sin(euler[0]);
double cy = cos(euler[1]);
double sy = sin(euler[1]);
double cz = cos(euler[2]);
double sz = sin(euler[2]);

return Matrix4::byColumns(
cy*cz,
sz,
-sy*cz,
0,
sx*sy - cx*cy*sz,
cx*cz,
cx*sy*sz + sx*cy,
0,
sx*cy*sz + cx*sy,
-sx*cz,
cx*cy - sx*sy*sz,
0,
0,
0,
0,
1
);
}

Matrix4 Matrix4::getRotationForEulerYXZ(const Vector3& euler)
{
double cx = cos(euler[0]);
double sx = sin(euler[0]);
double cy = cos(euler[1]);
double sy = sin(euler[1]);
double cz = cos(euler[2]);
double sz = sin(euler[2]);

return Matrix4::byColumns(
cy*cz - sx*sy*sz,
cy*sz + sx*sy*cz,
-cx*sy,
0,
-cx*sz,
cx*cz,
sx,
0,
sy*cz + sx*cy*sz,
sy*sz - sx*cy*cz,
cx*cy,
0,
0,
0,
0,
1
);
}

Matrix4 Matrix4::getRotationForEulerYXZDegrees(const Vector3& euler)
{
return getRotationForEulerYXZ(euler_degrees_to_radians(euler));
}

Matrix4 Matrix4::getRotationForEulerZXY(const Vector3& euler)
{
double cx = cos(euler[0]);
double sx = sin(euler[0]);
double cy = cos(euler[1]);
double sy = sin(euler[1]);
double cz = cos(euler[2]);
double sz = sin(euler[2]);

return Matrix4::byColumns(
cy*cz + sx*sy*sz,
cx*sz,
sx*cy*sz - sy*cz,
0,
sx*sy*cz - cy*sz,
cx*cz,
sy*sz + sx*cy*cz,
0,
cx*sy,
-sx,
cx*cy,
0,
0,
0,
0,
1
);
}

Matrix4 Matrix4::getRotationForEulerZXYDegrees(const Vector3& euler)
{
return getRotationForEulerZXY(euler_degrees_to_radians(euler));
}

Matrix4 Matrix4::getRotationForEulerZYX(const Vector3& euler)
{
double cx = cos(euler[0]);
double sx = sin(euler[0]);
double cy = cos(euler[1]);
double sy = sin(euler[1]);
double cz = cos(euler[2]);
double sz = sin(euler[2]);

return Matrix4::byColumns(
cy*cz,
cx*sz + sx*sy*cz,
sx*sz - cx*sy*cz,
0,
-cy*sz,
cx*cz - sx*sy*sz,
sx*cz + cx*sy*sz,
0,
sy,
-sx*cy,
cx*cy,
0,
0,
0,
0,
1
);
}

Matrix4 Matrix4::getRotationForEulerZYXDegrees(const Vector3& euler)
{
return getRotationForEulerZYX(euler_degrees_to_radians(euler));
}

// Get a scale matrix
Matrix4 Matrix4::getScale(const Vector3& scale)
{
Expand Down

0 comments on commit d014dd9

Please sign in to comment.