spatstat (version 1.3-2)

affine: Apply Affine Transformation

Description

Applies any affine transformation of the plane (linear transformation plus vector shift) to a plane geometrical object, such as a point pattern or a window.

Usage

affine(X, mat=diag(c(1,1)), vec=c(0,0))

Arguments

X
Any suitable dataset representing a two-dimensional object, such as a point pattern (object of class "ppp"), or a window (object of class "owin").
mat
Matrix representing a linear transformation.
vec
Vector of length 2 representing a translation.

Value

  • Another object of the same type, representing the result of applying the affine transformation.

synopsis

affine(X, ...)

Details

This is generic. Methods are provided for point patterns (affine.ppp) and windows (affine.owin).

First the linear transformation represented by mat is applied (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.

See Also

affine.ppp, affine.owin, rotate, shift

Examples

library(spatstat)
  data(cells)
  # shear transformation
  X <- affine(cells, matrix(c(1,0,0.6,1),ncol=2))
  plot(X)
  # rescale y coordinates by factor 1.3
  plot(affine(cells, diag(c(1,1.3))))