Блог пользователя Barricadenick

Автор Barricadenick, 11 лет назад, По-русски

Привет всем! Есть такая задача: Необходимо найти сумму Минковского для двух почти выпуклых многоугольников, где почти выпуклый многоугольник — многоугольник, полученный из выпуклого многоугольника путем замены некоторых ребер дугами с углом от 0 до PI радиан. (Сумма Минковского для двух многоугольников (a), (b) равна многоугольнику, полученному путем прибавления каждой точки многоугольника (a) к каждой точке многоугольника b.)

В идеале асимптотика O(n + m), где n — количество вершин первого почти выпуклого многоугольника, m — количество вершин второго почти выпуклого многоугольника.

Для просто выпуклых многоугольников сумма Минковского тривиальна, но задача с заменой некоторых ребер дугами меня ставит в тупик. Прошу помочь советом/идеей/какой-либо литературой/решением. Заранее благодарен!

  • Проголосовать: нравится
  • +14
  • Проголосовать: не нравится

»
11 лет назад, # |
Rev. 2   Проголосовать: нравится -17 Проголосовать: не нравится

Задача весьма интересная. А откуда Вы ее взяли?

UPD. Гуглинг по запросу "сумма Минковского для невыпуклых многоугольников" дает ссылку на эту статью. Этой статьи уже достаточно, чтобы построить рабочий алгоритм для Вашего случая.

»
11 лет назад, # |
  Проголосовать: нравится 0 Проголосовать: не нравится

Похоже без аппроксимации дуги в дофига отрезков фиг сделаешь... :(