TransformationFunction

TransformationFunction[data]

represents a transformation function that applies geometric and other transformations.

Details

  • TransformationFunction[] objects are generated by constructors such as TranslationTransform, RotationTransform, etc.
  • TransformationFunction[][x] applies the transformation function to a vector x, returning a transformed vector.
  • TransformationFunction[][{x1,x2,}] for a list of vectors applies the transformation to each vector xi, producing a list of transformed vectors.
  • TransformationFunction works with both numerical and symbolic vectors and represents a linear fractional transformation , where AMatrices[{m,n}], bMatrices[{m,1}], cMatrices[{1,n}] and dMatrices[{1,1}].
  • For smaller dimensions, it is typically displayed as an transformation matrix . TransformationMatrix can be used to extract the transformation matrix.
  • Composition[t1,t2] where ti has transformation matrix gives a new TransformationFunction object with transformation matrix .
  • InverseFunction[t] where t has transformation matrix gives a new TransformationFunction object with transformation matrix where is the matrix inverse.
  • GeometricTransformation can be used to represent the effect of applying a TransformationFunction object to geometrical or graphics objects when restricted to affine transformations.
  • TransformationFunction[][prop] gives the transformation property prop. For a transformation function with transformation matrix , properties include:
  • "AffineQ"whether the transformation is affine or not, it gives True if both c and d are zero
    "AffineMatrix"the matrix A
    "AffineVector"the vector b
    "FractionalVector"the vector c
    "FractionalConstant"the constant d
    "ArgumentLength"the length n of the vector x
    "ResultLength"the length m of the result vector
    "TransformationMatrix"

Examples

open allclose all

Basic Examples  (1)

Create a rotation transform:

This rotates the vector {x,y} by angle θ:

Scope  (15)

Constructing TransformationFunction  (10)

A translation by the vector {qx,qy,qz}:

A rotation around the axis:

Scaling along the coordinate axes:

Shearing in the direction by an angle θ:

Reflecting in the plane:

Rescaling the box [xmin, xmax][ymin, ymax] to the unit square:

A general TransformationFunction:

A linear transformation:

An affine transformation:

A linear fractional transformation:

Working with TransformationFunction as a Function  (4)

Here is a rotation of around the axis:

This transforms the axis:

This transforms a list of vectors:

Composing two transformations:

Computing the inverse:

This shows they are inverses:

Computing the partial derivative :

Working with TransformationFunction as a Formula  (1)

This defines a general transform:

This is the corresponding formula:

A derivative:

A limit:

An integral:

A plot:

Applications  (2)

TransformationFunction can be used as an argument to GeometricTransformation:

Integrate a function over a rhombic region:

defines a change of variables that maps the unit square to the integration region:

The integrand in the new coordinates:

The Jacobian:

Properties & Relations  (1)

Find the ^(th) power of a transformation:

Apply t five times:

Apply tt[5]:

Find the ^(th) iteration using RSolve:

Introduced in 2007
 (6.0)
 |
Updated in 2018
 (11.3)
2019
 (12.0)