private void calculateViewport(final Viewport.ContainingViewportBuilder builder, final GeoItem item) {
        if (item instanceof GeoGroup) {
            for (GeoItem child : ((GeoGroup) item).items) {
                calculateViewport(builder, child);
            }
        } else if (item instanceof GeoPrimitive) {
            builder.add(((GeoPrimitive) item).getPoints());
        }
    }
Represents a group of drawable GeoItem such as a point, polyline, polygon or enclosed groups
main/src/main/java/cgeo/geocaching/models/geoitem/GeoGroup.java