![]() |
|
![]() ![]() ![]() |
|
Smal |
|
|||
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 31.10.2004 Где: Санкт-Петербург Репутация: нет Всего: нет |
Задача:
по произвольному многоугольнику, заданному вершинами, построить внутреннюю область, каждая точка которой удалена от сторон более чем на X. При этом ищется решение в виде множества многоугольников, т.е. приближенное (т.к. в общем случае такая область - это множество криволинейных многоугольников). Я пытался использовать следующий алгоритм: 1. для каждого угла построить точку удаленную от сторон угла на Х. 2. Полученный многоугольник разбить на многоугольники. 3. Убить "неправильные" многоугольники. Сначала все выглядело красиво, пока не наткнулся на явный баг. (см. на картинке, синие линии - многоугольник, красные - биссектрисы, зеленый - внутренний многоугольник). Может кто-нибудь знает алгоритм для решения этой задачи. Добавлено @ 13:36 Да, кстати, баг в том, что не должно быть "выпирающего" вниз угла. Присоединённый файл ( Кол-во скачиваний: 8 ) ![]() |
|||
|
||||
amium |
|
|||
Новичок Профиль Группа: Участник Сообщений: 19 Регистрация: 2.12.2005 Репутация: нет Всего: нет |
По-мойму надо просто уменьшить координаты всех вершин многоугольика. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Алгоритмы" | |
|
Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Алгоритмы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |