polygon overlap algorithm --David Caratelli