# affine.psp: Apply Affine Transformation To Line Segment Pattern In spatstat.geom: Geometrical Functionality of the 'spatstat' Family

 affine.psp R Documentation

## Apply Affine Transformation To Line Segment Pattern

### Description

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

### Usage

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


### Arguments

 X Line Segment pattern (object of class "psp"). mat Matrix representing a linear transformation. vec Vector of length 2 representing a translation. ... Arguments passed to affine.owin affecting the handling of the observation window, if it is a binary pixel mask.

### Details

The line segment pattern, and its window, are subjected first to the linear transformation represented by mat (multiplying on the left by mat), and are then 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 line segment pattern (of class "psp") representing the result of applying the affine transformation.

### Author(s)

and \rolf

affine, affine.owin, affine.ppp, affine.im, flipxy, rotate, shift

### Examples

  oldpar <- par(mfrow=c(2,1))
X <- psp(runif(10), runif(10), runif(10), runif(10), window=owin())
plot(X, main="original")
# shear transformation
Y <- affine(X, matrix(c(1,0,0.6,1),ncol=2))
plot(Y, main="transformed")
par(oldpar)
#
# rescale y coordinates by factor 0.2
affine(X, diag(c(1,0.2)))


spatstat.geom documentation built on Oct. 20, 2023, 9:06 a.m.