class FileWMSLayer extends WMSLayer {

    protected LevelRowCol getGridCoordinates(LatLonAlt coord, Vector2d gridSize)
    {
        int level = 0;
        List<Vector2d> layerCellDimensions = getLayerCellDimensions();
        while (level < layerCellDimensions.size() - 1
                && layerCellDimensions.get(level).getX() - MathUtil.DBL_EPSILON > gridSize.getX())
        {
            level++;
        }
        Vector2d dim = layerCellDimensions.get(level);
        GeographicBoundingBox boundingBox = getBoundingBox();
        LatLonAlt lowerLeft = boundingBox.getLowerLeft().getLatLonAlt();
        double minLat = lowerLeft.getLatD();
        double minLon = lowerLeft.getLonD();

        int row = (int)((coord.getLatD() - minLat) / dim.getY());
        int col = (int)((coord.getLonD() - minLon) / dim.getX());
        return new LevelRowCol(level, row, col);
    }

    public  FileWMSLayer(Builder builder);

}