code: public static BoundingBox getWebMercatorBoundingBox(TileGrid tileGrid,
  			int zoom) {
  
  		double tileSize = tileSizeWithZoom(zoom);
  
  		double minLon = (-1 * ProjectionConstants.WEB_MERCATOR_HALF_WORLD_WIDTH)
  				+ (tileGrid.getMinX() * tileSize);
  		double maxLon = (-1 * ProjectionConstants.WEB_MERCATOR_HALF_WORLD_WIDTH)
  				+ ((tileGrid.getMaxX() + 1) * tileSize);
  		double minLat = ProjectionConstants.WEB_MERCATOR_HALF_WORLD_WIDTH
  				- ((tileGrid.getMaxY() + 1) * tileSize);
  		double maxLat = ProjectionConstants.WEB_MERCATOR_HALF_WORLD_WIDTH
  				- (tileGrid.getMinY() * tileSize);
  
  		BoundingBox box = new BoundingBox(minLon, minLat, maxLon, maxLat);
  
  		return box;
  	}
docs: Get the Web Mercator tile bounding box from the Google Maps API tile grid
  and zoom level
  
  @param tileGrid
  tile grid
  @param zoom
  zoom level
  @return bounding box