intersection. sweep line algo