Моя аналитическая геометрия ржавая, но как сделать точечный продукт с 3 векторами?

аюсь проверить, когда 3 точки (двойные) коллинеарны в 2-D. Я нашел разные функции Паскаля, которые возвращают true, если это проверено; эти функции используют целое число для указания координат X и Y. Мне нужно более точное вычисление по крайней мере, чтобы первые 3 цифры десятичной части X и Y выражались в виде двойного типа. Кто может мне помочь с этим?

Я нашел эту функцию:

function Collinear(x1, y1, x2, y2, x3, y3: Double): Boolean;
begin
  Result := (((x2 - x1) * (y3 - y1) - (x3 - x1) * (y2 - y1)) = 0);
end;

Но я думаю, что расчет никогда не будет 0. Должен ли я использовать что-то подобное?

function Collinear(x1, y1, x2, y2, x3, y3: Double): Boolean;
begin
  Result := (((x2 - x1) * (y3 - y1) - (x3 - x1) * (y2 - y1)) < 0.01);
end;

Ответы на вопрос(2)

Ваш ответ на вопрос