class_docstr: Reader class for FCI L2 products in NetCDF4 format.
class_docstr_tok: ["Reader","class","for","FCI","L2","products","in","NetCDF4","format","."]
docstr: Calculate area extent of dataset.
docstr_tok: ["Calculate","area","extent","of","dataset","."]
code: def _get_area_extent(self):
      """Calculate area extent of dataset."""
      # Load and convert x/y coordinates to degrees as required by the make_ext function
      x = self.nc["x"]
      y = self.nc["y"]
      x_deg = np.degrees(x)
      y_deg = np.degrees(y)
  
      # Select the extreme points and calcualte area extent (not: these refer to pixel center)
      ll_x, ur_x = -x_deg.values[0], -x_deg.values[-1]
      ll_y, ur_y = y_deg.values[-1], y_deg.values[0]
      h = float(self._projection.attrs["perspective_point_height"])
      area_extent_pixel_center = make_ext(ll_x, ur_x, ll_y, ur_y, h)
  
      # Shift area extent by half a pixel to get the area extent w.r.t. the dataset/pixel corners
      scale_factor = (x[1:] - x[0:-1]).values.mean()
      res = abs(scale_factor) * h
      area_extent = tuple(
          i + res / 2 if i > 0 else i - res / 2
          for i in area_extent_pixel_center
      )
  
      return area_extent
  
imports: import logging
  from contextlib import suppress
  import numpy
  import xarray
  from pyresample import geometry
  from satpy._compat import cached_property
  from satpy.readers._geos_area import get_geos_area_naming, make_ext
  from satpy.readers.eum_base import get_service_mode
  from satpy.readers.file_handlers import BaseFileHandler
  from satpy.resample import get_area_def
  from satpy.utils import get_legacy_chunk_size
label_desc: Use image node_id 6 for calling the FciL2NCFileHandler obj's underlying member method code with example usage: obj._get_area_extent() and returns: area_extent