У меня есть два двумерных прямоугольника, определяемых как origin (x, y) a размер (высота, ширина) и угол поворота (0-360 °). Я могу гарантировать, что оба прямоугольника имеют одинаковый размер.
Мне нужно рассчитать приблизительную площадь пересечения этих двух прямоугольников.
Расчет не обязательно должен быть точным, хотя это может быть. Я буду сравнивать результат с другими областями пересечения, чтобы определить наибольшую площадь пересечения в наборе прямоугольников, поэтому он должен быть только точным относительно других вычислений одного и того же алгоритма.
Я думал об использовании области ограничивающего прямоугольника пересекаемой области, но мне трудно получить вершины пересекаемой области из-за всех возможных случаев:
Я пишу эту программу в Objective-C в фреймворке Cocoa, для чего это стоит, поэтому, если кто-нибудь знает какие-либо ярлыки с помощью NSBezierPath
или что-то, что вы также можете предложить, тоже.