@Test
public void testMultiplyDiagonal() {
final Matrix3 mat3A = new Matrix3();
Matrix3 result = mat3A.multiplyDiagonalPost(new Vector3(2, 4, 6), null);
assertEquals(new Matrix3(
2, 0, 0,
0, 4, 0,
0, 0, 6), result);
mat3A.multiplyDiagonalPre(new Vector3(-2, -4, -6), result);
assertEquals(new Matrix3(
-2, 0, 0,
0, -4, 0,
0, 0, -6), result);
final double a = MathUtils.HALF_PI;
mat3A.applyRotationY(a);
mat3A.multiplyDiagonalPost(new Vector3(2, 4, 6), result);
assertEquals(new Matrix3(
2 * Math.cos(a), 4 * 0, 6 * Math.sin(a),
2 * 0, 4 * 1, 6 * 0,
2 * -Math.sin(a), 4 * 0, 6 * Math.cos(a)), result);
result = mat3A.multiplyDiagonalPre(new Vector3(-2, -4, -6), null);
assertEquals(new Matrix3(
-2 * Math.cos(a), -2 * 0, -2 * Math.sin(a),
-4 * 0, -4 * 1, -4 * 0,
-6 * -Math.sin(a), -6 * 0, -6 * Math.cos(a)), result);
}