### Question:
AbstractGeographicProjection extends AbstractProjection { @Override public TesseraList<? extends GeographicProjectedTesseraVertex> convertQuadToModel(GeographicPosition vert1, GeographicPosition vert2, GeographicPosition vert3, GeographicPosition vert4, Vector3d modelCenter) { Utilities.checkNull(modelCenter, MODEL_CENTER_PARAMETER_NAME); List<GeographicTesseraVertex> vertices = New.list(); vertices.add(new GeographicTesseraVertex(vert1, convertToModel(vert1, modelCenter))); vertices.add(new GeographicTesseraVertex(vert2, convertToModel(vert2, modelCenter))); vertices.add(new GeographicTesseraVertex(vert3, convertToModel(vert3, modelCenter))); vertices.add(new GeographicTesseraVertex(vert4, convertToModel(vert4, modelCenter))); return new TesseraList<GeographicProjectedTesseraVertex>(vertices, 4, false); }  @Override List<Vector3d> convertLinesToModel(List<? extends GeographicPosition> positions, int limit, LineType type,
            Vector3d modelCenter); @Override Pair<Tessera<GeographicPosition>, ProjectionCursor> convertLineToModel(GeographicPosition start,
            GeographicPosition end, LineType type, Vector3d modelCenter); @Override Pair<Tessera<GeographicPosition>, ProjectionCursor> convertLineToModel(ProjectionCursor start, GeographicPosition end,
            LineType type, Vector3d modelCenter); @Override TesseraList<? extends GeographicProjectedTesseraVertex> convertPolygonToModelMesh(Polygon polygon,
            Vector3d modelCenter); @Override Collection<Vector3d> convertPositionsToModel(Collection<? extends GeographicPosition> positions, Vector3d modelCenter); @Override TesseraList<? extends GeographicProjectedTesseraVertex> convertQuadToModel(GeographicPosition vert1,
            GeographicPosition vert2, GeographicPosition vert3, GeographicPosition vert4, Vector3d modelCenter); @Override TesseraList<? extends GeographicProjectedTesseraVertex> convertTriangleToModel(GeographicPosition vert1,
            GeographicPosition vert2, GeographicPosition vert3, Vector3d modelCenter); @Override Ellipsoid getBoundingEllipsoid(BoundingBox<GeographicPosition> bbox, Vector3d modelCenter, boolean forceGenerate); @Override Sphere getBoundingSphere(BoundingBox<GeographicPosition> bbox, Vector3d modelCenter, boolean forceGenerate); @Override double getMinimumTerrainDistance(Viewer view); @Override double getModelHeight(); @Override double getModelWidth(); @Override void resetProjection(boolean highAccuracy);  }### Answer:
@Test public void testConvertQuadToModel() { GeographicPosition pos1 = new GeographicPosition(LatLonAlt.createFromDegrees(0, 0)); GeographicPosition pos2 = new GeographicPosition(LatLonAlt.createFromDegrees(1, 1)); GeographicPosition pos3 = new GeographicPosition(LatLonAlt.createFromDegrees(2, 2)); GeographicPosition pos4 = new GeographicPosition(LatLonAlt.createFromDegrees(3, 3)); TesseraList<? extends GeographicProjectedTesseraVertex> results = myTestObject.convertQuadToModel(pos1, pos2, pos3, pos4, Vector3d.ORIGIN); assertEquals(1, results.getTesseraBlocks().size()); assertEquals(4, results.getTesseraBlocks().get(0).getTesseraVertexCount()); }