Я использую формулу для архивирования области параллелограмма
Математическая формула к векторному продукту: ((x1 * y2 - y1 * x2) + (x2 * y3 - y2 * x3) + (x3 * y4 - y3 * x4) + (x4 * y1 - y4 * x1)) / 2
Дело в том, что я делаю это "вручную":
(points[0].x * points[1].y - points[0].y * points[1].x) +
(points[1].x * points[2].y - points[1].y * points[2].x) +
(points[2].x * points[3].y - points[2].y * points[3].x) +
(points[3].x * points[0].y - points[3].y * points[0].x)) / 2
Есть ли способ архивировать тот же результат, используя что-то вроде reduce
, пытаясь избежать классического цикла for
?