better polygon intersection testing