@ContinuousIntegrationTest(estimatedDuration = 0.0)
@Test(timeout = 30000)
public void testAxisAngleEpsilonEqualsIgnoreFlippedAxes()
{
for (int i = 0; i < 100; i++)
{
double randomAngle = AngleTools.generateRandomAngle(random);
Vector3D randomAxisA = RandomGeometry.nextVector3D(random, 1.0);
Vector3D randomAxisA_flipped = new Vector3D(randomAxisA);
randomAxisA_flipped.negate();
AxisAngle axisAngleA = new AxisAngle(randomAxisA, randomAngle);
AxisAngle axisAngleB = new AxisAngle(randomAxisA_flipped, -randomAngle);
assertTrue(axisAngleA + "\n should equal:\n" + axisAngleB + "!", RotationTools.axisAngleEpsilonEqualsIgnoreFlippedAxes(axisAngleA, axisAngleB, EPSILON));
}
for (int i = 0; i < 100; i++)
{
double randomAngle = AngleTools.generateRandomAngle(random);
Vector3D randomAxisA = RandomGeometry.nextVector3D(random, 1.0);
Vector3D randomAxisA_flipped = new Vector3D(randomAxisA);
randomAxisA_flipped.negate();
AxisAngle axisAngleA = new AxisAngle(randomAxisA, randomAngle);
AxisAngle axisAngleB = new AxisAngle(randomAxisA_flipped, randomAngle);
assertTrue(axisAngleA + "\n should *NOT* equal:\n" + axisAngleB + "!", !RotationTools.axisAngleEpsilonEqualsIgnoreFlippedAxes(axisAngleA, axisAngleB, EPSILON));
}
}