### Question:
DefaultEllipsoid extends AbstractShape3D implements Ellipsoid { @Override public Vector3d localToModel(Vector3d position) { return myTransform.mult(position).add(myCenter); } DefaultEllipsoid();  DefaultEllipsoid(double radius, double radius2, double radius3);  DefaultEllipsoid(Vector3d center, double radius, double radius2, double radius3);  DefaultEllipsoid(Vector3d center, Vector3d xAxis, Vector3d yAxis, Vector3d zAxis); @Override Vector3d directionToLocal(Vector3d direction); @Override Vector3d directionToModel(Vector3d direction); @Override double getBoundingRadius(); @Override Vector3d getCenter(); @Override double getHeading(Vector3d location, Vector3d direction); @Override Vector3d getIntersection(Ray3d ray); @Override long getSizeBytes(); @Override Vector3d getTangent(Vector3d normal); @Override Vector3d getXAxis(); @Override Vector3d getYAxis(); @Override Vector3d getZAxis(); @Override boolean isSphere(); @Override Vector3d localToModel(Vector3d position); @Override Vector3d modelToLocal(Vector3d position); @Override Vector3d normalToLocal(Vector3d normal); @Override String toString();  }### Answer:
@Test public void testLocalToModel() { Vector3d center = new Vector3d(3., 4., 13.); Vector3d xAxis = new Vector3d(7., 0., 0.); Vector3d yAxis = new Vector3d(0., 11., 0.); Vector3d zAxis = new Vector3d(0., 0., 13.); Ellipsoid ell = new DefaultEllipsoid(center, xAxis, yAxis, zAxis); Assert.assertEquals(new Vector3d(17., 37., 78.), ell.localToModel(new Vector3d(2., 3., 5.))); }