fn snap_nodes_to_line(pts: &[Pt2D], pl: &PolyLine) -> Vec<Distance>