Страница 1 из 1
Сравнение слоев
Добавлено: 10 авг 2010, 07:18
Воронин С.В.
Господа, встала проблема сравнения 2-х, незначительно отличающихся слоев.
Как их сравнить, чтобы выделить отличия?
Re: Сравнение слоев
Добавлено: 10 авг 2010, 08:25
AndreyL
Какие слои? Полигональные, линейные, точечные, растровые, еще какие? И что значит "сравнить"? Сравнить атрибутику, или геометрию?
Re: Сравнение слоев
Добавлено: 10 авг 2010, 13:54
Воронин С.В.
Прошу извенить за неточность.
Слои полигональные.
А сравнить необходимо геометрию, да и атрибуты сравнить не помешает, так как во втором слое на 2 полигона меньше.
Суть в том, что первый слой правился, но остался его дубликат, а какие изменения внесены не понятно.
Re: Сравнение слоев
Добавлено: 10 авг 2010, 20:11
AndreyL
Существует ли в атрибутивных таблицах слоев какое либо поле или набор полей, однозначно идентифицирующие полигон (в реляционной теории это называется "первичный ключ")? Например улица и номер дома (плюс номер строения) однозначно идентифицируют полигон ДОМ. Второго такого точно нет на этой карте. Тогда можно сразу определить, какие полигоны были удалены или добавлены.
Хотя, если Вам не сильно надо знать, как были изменены конкретные полигоны, то все проще. Например, это геологическая или почвенная карта и все зависит от одного неуникального поля (например "тип отложений" и полигонов с одинаковым типом отложений куча). И достаточно определить участки, на которых изменился тип отложений, т.е. на первом слое на каком то участке были одни породы/почвы, а на втором стали другие.
Т.е. попрошу Вас подробнее описать задачу, иначе не понятно, какое хотелось бы видеть решение.
Re: Сравнение слоев
Добавлено: 11 авг 2010, 00:09
AndreyL
В общем в любом случае можно сделать объединение слоев (ArcToolbox->Analysis Tools->Overlay->Union) - появится слой с кучей непересекающихся полигончиков с полностью сохраненной атрибутикой всех исходных слоев.
Для случая, если интересует изменение геометрии каждого полигона. Если была изменена геометрия полигона, то возникнут полигоны у которых в атрибутике значения в полях, соответствующих первичным ключам первого и второго слоя, не будут совпадать.
Для случая, если интересует изменение типа - опять же возникнут полигончики, у которых в атрибутике значения в полях, соответствующих типам первого и второго слоя, не будут совпадать. Потом останется выбрать несовпадающие и, как поется в старой доброй детской песенке: "делай с ним что хошь".
Не исключено, что только что я велосипед придумал, возможно даже с квадратными колесами. Может кто чего еще предложит.
Re: Сравнение слоев
Добавлено: 11 авг 2010, 14:56
Дмитрий Барышников
ArcToolbox->Data Managment Tools->Data Comparison
Может это подойдет? Там есть различные варианты сравнения.
Re: Сравнение слоев
Добавлено: 11 авг 2010, 22:23
AndreyL
Bishop писал(а):ArcToolbox->Data Managment Tools->Data Comparison
Может это подойдет? Там есть различные варианты сравнения.
Можно и так, если нужен просто список всех совпадений-несовпадений. Опять-же, ждем уточнения задачи.
Re: Сравнение слоев
Добавлено: 12 авг 2010, 07:45
Воронин С.В.
Господа!
Спасибо большое.
Пока не получилось, но стало ясно направление.
Re: Сравнение слоев
Добавлено: 13 авг 2010, 12:06
Tansu
AndreyL писал(а):В общем в любом случае можно сделать объединение слоев (ArcToolbox->Analysis Tools->Overlay->Union) - появится слой с кучей непересекающихся полигончиков с полностью сохраненной атрибутикой всех исходных слоев.
Для случая, если интересует изменение геометрии каждого полигона. Если была изменена геометрия полигона, то возникнут полигоны у которых в атрибутике значения в полях, соответствующих первичным ключам первого и второго слоя, не будут совпадать.
Для случая, если интересует изменение типа - опять же возникнут полигончики, у которых в атрибутике значения в полях, соответствующих типам первого и второго слоя, не будут совпадать. Потом останется выбрать несовпадающие и, как поется в старой доброй детской песенке: "делай с ним что хошь".
Не исключено, что только что я велосипед придумал, возможно даже с квадратными колесами. Может кто чего еще предложит.
Может спрошу глупость, но очень интересно по теме.
1.Таблицы автоматически объединяются при объединении слоев?
2.Как распознать отличия, если объектов несколько сот, тысяч. Эти отличия каким-то образом отделяются в таблице? Или же их методом просмотра разыскиваешь?
Re: Сравнение слоев
Добавлено: 13 авг 2010, 16:04
AndreyL
Tansu писал(а):1.Таблицы автоматически объединяются при объединении слоев?
Да, автоматически, у объединенного слоя будет таблица со всеми полями всех слоев. Если в двух таблицах поля имеют одинаковые заголовки, то все равно будут созданы два поля - одно из одной таблицы, другое из другой.
Tansu писал(а):2.Как распознать отличия, если объектов несколько сот, тысяч. Эти отличия каким-то образом отделяются в таблице? Или же их методом просмотра разыскиваешь?
Без разницы, сколько тысяч. Как раз если бы объектов было два, то и огород городить бессмысленно. У несовпадающих объектов значения в целевых полях не будут совпадать - это и есть признак отличия. Разыскивать их лучше не визуальным просмотром, а выборкой. А как с этими отличиями потом поступать - все зависит от конкретной задачи.