Полигон внутри многоугольника внутри многоугольника

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

Например:

+--------------------------------------------+
|                                            |
|   +----------------+          +--------+   |
|   |                |         /         |   |
|   |   +--------+   |        /          |   |
|   |   |        |   |       /  +----(2)-+   |
|   |   |        |   |      /   |            |
|   |   +----(3)-+   |     /    |   +---+    |
|   |                |    +-----+   |   |    |
|   +------------(2)-+              +(2)+    |
|                                            |
+----------------------------------------(1)-+

Как узнать «глубину» всех полигонов? Другими словами, как узнать, сколько полигонов охватывает многоугольник? «Глубина» - это числа в скобках.

Я мог бы посчитать, сколько раз точка многоугольника находится внутри всех других многоугольников, но это имеет квадратичную сложность. Как вычислить эти глубины быстрее?

Ответы на вопрос(4)

Ваш ответ на вопрос