affine.owin: Apply Affine Transformation To Window

affine.owinR 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 \times 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

and \rolf

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))

spatstat.geom documentation built on Sept. 18, 2024, 9:08 a.m.