# Indicate Polygons at the Border

`polyAtBorder.Rd`

Determines which polygons of a `"SpatialPolygons"`

object are at the border, i.e. have coordinates in common with the
spatial union of all polygons (constructed using
`unionSpatialPolygons`

).

## Usage

```
polyAtBorder(SpP, snap = sqrt(.Machine$double.eps),
method = "rgeos", ...)
```

## Arguments

- SpP
an object of class

`"SpatialPolygons"`

.- snap
tolerance used to consider coordinates as identical.

- method
method to use for

`unionSpatialPolygons`

. Defaults to`"rgeos"`

, since polyclip uses integer arithmetic, which causes rounding errors usually requiring tuning of (i.e., increasing) the tolerance parameter`snap`

(see example below).- ...
further arguments passed to the chosen

`method`

.

## Examples

```
## Load districts of Germany
load(system.file("shapes", "districtsD.RData", package = "surveillance"))
## Determine districts at the border and check the result on the map
if (requireNamespace("rgeos")) {
atBorder <- polyAtBorder(districtsD, method = "rgeos")
if (interactive()) plot(districtsD, col = atBorder)
table(atBorder)
}
## For method = "polyclip", a higher snapping tolerance is required
## to obtain the correct result
if (requireNamespace("polyclip")) {
atBorder <- polyAtBorder(districtsD, snap = 1e-6, method = "polyclip")
if (interactive()) plot(districtsD, col = atBorder)
table(atBorder)
}
```