`cir`

with `allowOverlap = TRUE`

,
`allowDuplicates = FALSE`

, `returnIndices = TRUE`

, `returnDistances = TRUE`

, and
`includeBehavior = "excludePixels"`

.
It is used inside `spread2`

, when asymmetry is active.
The basic algorithm is to run `cir`

just once, then add to the x,y coordinates of every locus.`R/neighbourhood.R`

`cirSpecialQuick.Rd`

This is a very fast version of `cir`

with `allowOverlap = TRUE`

,
`allowDuplicates = FALSE`

, `returnIndices = TRUE`

, `returnDistances = TRUE`

, and
`includeBehavior = "excludePixels"`

.
It is used inside `spread2`

, when asymmetry is active.
The basic algorithm is to run `cir`

just once, then add to the x,y coordinates of every locus.

`.cirSpecialQuick(landscape, loci, maxRadius, minRadius)`

- landscape
Raster on which the circles are built.

- loci
Numeric. An alternative to

`coords`

. These are the indices on`landscape`

to initiate this function. See`coords`

. Default is one point in centre of`landscape`

..- maxRadius
Numeric vector of length 1 or same length as coords

- minRadius
Numeric vector of length 1 or same length as

`coords`

. Default is`maxRadius`

, meaning return all cells that are touched by the narrow ring at that exact radius. If smaller than`maxRadius`

, then this will create a buffer or donut or ring.