Vectors { public static Vector rotateAroundYAxis(Vector vector, double angle) { double cos = cos(angle); double sin = sin(angle); double x = vector.getX() * cos + vector.getZ() * sin; double z = vector.getX() * -sin + vector.getZ() * cos; return vector.setX(x).setZ(z); }  static Vector rotate(Vector vector, double angleX, double angleY, double angleZ); static Vector rotateAroundXAxis(Vector vector, double angle); static Vector rotateAroundYAxis(Vector vector, double angle); static Vector rotateAroundZAxis(Vector vector, double angle); static Vector rotate(Vector vector, Location pivot); static Vector rotate(Vector vector, float yawDegrees, float pitchDegrees); static Location rotate(Location location, Location pivot); static Location rotate(Location location, float yawDegrees, float pitchDegrees); static double angleToXAxis(Vector vector);  }
@Test void rotateAroundYAxis() { assertEquals(new Vector(-0.5666324724208438, 2.0, -3.111097497861204), Vectors.rotateAroundYAxis(vector, 3)); }