Given line1 = {p1, p2}; line2 = {p3, p4}; you could define two points on these lines: l1 = {1 - u1, u1}.line1; l2 = {1 - u2, u2}.line2; and just solve for the intersection: l1 /. Solve[l1 == l2, {u1, u2}]