Sources
Delphi Russian Knowledge Base
DRKB - это самая большая и удобная в использовании база знаний по Дельфи в рунете, составленная Виталием Невзоровым

Проверка пересечения двух отрезков

01.01.2007
{ **** UBPFD *********** by kladovka.net.ru ****
>> Проверка пересечения двух отрезков
 
X1,Y1,X2,Y2 - координаты первого отрезка
X3,Y3,X4,Y4 - координаты второго отрезка
Возвращает True, если отрезки пересекаются, иначе - False.
 
Зависимости: System
Автор:       Fenik, fenik@nm.ru, Новоуральск
Copyright:   Николай Федоровских
Дата:        24 ноября 2005 г.
********************************************** }
 
function CrossLines(X1,Y1,X2,Y2, X3,Y3,X4,Y4: Integer): Boolean;
begin
  Result := (((X3-X1)*(Y2-Y1) - (Y3-Y1)*(X2-X1)) *
             ((X4-X1)*(Y2-Y1) - (Y4-Y1)*(X2-X1)) <= 0)
            and
            (((X1-X3)*(Y4-Y3) - (Y1-Y3)*(X4-X3)) *
             ((X2-X3)*(Y4-Y3) - (Y2-Y3)*(X4-X3)) <= 0)
end;