Показать сообщение отдельно
  #12  
Старый 04-19-2022, 11:58
Василий Гончаров Василий Гончаров вне форума
Разработчик Robur
 
Регистрация: Oct 2016
Сообщения: 154
По умолчанию

Добрый день!

Методы пересечения многоугольников позволяют Вам считать объем между незамкнутыми линиями. При этом если линия незамкнута, то замкнутый контур строится путём дополнения линий либо вверх, либо вниз на максимальную отметку, за это отвечает параметр firstUp. Соответственно для Вашего случая, Вы можете поступить следующим образом:

1. Формируете линию из откоса бермы и полки бермы
2. Используете метод Intersect, передав туда первым параметром получившуюся линию, вторым линию земли и указав параметр firstUp в False. Таким образом Вы получите один или несколько контуров объема полученных как пересечение между линией бермы и линией земли.
3. Дальше для каждого из получившихся контуров Вы вызываете метод Difference между этим контуром контуром откоса насыпи, указав параметр firstUp в False. Получившиеся в результате операции разность контура будут представлять собой объем между бермой, землёй и откосом.
Ответить с цитированием