ShearingMatrix

ShearingMatrix[θ,v,n]

gives the matrix corresponding to shearing by θ radians along the direction of the vector v, and normal to the vector n.

Details

  • ShearingMatrix gives matrices corresponding to shearing with the origin kept fixed.
  • ShearingMatrix gives matrices with determinant 1, corresponding to area- or volume-preserving transformations.
  • In 2D, ShearingMatrix turns rectangles into parallelograms. ShearingMatrix[θ,{1,0},{0,1}] effectively slants by angle θ to the right.
  • In 3D, ShearingMatrix does the analog of shearing a deck of cards by angle θ in the direction v, with the cards being oriented so as to have normal vector n.

Examples

open allclose all

Basic Examples  (2)

A shearing by θ radians along the axis:

Apply a 30° shear along the axis to a square:

Scope  (5)

Shearing along the axis:

Shearing along the axis:

Shearing in the plane along the axis:

Shearing the plane along the axis:

A shearing by angle theta in the {1,1} direction in the line {1,-1}.p==0:

Transformation applied to a 2D shape:

Transformation applied to a 3D shape:

Applications  (2)

Applying the transformation to a surface:

Generate all simple (directions parallel to axes) shearing matrices for dimension n:

All shearings in 2D:

All shearings in 3D:

All shearings in 4D:

Properties & Relations  (4)

The determinant of a shearing matrix is 1; hence it preserves areas and volumes:

The inverse of ShearingMatrix[θ,v,n] is given by ShearingMatrix[-θ,v,n]:

The inverse of ShearingMatrix[θ,v,n] is also given by ShearingMatrix[θ,-v,n]:

The n^(th) power of a shearing matrix is again a shearing matrix with the same v and n:

Possible Issues  (3)

The order in which shearings are applied is significant:

Here the two different orders do not yield the same matrix:

The transformation is not defined for angles such that :

For non-orthogonal vectors, the direction is determined by the projection of the direction vector:

Neat Examples  (1)

The transformation applied to a sphere:

Introduced in 2007
 (6.0)