Vec3 { public double distanceToSquared(Vec3 vector) { if (vector == null) { throw new IllegalArgumentException( Logger.logMessage(Logger.ERROR, "Vec3", "distanceToSquared", "missingVector")); } double dx = this.x - vector.x; double dy = this.y - vector.y; double dz = this.z - vector.z; return dx * dx + dy * dy + dz * dz; } Vec3();  Vec3(double x, double y, double z);  Vec3(Vec3 vector); @Override boolean equals(Object o); @Override int hashCode(); @Override String toString(); float[] toArray(float[] result, int offset); double magnitude(); double magnitudeSquared(); double distanceTo(Vec3 vector); double distanceToSquared(Vec3 vector); Vec3 set(double x, double y, double z); Vec3 set(Vec3 vector); Vec3 swap(Vec3 vector); Vec3 add(Vec3 vector); Vec3 subtract(Vec3 vector); Vec3 multiply(double scalar); Vec3 multiplyByMatrix(Matrix4 matrix); Vec3 divide(double divisor); Vec3 negate(); Vec3 normalize(); double dot(Vec3 vector); Vec3 cross(Vec3 vector); Vec3 cross(Vec3 a, Vec3 b); Vec3 mix(Vec3 vector, double weight); public double x; public double y; public double z; }
@Test public void testDistanceToSquared() throws Exception { final double x1 = 3.1; final double y1 = 4.2; final double z1 = -5.3; final double x2 = -x1; final double y2 = -y1; final double z2 = -z1; Vec3 u = new Vec3(x1, y1, z1); Vec3 v = new Vec3(x2, y2, z2); double magnitude = u.magnitude(); double distanceToSquared = u.distanceToSquared(v); assertEquals("distance squared", Math.pow(magnitude * 2, 2), distanceToSquared, Double.MIN_VALUE); }
@Test(expected = IllegalArgumentException.class) public void testDistanceToSquared_NullArgument() throws Exception { PowerMockito.mockStatic(Logger.class); Vec3 u = new Vec3(3, 4, 5); double distanceToSquared = u.distanceToSquared(null); fail("Expected an IllegalArgumentException to be thrown."); }