Shear changes the angle between two axes in the object. It is defined by specifying an axis to shift, from_axis, and an axis to shift the from_axis towards, to_axis. You also specify a variable, amount, which is how far along the to_axis a point at 1 on the from_axis should move.
A point at 1 on the from_axis and 0 on the to_axis becomes 1 on the from_axis and amount on the to_axis. More generally a point at x on the from_axis and y on the to_axis becomes x on the from_axis and (y + x amount) on the to_axis.
object shear(axis from_axis, axis to_axis, double amount, object x);
The example is shown in figure 7
green_cube = shear(Z,X,0.3,green_cube);
Figure 7: Shearing a cube from Z to X an amount of 0.3.