affine.psp | R Documentation |
Applies any affine transformation of the plane (linear transformation plus vector shift) to a line segment pattern.
## S3 method for class 'psp'
affine(X, mat=diag(c(1,1)), vec=c(0,0), ...)
X |
Line Segment pattern (object of class |
mat |
Matrix representing a linear transformation. |
vec |
Vector of length 2 representing a translation. |
... |
Arguments passed to |
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
.
Another line segment pattern (of class "psp"
) representing the
result of applying the affine transformation.
and \rolf
affine
,
affine.owin
,
affine.ppp
,
affine.im
,
flipxy
,
rotate
,
shift
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)))
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.