code: def get_area_extent(pdict):
      """Get the area extent seen by a geostationary satellite.
  
      Args:
          pdict: A dictionary containing common parameters:
              nlines: Number of lines in image
              ncols: Number of columns in image
              cfac: Column scaling factor
              lfac: Line scaling factor
              coff: Column offset factor
              loff: Line offset factor
              scandir: 'N2S' for standard (N->S), 'S2N' for inverse (S->N)
  
      Returns:
          aex: An area extent for the scene
  
      """
      # count starts at 1
      cols = 1 - 0.5
  
      if pdict["scandir"] == "S2N":
          lines = 0.5 - 1
          scanmult = -1
      else:
          lines = 1 - 0.5
          scanmult = 1
      # Lower left x, y scanning angles in degrees
      ll_x, ll_y = get_xy_from_linecol(
          lines * scanmult,
          cols,
          (pdict["loff"], pdict["coff"]),
          (pdict["lfac"], pdict["cfac"]),
      )
  
      cols += pdict["ncols"]
      lines += pdict["nlines"]
      # Upper right x, y scanning angles in degrees
      ur_x, ur_y = get_xy_from_linecol(
          lines * scanmult,
          cols,
          (pdict["loff"], pdict["coff"]),
          (pdict["lfac"], pdict["cfac"]),
      )
      if pdict["scandir"] == "S2N":
          ll_y *= -1
          ur_y *= -1
  
      # Convert degrees to radians and create area extent
      aex = make_ext(
          ll_x=ll_x, ur_x=ur_x, ll_y=ll_y, ur_y=ur_y, h=pdict["h"]
      )
  
      return aex
  
file_path: satpy/satpy/readers/_geos_area.py
imports: import numpy
  from pyresample import geometry
label_desc: Use image node_id 3 for calling a global function with example usage: get_area_extent(pdict) and returns: aex