Доброе время суток!
Задался вопросом:
Есть несколько прямоугольников, наложенные друг на друга (с разными размерами и положениями).
Например это массив: 1) первый прямоугольник, его позиция, 2) второй прямоугольник, его позиция, ... n) последний прямоугольник и его позиция.
И нужно найти прямоугольник, который полностью перекрыт другими (back).
Или иными словами, получить номера прямоугольников, которые хотя-бы частично, но видны (front).
struct rectArray
{
RECT r; // размер и позиция прямоугольника
int i; // номер прямоугольника (где 0, 1, ... - задний план; ..., n-2, n-1 - передний план)
};
array<rectArray> ra;
Где можно найти такой алгоритм, или как грамотно его реализовать?
Подкиньте идейки, пожалуйста!