Центральные линии из полигонов

Вопросы по нескольким пакетам сразу, или вопросы, которые непонятно к какой ГИС отнести
Ответить
melody
Новоприбывший
Сообщения: 10
Зарегистрирован: 21 ноя 2010, 18:53
Репутация: 0
Откуда: Киев

Центральные линии из полигонов

Сообщение melody »

Есть ли у кого идеи по поводу генерирования центральных линий из полигонов? Подход с точками Вороного не подходит, так как обрабатывается довольно большой объем данных. Буду благодарна за любые мысли. Встречала такую фичу в ET Geowizards, но там она платная.
Донецков
Гуру
Сообщения: 3058
Зарегистрирован: 19 май 2010, 19:44
Репутация: 189

Re: Центральные линии из полигонов

Сообщение Донецков »

Если полигоны вытянутые, то в автокаде есть сторонние утилиты, которые позволяют строить среднюю линию, между граничными...
Аватара пользователя
laechoppe
Интересующийся
Сообщения: 45
Зарегистрирован: 18 ноя 2012, 12:54
Репутация: 11
Откуда: Минск
Контактная информация:

Re: Центральные линии из полигонов

Сообщение laechoppe »

Пару дней назад искал ответ на такой же вопрос (забегая вперед, скажу, что в итоге нарисовал вручную, благо не много было), но вот пара вариантов, которые может сработают (чаще всего встречались в результатах поиска):
1. через растр http://forums.arcgis.com/threads/72708- ... post254147
2. полигоны в линии, далее инструмент Collapse Dual Lines To Centerline (ArctoolBox-cartography-generalization)
melody
Новоприбывший
Сообщения: 10
Зарегистрирован: 21 ноя 2010, 18:53
Репутация: 0
Откуда: Киев

Re: Центральные линии из полигонов

Сообщение melody »

Спасибо за помощь. laechoppe, повезло вам, что можете вручную нарисовать (я, наверно, несколько лет тогда буду рисовать:)
Вариант через растр интересен, играю с параметрами, тяжело аргису такие объемы даются...
Вариант Collapse Dual Lines To Centerline не катит - разная ширина полигонов.
Заинтересовал вариант через автокад, позже буду пробовать (пока нет доступа к среде).
gamm
Гуру
Сообщения: 4168
Зарегистрирован: 15 окт 2010, 08:33
Репутация: 1107
Ваше звание: программист
Откуда: Казань

Re: Центральные линии из полигонов

Сообщение gamm »

melody писал(а):Есть ли у кого идеи по поводу генерирования центральных линий из полигонов?
одна идея называется skeleton, строится и на растре и на векторе, свободные программки попадались, гугль даст много ссылок на polygon skeleton. Результат правда не совсем тот, который предполагает человек.

вторя идея называется триангуляция Делоне, но нужно программировать: выделяют две "боковые" стороны (что само по себе иногда не тривиально), ставят на них много точек (много означает, что треугольники пойдут между сторонами), и триангулируют. Потом ведут линию (методом последовательно трассировки) через середины сторон, соединяющих противоположные стороны, проходя последовательно соседние треугольники. Для желающих абсолютной точности, точки этой линии немного двигают, чтобы расстояние до сторон стало одинаковым (занимает некоторое время, потому как О(n^2)) Не исключено, что такая приблуда есть в каком-нибудь SEXTANTE в готовом виде.
melody
Новоприбывший
Сообщения: 10
Зарегистрирован: 21 ноя 2010, 18:53
Репутация: 0
Откуда: Киев

Re: Центральные линии из полигонов

Сообщение melody »

Ваш второй метод "триангуляция Делоне" по результатам мне очень напоминает использование полигонов Вороного. Учитывая, во сколько раз увеличивается количество объектов при построении частых точек из линий, метод был отброшен сразу.
Александр Мурый
Гуру
Сообщения: 5173
Зарегистрирован: 26 сен 2009, 16:26
Репутация: 792
Ваше звание: званий не имею
Откуда: Москва

Re: Центральные линии из полигонов

Сообщение Александр Мурый »

melody писал(а):Ваш второй метод "триангуляция Делоне" по результатам мне очень напоминает использование полигонов Вороного.
Ну да, т.к. триангуляция Делоне и полигоны Вороного — две стороны одной геометрической медали.
Редактор материалов, модератор форума
gamm
Гуру
Сообщения: 4168
Зарегистрирован: 15 окт 2010, 08:33
Репутация: 1107
Ваше звание: программист
Откуда: Казань

Re: Центральные линии из полигонов

Сообщение gamm »

melody писал(а):Учитывая, во сколько раз увеличивается количество объектов при построении частых точек из линий, метод был отброшен сразу.
а зря. Обрабатывать нужно объект за объектом, потом все уничтожать, за исключением линии. Если делать самому, то работает быстро.
melody
Новоприбывший
Сообщения: 10
Зарегистрирован: 21 ноя 2010, 18:53
Репутация: 0
Откуда: Киев

Re: Центральные линии из полигонов

Сообщение melody »

gamm , метод очень красивый и дает 100%-й результат, и мне он очень импонирует, но количество исходящих объектов громадное.
Александр Мурый, в таких алгоритмах, к сожалению, не сильна.
Ответить

Вернуться в «Общий - ПО»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 4 гостя