Копия Tool: Trimmed Line, 3 points
TrimLine3Pts[A,B,C, m1, m2] gives the segment shown.
A, B, C may fall in any order; the segment adjusts to follow. I find this helps produce clear diagrams, and stays partial loss of sanity. Notes: I prefer not to redefine the endpoints when C crosses A or B: Segment[A + Min[0, λ] a - m1 u, A + Max[1, λ] a + m2 u] Set the margins to 0 for an ordinary segment.