/// @return a list of intersection points and the two neares neighbours of poly to the intersection point if line intersects poly, or an empty list else.
/// The first entry is the first intersec. pt. (if existing). The second and third entries are the nearest neighbours of the first intersec. pt. in poly
/// The fourth entry is the second intersec. pt. (if existing). The fifth and sixth entries are the nearest neighbours of the second intersec. pt. in poly