Learn R Programming

TDLM (version 1.1.3)

extract_spatial_information: Extract distances and surface areas from a spatial object

Description

This function returns a matrix of distances between locations (in kilometers) along with a vector of surface areas for the locations (in square kilometers).

Usage

extract_spatial_information(
  geometry,
  id = NULL,
  great_circle = FALSE,
  show_progress = FALSE
)

Value

A list composed of two elements. The first element is a square matrix

representing the great-circle distances (in kilometers) between locations. The second element is a vector containing the surface area of each location (in square kilometers).

Arguments

geometry

A spatial object that can be handled by the sf package.

id

The name or number of the column to use as rownames and colnames for the output distance matrix (optional, NULL by default). A vector with a length equal to the number of locations can also be used.

great_circle

A boolean indicating whether distances and surface areas should be computed using longitude/latitude coordinates (see Details).

show_progress

A boolean indicating whether a progress bar should be displayed.

Author

Maxime Lenormand (maxime.lenormand@inrae.fr)

Details

The geometry must be projected in a valid coordinate reference system (CRS). By default, if great_circle = TRUE, the coordinates will be reprojected in degrees longitude/latitude to compute great-circle distances between centroids using an internal function, and surface areas will be calculated using sf::st_area(). If great_circle = FALSE, the coordinates are assumed to be planar (e.g., in meters) and Euclidean distances will be used.

See Also

Associated functions: extract_distances() extract_opportunities()

Examples

Run this code
data(county)

res <- extract_spatial_information(county, id = "ID")

dim(res$distance)

length(res$surface)

Run the code above in your browser using DataLab