docs: def lines_touch_2D(ab, cd):
      '''
      lines_touch_2D((a,b), (c,d)) is equivalent to lines_colinear((a,b), (c,d)) |
      numpy.isfinite(line_intersection_2D((a,b), (c,d))[0])
      '''
      return lines_colinear(ab, cd) | np.isfinite(line_intersection_2D(ab, cd)[0])