Найдите видимую область перекрывающихся полигонов внутри многоугольника в Unity - PullRequest
0 голосов
/ 07 марта 2020

Я хочу найти «видимую» область нескольких перекрывающихся полигонов.

Допустим, у меня есть многоугольник polygonA, и пусть область будет 100%

List<Vector2> polygonA; // points CW

enter image description here

Теперь у меня есть еще один многоугольник внутри polygonA, который polygon1 (зеленый), и его площадь на данный момент легко вычисляется. Допустим, площадь polygon1 равна area_p1%

List<vector2> polygon1; // points CW

enter image description here

Теперь у меня есть еще один многоугольник polygon2 (красный) внутри polygonA, который перекрывает polygon1, поэтому теперь область polygon1 изменено. на данный момент площадь% красного цвета легко рассчитать, но тогда какой-то другой многоугольник будет перекрывать красный многоугольник, и он будет продолжаться.

List<vector2> polygon2; // red

enter image description here

Итак, как мне рассчитать% площади видимого цвета внутри polygonA.

Я думаю, что Clipper.cs может помочь, но я не могу найти способ его изобразить в единстве.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...