Вычислять фигуры на основе отрицательного пространства, созданного другими фигурами в контейнере

Это больше математический вопрос, чем что-либо еще.

Я работаю над программным обеспечением для планирования книг, в котором рекламные объявления могут размещаться на страницах историй. История на самом деле занимает 100% страницы, а поверх нее размещаются рекламные формы.

введите описание изображения здесь

Изображение слева показывает страницу с только формой истории, прежде чем размещать рекламу.
Изображение справа показывает рекламу, размещенную в верхней части формы истории.

Мой вопрос в его основной форме: Если у меня есть количество объявлений, а также расположение и размеры всех объявлений, как я могу рассчитать отрицательное зеленое пространство, оставшееся от объявлений, в виде отдельных фигур? Количество объявлений, их размещение и размеры могут существенно различаться.

Я спрашиваю об этом потому, что после размещения всех рекламных форм мы разрешаем клиенту «объединить страницу». Это тогда становится плоским изображением. Но я хочу выделить области, которые являются «историей», поместив прямоугольник поверх них с низкой непрозрачностью.

$layoutW = 6;
$layoutH = 8;

$adCount = 3;

$ad1[‘x’] = 0;
$ad1[‘y’] = 0;
$ad1[‘w’] = 2;
$ad1[‘h’] = 2;

$ad2[‘x’] = 2;
$ad2[‘y’] = 1;
$ad2[‘w’] = 4;
$ad2[‘h’] = 7;

$ad3[‘x’] = 0;
$ad3[‘y’] = 6;
$ad3[‘w’] = 2;
$ad3[‘h’] = 2;

Является ли то, что я пытаюсь достичь, слишком сложно? Любые мысли или понимание приветствуется.

2

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]