class_docstr: Handle a single SCMI NetCDF4 file.
class_docstr_tok: ["Handle","a","single","SCMI","NetCDF4","file","."]
docstr: Calculate area extents from x/y variables.
docstr_tok: ["Calculate","area","extents","from","x\/y","variables","."]
code: def _calc_extents(self, proj_dict):
      """Calculate area extents from x/y variables."""
      h = float(proj_dict.get("h", 1.0))  # force to 64-bit float
      x = self["x"]
      y = self["y"]
      x_units = x.attrs.get("units", "rad")
      if x_units == "meters":
          h_factor = 1.0
          factor = 1.0
      elif x_units == "microradian":
          h_factor = h
          factor = 1e6
      else:  # radians
          h_factor = h
          factor = 1.0
      x_l = h_factor * x[0] / factor
      x_r = h_factor * x[-1] / factor
      y_l = h_factor * y[-1] / factor
      y_u = h_factor * y[0] / factor
      x_half = (x_r - x_l) / (self.ncols - 1) / 2.0
      y_half = (y_u - y_l) / (self.nlines - 1) / 2.0
      return x_l - x_half, y_l - y_half, x_r + x_half, y_u + y_half
  
imports: import logging
  import os
  from datetime import datetime
  import numpy
  import xarray
  from pyresample import geometry
  from satpy.readers.file_handlers import BaseFileHandler
  from satpy.utils import get_legacy_chunk_size
label_desc: Use image node_id 10 for calling the SCMIFileHandler obj's underlying member method code with example usage: obj._calc_extents(proj_dict) and returns: unknown,  unknown,  unknown,  unknown