Pythagoras tree Affine
Affine transformations are used to create a Pythagoras tree.
Although a translation is a non-linear transformation in a 2-D Euclidean space described by Cartesian coordinates it becomes, in a 3-D projective space described by homogeneous coordinates, a simple linear transformation (a shear). The affine transformations (to create Left and Right branches) are the M1 and M2 (3-D transformation) matrices. Objects in the ApplyMatrix command are lifted to Z=1 (creating homogeneous coordinates) and results are lowered from Z=1 to Z=0 (making them visible in the 2-D Graphics view).