Brocard Point of the Triangle

Given three points A, B and C,
find the point P such that angle(PAB) = angle(PBC) = angle(PCA).
Express tan(PAB) in terms of A, B and C.
construction of P
calculation of tan(PAB)
the other point P
coordinates of P

Constructions for a geometric proof. Not easy, it took me a few days, and I eventually had to back it out of an analytic calculation.

java applet or image[Java applet]
                        tan(PAB) = tan(B1,A1,B2)
                                 = (B1,B2)/(A1,B1) = AB/((A1,A) + (A,B1))

using   angle(A1,A,C) = right_angle - angle(A,A1,C)
        angle(A,A1,C) = angle(CAB)                        III 32

                        tan(PAB) = AB/(AC/sin(CAB) + AB/tan(ABC))

simplifying notation,   tan(PAB) = c/(b/sin(A) + c/tan(B))

and the expressions     c/(b/sin(A) + c/tan(B)),
                        a/(c/sin(B) + a/tan(C)),
                        b/(a/sin(C) + b/tan(A))   must all be equal.