prospect.coverage

class prospect.coverage.Coverage(name: str, surveyunit_list: List[prospect.surveyunit.SurveyUnit], orientation: Optional[float], spacing: Optional[float], sweep_width: Optional[float] = None, radius: Optional[float] = None)[source]

Bases: object

A collection of SurveyUnit objects

The Coverage class is mostly useful as a way to create groups of similar survey units.

Parameters
  • name (str) – Unique name for the Coverage

  • surveyunit_list (List[SurveyUnit]) – List of survey units that make up the coverage

  • orientation (float) – Angle of the predominant axis of the survey units

  • spacing (float) – Distance between survey units

  • sweep_width (float, optional) – Buffer distance around transects (the default is None, which is only updated if the survey units are transects)

  • radius (float, optional) – Buffer distance for radial survey units (the default is None, which is only update if the survey units are radial)

name

Unique name for the coverage

Type

str

surveyunit_list

List of survey units that make up the coverage

Type

List[SurveyUnit]

orientation

Angle of the predominant axis of the survey units

Type

float

spacing

Distance between survey units

Type

float

sweep_width

Buffer distance around transects

Type

float

radius

Buffer distance for radial survey units

Type

float

df

GeoDataFrame with a row for each survey unit

Type

geopandas GeoDataFrame

classmethod from_GeoDataFrame(gdf: geopandas.geodataframe.GeoDataFrame, name: str, surveyunit_type: str, min_time_per_unit: Union[float, scipy.stats._distn_infrastructure.rv_frozen] = 0.0)prospect.coverage.Coverage[source]

Create a Coverage instance from a geopandas GeoDataFrame

Parameters
  • gdf (geopandas GeoDataFrame) – GeoDataFrame where each row is a survey unit

  • name (str) – Unique name for the Coverage

  • surveyunit_type ({'transect', 'radial'}) – Type of units to create

  • min_time_per_unit (Union[float, rv_frozen], optional) –

    Minimum amount of time required to complete one “unit” of survey, given no surveyor speed penalty and no time penalty for recording features. The default is 0.0.

    Because transects can differ in length, transect coverages should specify this term as time per one unit of distance (e.g., seconds per meter).

    For radial survey units, this term should be specified more simply as time per one survey unit.

Returns

Return type

Coverage

classmethod from_radials(name: str, area: prospect.area.Area, spacing: float = 10.0, radius: float = 1.78, orientation: float = 0.0, optimize_orient_by: Optional[str] = None, orient_increment: float = 5.0, orient_axis: str = 'long', min_time_per_unit: Union[float, scipy.stats._distn_infrastructure.rv_frozen] = 0.0)prospect.coverage.Coverage[source]

Create a Coverage instance of radial units.

Parameters
  • name (str) – Unique name for the Coverage

  • area (Area) – Containing area

  • spacing (float, optional) – Distance between survey units (the default is 10.0)

  • radius (float, optional) – Buffer distance for radial survey units (the default is 1.78, which leads to radial units of roughly 10 square units of area)

  • orientation (float, optional) – Angle of the predominant axis of the survey units (the default is 0.0)

  • optimize_orient_by ({'area_coverage', 'area_orient'}, optional) – Metric to optimize in determining the orientation of survey units. ‘area_coverage’ chooses the orientation that maximizes the area covered by the survey units. ‘area_orient’ chooses the orientation that best parallels the orient_axis of the area. The default is None, in which case the orientation parameter is used directly.

  • orient_increment (float, optional) – Step size (in degrees) to use when testing different orientations. (the default is 5.0)

  • orient_axis ({'long', 'short'}, optional) – Axis of the area along which to orient the survey units (the default is ‘long’, which creates rows parallel to the longest axis of the area’s minimum rotated rectangle)

  • min_time_per_unit (Union[float, rv_frozen]) –

    Minimum amount of time required to complete one “unit” of survey, given no surveyor speed penalty and no time penalty for recording features. The default is 0.0.

    For radial survey units, this term should be specified more simply as time per one survey unit.

Returns

Return type

Coverage

classmethod from_shapefile(path: str, name: str, surveyunit_type: str, min_time_per_unit: Union[float, scipy.stats._distn_infrastructure.rv_frozen] = 0.0, **kwargs)prospect.coverage.Coverage[source]

Create a Coverage instance from a shapefile.

Parameters
  • path (str) – Filepath to the shapefile

  • name (str) – Unique name for the Coverage

  • surveyunit_type (str) – Type of units to create

  • min_time_per_unit (Union[float, rv_frozen], optional) –

    Minimum amount of time required to complete one “unit” of survey, given no surveyor speed penalty and no time penalty for recording features. The default is 0.0.

    Because transects can differ in length, transect coverages should specify this term as time per one unit of distance (e.g., seconds per meter).

    For radial survey units, this term should be specified more simply as time per one survey unit.

Returns

Return type

Coverage

classmethod from_transects(name: str, area: prospect.area.Area, spacing: float = 10.0, sweep_width: float = 2.0, orientation: float = 0.0, optimize_orient_by: Optional[str] = None, orient_increment: float = 5.0, orient_axis: str = 'long', min_time_per_unit: Union[float, scipy.stats._distn_infrastructure.rv_frozen] = 0.0)prospect.coverage.Coverage[source]

Create a Coverage instance of transects.

Parameters
  • name (str) – Unique name for the Coverage

  • area (Area) – Containing area

  • spacing (float, optional) – Distance between survey units (the default is 10.0)

  • sweep_width (float, optional) – Buffer distance around transects (the default is 2.0)

  • orientation (float, optional) – Angle of the predominant axis of the survey units (the default is 0.0)

  • optimize_orient_by ({'area_coverage', 'area_orient'}, optional) – Metric to optimize in determining the orientation of survey units. ‘area_coverage’ chooses the orientation that maximizes the area covered by the survey units. ‘area_orient’ chooses the orientation that best parallels the orient_axis of the area. The default is None, in which case the orientation parameter is used directly.

  • orient_increment (float, optional) – Step size (in degrees) to use when testing different orientations. (the default is 5.0)

  • orient_axis ({'long', 'short'}, optional) – Axis of the area along which to orient the survey units (the default is ‘long’, which creates rows parallel to the longest axis of the area’s minimum rotated rectangle)

  • min_time_per_unit (Union[float, rv_frozen]) –

    Minimum amount of time required to complete one “unit” of survey, given no surveyor speed penalty and no time penalty for recording features. The default is 0.0.

    Because transects can differ in length, transect coverages should specify this term as time per one unit of distance (e.g., seconds per meter).

Returns

Return type

Coverage