CGAL: тест перекрытия полигонов - PullRequest
0 голосов
/ 07 ноября 2018

Я ищу функцию, которая проверяет, содержит ли в 2D простой многоугольник еще один простой многоугольник. do_intersect как уже упоминалось здесь , возвращает true, даже если полигоны частично перекрываются. Какая функция подходит для проверки полного перекрытия?

Ответы [ 2 ]

0 голосов
/ 07 ноября 2018

Вы можете сначала использовать функцию do_intersect(), и если у вас нет пересечения, возьмите любую точку для P1 и проверьте, находится ли она внутри P2, используя has_on_bounded_side(). Затем, если P1 не включен в P2, сделайте то же самое для точки P2 со ссылкой на P1, чтобы сделать вывод.

0 голосов
/ 07 ноября 2018

Выпуклый многоугольник полностью содержится в другом выпуклом многоугольнике, если и только все его вершины содержатся внутри содержащего многоугольника.

Чтобы проверить, содержится ли точка внутри многоугольника, вы можете использовать функцию OpenCV pointPolygonTest () ( см. Описание здесь ) ( см. Пример использования здесь )

...