Become an expert in R — Interactive courses, Cheat Sheets, certificates and more!
Get Started for Free

make.lacework

Construct Lacework Detector Design


Description

A lacework design comprises a square grid with detectors placed at regular distances along the grid lines (Efford unpubl.). This requires fewer detectors than uniform coverage at close spacing and is simpler than clustered designs, while providing good spatial coverage and protection from alignment bias (Efford 2019).

Usage

make.lacework(region, spacing = c(100, 20), times = NULL, origin = NULL, 
    rotate = 0, radius = NULL, detector = "multi", keep.design = TRUE)

Arguments

region

dataframe or SpatialPolygonsDataFrame with coordinates of perimeter

spacing

numeric 2-vector with major (grid) and minor spacings, or minor spacing only

times

numeric ratio major:minor spacing if spacing length 1

origin

numeric vector giving x- and y-cooordinates of fixed grid origin (origin is otherwise random)

rotate

numeric; number of degrees by which to rotate design clockwise about centroid of region bounding box

radius

numeric; detectors are dropped if they are further than this from a crossing

detector

character detector type – see make.grid

keep.design

logical; if TRUE then input argument values are retained

Details

If region is a SpatialPolygonsDataFrame then function elide from the package maptools is used for rotation. If rotation is requested when maptools is not available then no rotation is done and a warning is raised.

It is tidy for the major spacing (spacing[1]) to be a multiple of the minor spacing (spacing[2]); precisely one detector is then placed at each grid intersection. This outcome may also be achieved by providing only the minor spacing in the spacing argument and specifying an integer value for times.

In general it is better not to specify origin. Specifying both origin and rotate may result in incomplete coverage, as the desired grid is relative to the bounding box of the rotated region.

Set radius < spacing[1]/2 to break lacework into multiple cross-shaped arrays centred on the intersections (crossing points) and truncated at radius metres (assuming you follow advice and express all linear measurements in metres).

Value

An secr traps object. The attribute ‘crossings’ is a 2-column matrix with the coordinates of the intersection points. If keep.design is TRUE then the input argument values are retained in attribute ‘design’ (a list with first component function = 'make.lacework').

References

Efford, M. G. (2019) Non-circular home ranges and the estimation of population density. Ecology 100, e02580. https://esajournals.onlinelibrary.wiley.com/doi/10.1002/ecy.2580

See Also

Examples

trps <- make.lacework(possumarea, c(1000,100), rotate = 45, detector = 'proximity')
plot(trps, gridspace = 1000)
lines(possumarea)
points(attr(trps, 'crossings'), pch = 16)

secr

Spatially Explicit Capture-Recapture

v4.4.1
GPL (>= 2)
Authors
Murray Efford
Initial release
2021-05-01

We don't support your browser anymore

Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.