class_docstr: An interface to the GSHHS dataset.
  
  See https://www.ngdc.noaa.gov/mgg/shorelines/gshhs.html
  
  Parameters
  ----------
  scale
      The dataset scale. One of 'auto', 'coarse', 'low', 'intermediate',
      'high, or 'full' (default is 'auto').
  levels
      A list of integers 1-6 corresponding to the desired GSHHS feature
      levels to draw (default is [1] which corresponds to coastlines).
  
  Other Parameters
  ----------------
  **kwargs
      Keyword arguments to be used when drawing the feature. Defaults
      are edgecolor='black' and facecolor='none'.
code: def intersecting_geometries(self, extent):
      if self._scale == "auto":
          scale = self._scale_from_extent(extent)
      else:
          scale = self._scale[0]
  
      if extent is not None:
          extent_geom = sgeom.box(
              extent[0], extent[2], extent[1], extent[3]
          )
      for level in self._levels:
          geoms = GSHHSFeature._geometries_cache.get((scale, level))
          if geoms is None:
              # Load GSHHS geometries from appropriate shape file.
              # TODO selective load based on bbox of each geom in file.
              path = shapereader.gshhs(scale, level)
              geoms = tuple(shapereader.Reader(path).geometries())
              GSHHSFeature._geometries_cache[(scale, level)] = geoms
          for geom in geoms:
              if extent is None or extent_geom.intersects(geom):
                  yield geom
  
imports: from abc import ABCMeta, abstractmethod
  import numpy
  import shapely.geometry
  import cartopy.crs
  import cartopy.io.shapereader
label_desc: Use image node_id 4 for calling the GSHHSFeature obj's underlying member method code with example usage: obj.intersecting_geometries(extent) without return types