### Question:
PolarOrbitingPolygon { static double getLatitudeAtMeridian(double lat1, double lon1, double lat2, double lon2) { if (lon2 == lon1) { return lat1; } return lat1 - (lat2 - lat1) * lon1 / GeometryUtil.normalizeLongitude(lon2 - lon1); } PolarOrbitingPolygon(int id, long time, Geometry geometry); int getId(); long getTime(); boolean isPointInPolygon(double sampleLat, double sampleLon);  }### Answer:
@Test public void testGetLatitudeAtMeridian() { double latitudeAtMeridian = PolarOrbitingPolygon.getLatitudeAtMeridian(-19.0, 23.0, -21.0, 23.0); assertEquals(-19.0, latitudeAtMeridian, 1e-8); latitudeAtMeridian = PolarOrbitingPolygon.getLatitudeAtMeridian(-11.0, 23.0, -11.0, 26.0); assertEquals(-11.0, latitudeAtMeridian, 1e-8); latitudeAtMeridian = PolarOrbitingPolygon.getLatitudeAtMeridian(8.0, 0.0, -11.0, 26.0); assertEquals(8.0, latitudeAtMeridian, 1e-8); latitudeAtMeridian = PolarOrbitingPolygon.getLatitudeAtMeridian(-9.0, 10.0, -11.0, 12.0); assertEquals(1.0, latitudeAtMeridian, 1e-8); latitudeAtMeridian = PolarOrbitingPolygon.getLatitudeAtMeridian(-9.0, 10.0, -11.0, -12.0); assertEquals(-9.909090909090908, latitudeAtMeridian, 1e-8); latitudeAtMeridian = PolarOrbitingPolygon.getLatitudeAtMeridian(1.0, 2.0, 3.0, 4.0); assertEquals(-1.0, latitudeAtMeridian, 1e-8); assertEquals(40.0, PolarOrbitingPolygon.getLatitudeAtMeridian(50.0, -40.0, 35.0, 20.0), 1e-8); assertEquals(40.0, PolarOrbitingPolygon.getLatitudeAtMeridian(50.0, -40.0, 45.0, -20.0), 1e-8); }