# disc

##### Circular Window

Creates a circular window

##### Usage

`disc(radius=1, centre=c(0,0), …, mask=FALSE, npoly=128, delta=NULL)`

##### Arguments

- radius
Radius of the circle.

- centre
The centre of the circle.

- mask
Logical flag controlling the type of approximation to a perfect circle. See Details.

- npoly
Number of edges of the polygonal approximation, if

`mask=FALSE`

. Incompatible with`delta`

.- delta
Tolerance of polygonal approximation: the length of arc that will be replaced by one edge of the polygon. Incompatible with

`npoly`

.- …
Arguments passed to

`as.mask`

determining the pixel resolution, if`mask=TRUE`

.

##### Details

This command creates a window object representing a disc, with the given radius and centre.

By default, the circle is
approximated by a polygon with `npoly`

edges.

If `mask=TRUE`

, then the disc is approximated by a binary pixel
mask. The resolution of the mask is controlled by
the arguments `…`

which are passed to `as.mask`

.

The argument `radius`

must be a single positive number.
The argument `centre`

specifies the disc centre: it can be either
a numeric vector of length 2 giving the coordinates,
or a `list(x,y)`

giving the coordinates of exactly one point, or a
point pattern (object of class `"ppp"`

) containing exactly one point.

##### Value

An object of class `"owin"`

(see `owin.object`

)
specifying a window.

##### Note

This function can also be used to generate regular polygons,
by setting `npoly`

to a small integer value. For example
`npoly=5`

generates a pentagon and `npoly=13`

a triskaidecagon.

##### See Also

##### Examples

```
# NOT RUN {
# unit disc
W <- disc()
# disc of radius 3 centred at x=10, y=5
W <- disc(3, c(10,5))
#
plot(disc())
plot(disc(mask=TRUE))
# nice smooth circle
plot(disc(npoly=256))
# how to control the resolution of the mask
plot(disc(mask=TRUE, dimyx=256))
# check accuracy of approximation
area(disc())/pi
area(disc(mask=TRUE))/pi
# }
```

*Documentation reproduced from package spatstat, version 1.61-0, License: GPL (>= 2)*