We don't want to throw away z, so we'll do a 2D to 2D projection:
Do this as a sequence of transformations
That is,
Represent the Mobius transformation as a matrix
/ \ | a b c | | d e f | | g h i | \ /
Then, using the code
we can map the four planes.
Each of these gives two ordinary linear equations. (Why?) Just the right number. (Why?) Solve them.
The result is
/ \ | 1 (mu + md) / (mu - md) 0 | | 0 (zf + fn) / (zf - zn) -2*zf*zn / (zf - zn) | | 0 1 0 | \ /
Exercise. Check that this matrix creates the correct Mobius transformation.
Exercise. Compare this matrix to the one in the notes. It should be the same with the y row and column deleted. Why is it different?
Exercise. Solve the equations.
Exercise. Show that our 2D to 2D projection, followed by orthogonal projection is the same as the 2D to 1D projection just above.
Exercise. Extend these results to 3D, and compare to the matrices given in the notes.
z' -> (z*(zf + zn) -2*zf*zn ) / z*(zf - zn)
Note the possible numeric problems.