Я написал функцию рисования, которая рисует различные экранные спрайты. Эти спрайты могут перекрываться только до определенной точки. Если им приходится сильно перекрывать друг друга, они становятся слишком затененными. В результате мне нужно определить, когда эти спрайты слишком сильно перекрываются. К счастью, проблема упрощается тем, что спрайты можно рассматривать как ортогональные прямоугольники. Я хотел бы знать, насколько эти прямоугольники перекрываются. Прямо сейчас я просто перебираю его, проверяя каждый пиксель в одном прямоугольнике, чтобы увидеть, содержит ли его другой. Я считаю это и рассчитываю процентное совпадение. Я думаю, что, возможно, есть лучший, менее грубый подход. Какой алгоритм я могу использовать, чтобы определить это?
Я использую wxwidgets.