Проверка попадания точки в треугольник

Проверка попадания точки в треугольник

{ **** UBPFD *********** by kladovka.net.ru ****
>>
Проверяет попадает ли точка P в треугольник ABC.
Вершины должны быть перечислены против часовой стрелки.
Зависимости: нет
Автор: Fenik, <a href="mailto:fenik@nm.ru">fenik@nm.ru</a>, Новоуральск
Copyright: Николай Федоровских
Дата: 8 октября 2004 г.
********************************************** }

function PtInTriang(const P, A, B, C: TPoint): Boolean;
{Внимание!! Вершины должны быть заданы против часовой стрелки!
  A
  / \
  / \
  B----C }

begin
 Result := False;
 if (P.x-A.x)*(A.y-B.y) - (P.y-A.y)*(A.x-B.x) >= 0 then
 if (P.x-B.x)*(B.y-C.y) - (P.y-B.y)*(B.x-C.x) >= 0 then
 if (P.x-C.x)*(C.y-A.y) - (P.y-C.y)*(C.x-A.x) >= 0 then
  Result := True;
end;

Отправить комментарий

Проверка
Антиспам проверка
Image CAPTCHA
...