Полигональный оверлей с новыми полигонами и уник.атрибутом

ArcGIS 8.x,9.x,10.x (Arcview, ArcEditor, Arcinfo).
Ответить
Каминский Вадим
Активный участник
Сообщения: 138
Зарегистрирован: 18 авг 2005, 18:05
Репутация: 0

Полигональный оверлей с новыми полигонами и уник.атрибутом

Сообщение Каминский Вадим »

Есть несколько полигональных перекрывающихся тем. Нужно сделать из них одну оверлейную тему, так чтобы образовались новые полигоны, полученные от перекрытия и им был присвоен уникальный атрибут. Например делаем оверлей 4 полигональных тем. Полигоны, полученные без перекрытия получают уникальный атрибут "0", полигоны, полученные наложением двух тем получают атрибут "1", полигоны, полученные наложением трех тем получают атрибут "2" и т.д. ????
Анна
Завсегдатай
Сообщения: 386
Зарегистрирован: 07 фев 2004, 14:31
Репутация: 7
Откуда: Лозанна
Контактная информация:

Сообщение Анна »

первое, что приходит в голову - сконвертировать все в растры, с присвоением полигонам значения 1, а тому, что за пределам полигонов - 0, и дальше сложить растры. То, что получится в результате - опять в покрытие.
Каминский Вадим
Активный участник
Сообщения: 138
Зарегистрирован: 18 авг 2005, 18:05
Репутация: 0

Сообщение Каминский Вадим »

Спасибо, Анна, а как сложить растры?
Анна
Завсегдатай
Сообщения: 386
Зарегистрирован: 07 фев 2004, 14:31
Репутация: 7
Откуда: Лозанна
Контактная информация:

Сообщение Анна »

а какое ПО?
Каминский Вадим
Активный участник
Сообщения: 138
Зарегистрирован: 18 авг 2005, 18:05
Репутация: 0

Сообщение Каминский Вадим »

ArcGis 9
Анна
Завсегдатай
Сообщения: 386
Зарегистрирован: 07 фев 2004, 14:31
Репутация: 7
Откуда: Лозанна
Контактная информация:

Сообщение Анна »

сначала в главном меню подключате tools -> extensions -> spatial analyst, потом его же подключате щелчком мыши по верхней части вида. Появиться панель spatial analyst. Выбираете в меню spatial analyst -> raster calculator и там, точно также как вы бы складывали величины в калькуляторе, нажимаете слой1 + слой2+ и т.д. Затем evaluate
Каминский Вадим
Активный участник
Сообщения: 138
Зарегистрирован: 18 авг 2005, 18:05
Репутация: 0

Сообщение Каминский Вадим »

Спасибо, будем пробовать. А вот как такую же процедуру сделать с перекрывающимися объектами в одном слое?
Анна
Завсегдатай
Сообщения: 386
Зарегистрирован: 07 фев 2004, 14:31
Репутация: 7
Откуда: Лозанна
Контактная информация:

Сообщение Анна »

а можете описать, что в принципе нужно сделать и на основе чего?
Каминский Вадим
Активный участник
Сообщения: 138
Зарегистрирован: 18 авг 2005, 18:05
Репутация: 0

Сообщение Каминский Вадим »

Существует полигональная тема зон охвата торговых центров. Эти зоны перекрывают друг-друга. Нобходимо получить слой, в котором не будет перекрывающихся полигонов, а будут полигоны показывающие интенсивность охвата. Т.е. при оверлее перекрывающихся полигонов нам нужно получить новые полигоны, которые можно будет классифицировать по перекрытию, для чего им должен даваться некий атрибут соответствующий степени перекрытия.
Каминский Вадим
Активный участник
Сообщения: 138
Зарегистрирован: 18 авг 2005, 18:05
Репутация: 0

Сообщение Каминский Вадим »

Надеюсь понятно объяснил
Анна
Завсегдатай
Сообщения: 386
Зарегистрирован: 07 фев 2004, 14:31
Репутация: 7
Откуда: Лозанна
Контактная информация:

Сообщение Анна »

я почему спросила, потому что в целом, судя по этому и предыдущим обсуждениям, мне кажется, имеет смысл делать весь анализ именно с растрами.
yumakaev
Активный участник
Сообщения: 143
Зарегистрирован: 10 мар 2004, 08:07
Репутация: 10
Откуда: Redlands
Контактная информация:

Сообщение yumakaev »

Если не хочется гарцевать между растровым и векторным форматами, то всё вполне можно проделать и в векторе.

РЕШЕНИЕ ДЛЯ МНОЖЕСТВА ТЕМ:

1) Во всех полигональных слоях создать по столбцу типа integer, с неповторяющимися именами, напр:
Слой 1: Attr1
Слой 2: Attr2 и т.д.

2) Заполнить этот столбец везде значением 1.

3) ArcToolbox -> Analysis Tools -> Overlay -> Union
Опции:
Join Attributes - All
Gaps Allowed

4) В полученном после Union слое удалить все ненужные атрибуты (если мешаются под ногами), кроме Attr1, Attr2 и остальных, созданных в шаге 1. Создать новый атрибут integer SumAttr.

5) Заполнить SumAttr значением Attr1+Attr2+...-1. Всё.
Каминский Вадим
Активный участник
Сообщения: 138
Зарегистрирован: 18 авг 2005, 18:05
Репутация: 0

Сообщение Каминский Вадим »

Спасибо разобрался. Но вот как такое для одной темы сделать?
yumakaev
Активный участник
Сообщения: 143
Зарегистрирован: 10 мар 2004, 08:07
Репутация: 10
Откуда: Redlands
Контактная информация:

Сообщение yumakaev »

Никак :( . Покопался с инструментами, они не делают того, что нужно. UNION работает на одной теме, но результат получается, увы, не тот, что со множеством тем (на пересечени полигонов получаются дублирующиеся полигоны). Вот поэтому я лично не люблю нетопологические данные :evil: - я пока не видел нормально реализованного инструментария, который реально позволял бы задействовать все потенциальные преимущества нетопологического подхода.

Так что два варианта: либо из одной темы сначала выделить несколько разных (см команду SELECT), либо поискать какие-нибудь скрипты на ArcScripts - может, кто и реализовал то что нужно.
Каминский Вадим
Активный участник
Сообщения: 138
Зарегистрирован: 18 авг 2005, 18:05
Репутация: 0

Сообщение Каминский Вадим »

Да, в том то вся и заморочка, что юнион делает дубли. Работать с нетопологическими данными не хочется, но жизнь заставляет. Когда строишь зоны охвата в нетворк аналисте 3 арки , для большого кол-ва точек, то полигоны перекрываются, а строить для каждой точки отдельно... :shock: Сейчас поставил Арк 9.1, покапаюсь в его нетворке, может там все получше будет :) . Всем спасибо .
Ответить

Вернуться в «ArcGIS»

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

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