docs: def _get_window_out_shape(self, bands, window, xsize, ysize):
          """Get the outshape of a window.
  
          this method is only used inside get_window to calculate the out_shape
          """
  
          if xsize and ysize is None:
              ratio = window.width / xsize
              ysize = math.ceil(window.height / ratio)
          elif ysize and xsize is None:
              ratio = window.height / ysize
              xsize = math.ceil(window.width / ratio)
          elif xsize is None and ysize is None:
              ysize = math.ceil(window.height)
              xsize = math.ceil(window.width)
          return (len(bands), ysize, xsize)