xrspatial.visibility.line_of_sight#

xrspatial.visibility.line_of_sight(raster: DataArray, x0: float, y0: float, x1: float, y1: float, observer_elev: float = 0, target_elev: float = 0, frequency_mhz: float = None) Dataset[source]#

Compute elevation profile and visibility along a straight line.

Parameters:
  • raster (xarray.DataArray) – Elevation raster.

  • x0 (float) – Observer location in data-space coordinates.

  • y0 (float) – Observer location in data-space coordinates.

  • x1 (float) – Target location in data-space coordinates.

  • y1 (float) – Target location in data-space coordinates.

  • observer_elev (float) – Height above terrain at the observer.

  • target_elev (float) – Height above terrain at the target.

  • frequency_mhz (float, optional) – Radio frequency in MHz. When set, first Fresnel zone clearance is computed at each sample point.

Returns:

Dataset with dimension sample containing variables distance, elevation, los_height, visible, x, y, and optionally fresnel_radius and fresnel_clear.

Return type:

xarray.Dataset