# owin.object

##### Class owin

A class `owin`

to define the ``observation window'' of a point pattern

##### Details

In the spatstat library, a point pattern dataset must include
information about the window or region in which the pattern was
observed. A window is described by an object of class `"owin"`

.
Windows of arbitrary shape are supported.

An object of class `"owin"`

has one of three types:

`"rectangle"` : |
a rectangle in the two-dimensional plane with edges parallel to the axes |

`"polygonal"` : |
a region whose boundary is a polygon or several polygons. The region may have holes and may consist of several disconnected pieces. |

Objects of class `"owin"`

may be created by the function
`owin`

and converted from other types of data by the function
`as.owin`

.

They may be manipulated by the functions
`as.rectangle`

,
`as.mask`

,
`complement.owin`

,
`rotate`

,
`shift`

,
`affine`

,
`erosion`

,
`dilation`

,
`opening`

and
`closing`

.

Geometrical calculations available for windows include
`area.owin`

,
`perimeter`

,
`diameter.owin`

,
`boundingbox`

,
`eroded.areas`

,
`bdist.points`

,
`bdist.pixels`

,
and
`even.breaks.owin`

.
The mapping between continuous coordinates and pixel raster indices
is facilitated by the functions
`raster.x`

,
`raster.y`

and
`nearest.raster.point`

.

There is a `plot`

method for window objects,
`plot.owin`

. This may be useful if you wish to
plot a point pattern's window without the points for graphical
purposes.

There are also methods for
`summary`

and `print`

.

##### Warnings

In a window of type `"mask"`

, the
row index corresponds to increasing \(y\) coordinate,
and the column index corresponds to increasing \(x\) coordinate.

##### See Also

`owin`

,
`as.owin`

,
`as.rectangle`

,
`as.mask`

,
`summary.owin`

,
`print.owin`

,
`complement.owin`

,
`erosion`

,
`dilation`

,
`opening`

,
`closing`

,
`affine.owin`

,
`shift.owin`

,
`rotate.owin`

,
`raster.x`

,
`raster.y`

,
`nearest.raster.point`

,
`plot.owin`

,
`area.owin`

,
`boundingbox`

,
`diameter`

,
`eroded.areas`

,
`bdist.points`

,
`bdist.pixels`

##### Examples

```
# NOT RUN {
w <- owin()
w <- owin(c(0,1), c(0,1))
# the unit square
w <- owin(c(0,1), c(0,2))
# }
# NOT RUN {
if(FALSE) {
plot(w)
# plots edges of a box 1 unit x 2 units
v <- locator()
# click on points in the plot window
# to be the vertices of a polygon
# traversed in anticlockwise order
u <- owin(c(0,1), c(0,2), poly=v)
plot(u)
# plots polygonal boundary using polygon()
plot(as.mask(u, eps=0.02))
# plots discrete pixel approximation to polygon
}
# }
```

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