def METHOD_NAME(e, pts):
    """
     Basic edge routing with lines. The layout pass has already provided to list of points through which
     the edge shall be drawn. We just compute the position where to adjust the tail and head.
    """
    assert hasattr(e, "view")
    tail_pos = rectangle_point_intersection(e.v[0].view, p = pts[1])
    head_pos = rectangle_point_intersection(e.v[1].view, p = pts[-2])
    pts[0] = tail_pos
    pts[-1] = head_pos
    e.view.head_angle = angle_between_vectors(pts[-2], pts[-1])