### Question:
SphereBody extends GeographicBody3D { public static Vector3d getDefaultNormalAtPosition(GeographicPosition inPos) { LatLonAlt lla = inPos.getLatLonAlt(); double φ = Math.toRadians(lla.getLatD()); double λ = Math.toRadians(lla.getLonD()); double cosλ = Math.cos(λ); double sinλ = Math.sin(λ); double cosφ = Math.cos(φ); double sinφ = Math.sin(φ); return new Vector3d(cosφ * cosλ, cosφ * sinλ, sinφ); } SphereBody(double radius); static Vector3d getDefaultNormalAtPosition(GeographicPosition inPos); @Override Vector3d convertToModel(GeographicPosition inPos, Vector3d modelCenter); @Override GeographicPosition convertToPosition(Vector3d inPos, ReferenceLevel altReference); @Override Vector3d getNormalAtPosition(GeographicPosition inPos); @Override Sphere getShape();  }### Answer:
@Test public void testGetDefaultNormalAtPosition() { Assert.assertEquals(new Vector3d(1., 0., 0.), SphereBody.getDefaultNormalAtPosition(new GeographicPosition(LatLonAlt.createFromDegrees(0., 0.)))); Assert.assertEquals(new Vector3d(0., 1., 0.), SphereBody.getDefaultNormalAtPosition(new GeographicPosition(LatLonAlt.createFromDegrees(0., 90.)))); Assert.assertEquals(new Vector3d(-1., 0., 0.), SphereBody.getDefaultNormalAtPosition(new GeographicPosition(LatLonAlt.createFromDegrees(0., 180.)))); Assert.assertEquals(new Vector3d(0., -1., 0.), SphereBody.getDefaultNormalAtPosition(new GeographicPosition(LatLonAlt.createFromDegrees(0., 270.)))); Assert.assertEquals(new Vector3d(0., -1., 0.), SphereBody.getDefaultNormalAtPosition(new GeographicPosition(LatLonAlt.createFromDegrees(0., -90.)))); Assert.assertEquals(new Vector3d(-1., 0., 0.), SphereBody.getDefaultNormalAtPosition(new GeographicPosition(LatLonAlt.createFromDegrees(0., -180.)))); Assert.assertEquals(new Vector3d(0., 0., 1.), SphereBody.getDefaultNormalAtPosition(new GeographicPosition(LatLonAlt.createFromDegrees(90., 0.)))); Assert.assertEquals(new Vector3d(0., 0., -1.), SphereBody.getDefaultNormalAtPosition(new GeographicPosition(LatLonAlt.createFromDegrees(-90., 0.)))); Assert.assertEquals(new Vector3d(.5, .5, 1. / Math.sqrt(2)), SphereBody.getDefaultNormalAtPosition(new GeographicPosition(LatLonAlt.createFromDegrees(45., 45.)))); }