@Test public void testLengthSquared() { Random random = new Random(312310L); for (int i = 0; i < ITERATIONS; i++) { T tuple1 = createRandomTuple(random); double length1 = tuple1.norm(); double scalar = EuclidCoreRandomTools.nextDouble(random, 0.0, 10.0); T tuple2 = createTuple(scalar * tuple1.getX(), scalar * tuple1.getY(), scalar * tuple1.getZ(), scalar * tuple1.getS()); double expectedLength2 = scalar * length1; double actualLength2 = tuple2.normSquared(); assertEquals(expectedLength2, Math.sqrt(actualLength2), 5.0 * getEpsilon()); } }
@Test public void testLength() { Random random = new Random(312310L); for (int i = 0; i < ITERATIONS; i++) { T tuple1 = createRandomTuple(random); double length1 = tuple1.norm(); double scalar = EuclidCoreRandomTools.nextDouble(random, 0.0, 10.0); T tuple2 = createTuple(scalar * tuple1.getX(), scalar * tuple1.getY(), scalar * tuple1.getZ(), scalar * tuple1.getS()); double expectedLength2 = scalar * length1; double actualLength2 = tuple2.norm(); assertEquals(expectedLength2, actualLength2, 5.0 * getEpsilon()); } }
T p = createRandomTuple(random); T q = createRandomTuple(random); Vector4D product = new Vector4D();
tuple = createRandomTuple(random); double[] tupleArray = new double[] {random.nextDouble(), random.nextDouble(), random.nextDouble(), random.nextDouble(), random.nextDouble(), random.nextDouble()}; tuple = createRandomTuple(random); double[] tupleArray = new double[] {random.nextDouble(), random.nextDouble(), random.nextDouble(), random.nextDouble(), random.nextDouble(), random.nextDouble()}; tuple = createRandomTuple(random); float[] tupleArray = new float[] {random.nextFloat(), random.nextFloat(), random.nextFloat(), random.nextFloat(), random.nextFloat(), random.nextFloat()}; tuple = createRandomTuple(random); float[] tupleArray = new float[] {random.nextFloat(), random.nextFloat(), random.nextFloat(), random.nextFloat(), random.nextFloat(), random.nextFloat()};
T tuple = createRandomTuple(random);
@Test public void testEpsilonEquals() throws Exception { Random random = new Random(621541L); double epsilon = random.nextDouble(); T tuple = createRandomTuple(random); double x = tuple.getX(); double y = tuple.getY(); double z = tuple.getZ(); double s = tuple.getS(); assertTrue(tuple.epsilonEquals(createTuple(x + 0.999 * epsilon, y, z, s), epsilon)); assertTrue(tuple.epsilonEquals(createTuple(x - 0.999 * epsilon, y, z, s), epsilon)); assertTrue(tuple.epsilonEquals(createTuple(x, y + 0.999 * epsilon, z, s), epsilon)); assertTrue(tuple.epsilonEquals(createTuple(x, y - 0.999 * epsilon, z, s), epsilon)); assertTrue(tuple.epsilonEquals(createTuple(x, y, z + 0.999 * epsilon, s), epsilon)); assertTrue(tuple.epsilonEquals(createTuple(x, y, z - 0.999 * epsilon, s), epsilon)); assertTrue(tuple.epsilonEquals(createTuple(x, y, z, s + 0.999 * epsilon), epsilon)); assertTrue(tuple.epsilonEquals(createTuple(x, y, z, s - 0.999 * epsilon), epsilon)); assertFalse(tuple.epsilonEquals(createTuple(x + 1.001 * epsilon, y, z, s), epsilon)); assertFalse(tuple.epsilonEquals(createTuple(x - 1.001 * epsilon, y, z, s), epsilon)); assertFalse(tuple.epsilonEquals(createTuple(x, y + 1.001 * epsilon, z, s), epsilon)); assertFalse(tuple.epsilonEquals(createTuple(x, y - 1.001 * epsilon, z, s), epsilon)); assertFalse(tuple.epsilonEquals(createTuple(x, y, z + 1.001 * epsilon, s), epsilon)); assertFalse(tuple.epsilonEquals(createTuple(x, y, z - 1.001 * epsilon, s), epsilon)); assertFalse(tuple.epsilonEquals(createTuple(x, y, z, s + 1.001 * epsilon), epsilon)); assertFalse(tuple.epsilonEquals(createTuple(x, y, z, s - 1.001 * epsilon), epsilon)); }