Находит пересечение двух отрезков.
Visual Basic:
Function CrossSegments(X11 As Double, Y11 As Double, X12 As Double, Y12 As Double,
X21 As Double, Y21 As Double, X22 As Double, Y22 As Double) As Points
(X11, Y11) (Y12, X12) - пара точек, задающая первый отрезок.
(X21, Y21) (X22, Y22) - пара точек, задающая второй отрезок.
Результат пересечения отрезков возвращается в коллекции Points. Если свойство Points.Count равно нулю, пересечение отсутствует, единице - есть одна точка пересечения, двум - отрезки лежат друг на друге.