R: Apply Affine Transformation To Window

affine.owin {spatstat.geom} | R Documentation

## Apply Affine Transformation To Window

### Description

Applies any affine transformation of the plane (linear transformation plus vector shift) to a window.

### Usage

      ## S3 method for class 'owin'
    affine(X, mat=diag(c(1,1)), vec=c(0,0), ..., rescue=TRUE)

### Arguments

`X` | Window (object of class `"owin"`).
`mat` | Matrix representing a linear transformation.
`vec` | Vector of length 2 representing a translation.
`rescue` | Logical. If `TRUE`, the transformed window will be processed by `rescue.rectangle`.
`...` | Optional arguments passed to `as.mask` controlling the pixel resolution of the transformed window, if `X` is a binary pixel mask.

### Details

The window is subjected first to the linear transformation represented by `mat` (multiplying on the left by `mat`), and then the result is translated by the vector `vec`.

The argument `mat` must be a nonsingular 2 * 2 matrix.

This is a method for the generic function `affine`.

### Value

Another window (of class `"owin"`) representing the result of applying the affine transformation.

### Author(s)

Adrian Baddeley Adrian.Baddeley@curtin.edu.au

and Rolf Turner r.turner@auckland.ac.nz

### See Also

`affine`, `affine.ppp`, `affine.psp`, `affine.im`, `rotate`, `shift`

### Examples

      # shear transformation
      shear <- matrix(c(1,0,0.6,1),ncol=2)
      X <- affine(owin(), shear)
      if(interactive()) plot(X)
      affine(letterR, shear, c(0, 0.5))
      affine(as.mask(letterR), shear, c(0, 0.5))

[Package spatstat.geom version 2.3-2 Index]