# pyresample.slicer module

Area and Swath Slicers.

class pyresample.slicer.AreaSlicer(area_to_crop, area_to_contain)

  Bases: `Slicer`

  A Slicer for cropping AreaDefinitions.

  Set up the Slicer.

  __init__(area_to_crop, area_to_contain)

    Set up the Slicer.

  get_polygon_to_contain()

    Get the shapely Polygon corresponding to area_to_contain in projection coordinates of area_to_crop.

  get_slices_from_polygon(poly_to_contain)

    Get the slices based on the polygon.

class pyresample.slicer.Slicer(area_to_crop, area_to_contain, work_crs)

  Bases: `ABC`

  Abstract Slicer.

  Provided an Area-to-crop and an Area-to-contain, a Slicer provides methods to find slices that enclose area-to-contain inside area-to-crop.

  Example

  For slicing a full-disk MSG area using a polar-stereographic area over Germany:

      >>> from pyresample import slicer
      >>> from satpy.resample import get_area_def
      >>> msg_area = get_area_def("msg_seviri_fes_3km")
      >>> germ_area = get_area_def("germ")
      >>> slc = slicer.create_slicer(msg_area, germ_area)
      >>> slc.get_slices()
      (slice(1900, 2242, None), slice(233, 423, None))

  Set up the Slicer.

  __init__(area_to_crop, area_to_contain, work_crs)

    Set up the Slicer.

  abstractmethod get_polygon_to_contain()

    Get the shapely Polygon corresponding to area_to_contain.

  get_slices()

    Get the slices to crop area_to_crop enclosing area_to_contain.

  abstractmethod get_slices_from_polygon(poly)

    Get the slices based on the polygon.

class pyresample.slicer.SwathSlicer(area_to_crop, area_to_contain, work_crs=None)

  Bases: `Slicer`

  A Slicer for cropping SwathDefinitions.

  Set up the Slicer.

  __init__(area_to_crop, area_to_contain, work_crs=None)

    Set up the Slicer.

  get_polygon_to_contain()

    Get the shapely Polygon corresponding to area_to_contain in lon/lat coordinates.

  get_slices_from_polygon(poly)

    Get the slices based on the polygon.

pyresample.slicer.create_slicer(area_to_crop, area_to_contain)

  Create a slicer for cropping area_to_crop based on area_to_contain.

  Return an AreaSlicer or a SwathSlicer based on the first area type.

pyresample.slicer.expand_slice(small_slice)

  Expand slice by one.