In plane geometry, a shear mapping is a linear map that displaces each point in fixed direction, by an amount proportional to its signed distance from a line that is parallel to that direction. This type of mapping is also called shear transformation, transvection, or just shearing.
An example is the mapping that takes any point with coordinates to the point . In this case, the displacement is horizontal, the fixed line is the -axis, and the signed distance is the coordinate. Note that points on opposite sides of the reference line are displaced in opposite directions.
Shear mappings must not be confused with rotations. Applying a shear map to a set of points of the plane will change all angles between them (except straight angles), and the length of any line segment that is not parallel to the direction of displacement. Therefore it will usually distort the shape of a geometric figure, for example turning squares into non-square parallelograms, and circles into ellipses. However a shearing does preserve the area of geometric figures, the alignment and relative distances of collinear points. A shear mapping is the main difference between the upright and slanted (or italic) styles of letters.
The same definition is used in three-dimensional geometry, except that the distance is measured from a fixed plane. A three-dimensional shearing transformation preserves the volume of solid figures, but changes areas of plane figures (except those that are parallel to the displacement). This transformation is used to describe laminar flow of a fluid between plates, one moving in a plane above and parallel to the first.
In the general -dimensional Cartesian space , the distance is measured from a fixed hyperplane parallel to the direction of displacement. This geometric transformation is a linear transformation of that preserves the -dimensional measure (hypervolume) of any set.
Horizontal and vertical shear of the plane
In the plane , a horizontal shear (or shear parallel to the x axis) is a function that takes a generic point with coordinates to the point ; where is a fixed parameter, called the shear factor.
The effect of this mapping is to displace every point horizontally by an amount proportionally to its coordinate. Any point above the -axis is displaced to the right (increasing ) if , and to the left if . Points below the -axis move in the opposite direction, while points on the axis stay fixed.
Straight lines parallel to the -axis remain where they are, while all other lines are turned, by various angles, about the point where they cross the -axis. Vertical lines, in particular, become oblique lines with slope . Therefore the shear factor is the cotangent of the angle by which the vertical lines tilt, called the shear angle.
A vertical shear (or shear parallel to the -axis) of lines is similar, except that the roles of and are swapped. It corresponds to multiplying the coordinate vector by the transposed matrix:
The vertical shear displaces points to the right of the -axis up or down, depending on the sign of . It leaves vertical lines invariant, but tilts all other lines about the point where they meet the -axis. Horizontal lines, in particular, get tilted by the shear angle to become lines with slope .
General shear mappings
For a vector space V and subspace W, a shear fixing W translates all vectors parallel to W.
To be more precise, if V is the direct sum of W and W′, and we write vectors as
- v = w + w′
correspondingly, the typical shear fixing W is L where
- L(v) = (w + Mw′) + w ′
where M is a linear mapping from W′ into W. Therefore in block matrix terms L can be represented as
The following applications of shear mapping were noted by William Kingdon Clifford:
- "A succession of shears will enable us to reduce any figure bounded by straight lines to a triangle of equal area."
- "... we may shear any triangle into a right-angled triangle, and this will not alter its area. Thus the area of any triangle is half the area of the rectangle on the same base and with height equal to the perpendicular on the base from the opposite angle."
An algorithm due to Alan W. Paeth uses a sequence of three shear mappings (horizontal, vertical, then horizontal again) to rotate a digital image by an arbitrary angle. The algorithm is very simple to implement, and very efficient, since each step processes only one column or one row of pixels at a time.
- Definition according to Weisstein, Eric W. Shear From MathWorld − A Wolfram Web Resource
- William Kingdon Clifford (1885) Common Sense and the Exact Sciences, page 113
- Mike May S.J. Pythagorean theorem by shear mapping, from Saint Louis University; requires Java and Geogebra. Click on the "Steps" slider and observe shears at steps 5 and 6.
- Alan Paeth (1986), A Fast Algorithm for General Raster Rotation. Proceedings of Graphics Interface '86, pages 77–81.