Аваст там, товарищи программисты!
У меня следующая проблема:
У меня есть два прямоугольника, перекрывающихся, как показано на рисунке ниже.

Я хочу выяснить, многоугольник, состоящий из точки ABCDEF.
Альтернативное рождественское описание: красный резак печенья срезает немного черного печенья. Я хочу вычислить черное печенье.
Каждый прямоугольник представляет собой структуру данных с 4 2d-вершинами.
Каков наилучший алгоритм для достижения этой цели?