Находит пересечение отрезка с прямой линией.
Visual Basic:
Function CrossSegmentAndStraightLine(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 равно нулю, пересечение отсутствует, единице - есть пересечение, двум - отрезок лежит на прямой.