Hey all;

As part of my research I have been modelling the effects of different obstructions on the illumination from a source. In essence, I find a point outside a geometrical shape or conic section and ascertain where the tangent points are on this shape from my external point. My simulations involve dozens of different external points, and I've got a generalized method for solving circular obstructions, which goes some thing like this;

Specified information: External point T (x,y), Circle centre C (g,f), Distance from external point to circle centre (D) and Circle Radius (R).

I can then compute the half angle beta formed by the tangent lines and the external point by calculating Beta = Arcsin(R/D).

However, trying to find a generalized method for computing the same angles for an arbitary ellipse causes me much more problems; I was trying to use Joachimsthal notation to solve it, but surely there must be a more readily apparent way that I'm just missing?

Any help could be very welcome, thanks in advance!