code: @Override
  	@Pure
  	protected Rectangle2d calcBounds() {
  		if (getPointCount() == 0) {
  			return null;
  		}
  
  		final Iterator<Point2d> iterPoints = points().iterator();
  		if (!iterPoints.hasNext()) {
  			return null;
  		}
  
  		Point2d point = iterPoints.next();
  		if (point == null) {
  			return null;
  		}
  
  		double minx = point.getX();
  		double maxx = point.getX();
  		double miny = point.getY();
  		double maxy = point.getY();
  
  		while (iterPoints.hasNext()) {
  			point = iterPoints.next();
  			if (point != null) {
  				final double x = point.getX();
  				final double y = point.getY();
  				if (x < minx) {
  					minx = x;
  				}
  				if (y < miny) {
  					miny = y;
  				}
  				if (x > maxx) {
  					maxx = x;
  				}
  				if (y > maxy) {
  					maxy = y;
  				}
  			}
  		}
  		final Rectangle2d r = new Rectangle2d();
  		r.setFromCorners(minx, miny, maxx, maxy);
  		return r;
  	}
docs: Compute the bounds of this element.
  This function does not update the internal
  attribute replied by {@link #getBoundingBox()}