Applies any affine transformation of the plane (linear transformation plus vector shift) to a window.
# S3 method for owin
affine(X, mat=diag(c(1,1)), vec=c(0,0), …, rescue=TRUE)
Window (object of class "owin"
).
Matrix representing a linear transformation.
Vector of length 2 representing a translation.
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.
Another window (of class "owin"
) representing the
result of applying the affine transformation.
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
.
# NOT RUN { # 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)) # }