дубляж

MapInfo, MapBasic
Ответить
Аватара пользователя
Тупик
Интересующийся
Сообщения: 36
Зарегистрирован: 16 ноя 2011, 15:56
Репутация: 0

дубляж

Сообщение Тупик » 24 июл 2012, 15:49

Мэпинфошка 11
каким запросом найти дубляж объектов пределах одной таблицы?

Аватара пользователя
Пётр Дубоделов
Завсегдатай
Сообщения: 271
Зарегистрирован: 21 апр 2009, 13:58
Репутация: 12
Откуда: Бурашево
Контактная информация:

Re: дубляж

Сообщение Пётр Дубоделов » 24 июл 2012, 16:00

здесь смотрели?

запрос - штука непростая, тем более на себя
"Если карта не соответствует местности, доверяй местности."

Аватара пользователя
Тупик
Интересующийся
Сообщения: 36
Зарегистрирован: 16 ноя 2011, 15:56
Репутация: 0

Re: дубляж

Сообщение Тупик » 24 июл 2012, 16:16

посмотрела,нашла хорошие утилиты,только не по проблеме.
может чего проглядела(
может еще варианты есть?

Аватара пользователя
Пётр Дубоделов
Завсегдатай
Сообщения: 271
Зарегистрирован: 21 апр 2009, 13:58
Репутация: 12
Откуда: Бурашево
Контактная информация:

Re: дубляж

Сообщение Пётр Дубоделов » 24 июл 2012, 16:20

уточните, Вам нужно избавиться от дублирования значений в строках, или же от объектов, которые строго накладываются друг на друга?
"Если карта не соответствует местности, доверяй местности."

Аватара пользователя
Institor
Активный участник
Сообщения: 243
Зарегистрирован: 22 апр 2011, 08:10
Репутация: 27
Откуда: Хабаровск

Re: дубляж

Сообщение Institor » 24 июл 2012, 16:42

Тоже в свое время задумывался над этим вопросом, но так как не особо было нужно, забросил.
Была мысль искать по координатам центроида.

Boris
Гуру
Сообщения: 4231
Зарегистрирован: 10 апр 2006, 22:34
Репутация: -344969098
Откуда: Париж

Re: дубляж

Сообщение Boris » 24 июл 2012, 17:22

поиск тождественности гео-объектов не простое дело, т.к. является задачей квадратичной размерности. кроме того он имеет массу тонкостей, в первую очередь что именно ищете - объекты повторно введенные из одного источника или объекты повторно введенные из разных источников и разным способом нарисованные. если грубо, то поиск объектов, если это только не точки, которые имеют один и тот же порядок ввода вершин и имеют у всех вершин тождественные координаты можно реализовать в мапбайсике, если же координаты имеют некоторый лаг, хотя бы доли миллиметра, то задача становится сильно сложнее.
Но есть способ без лишних усилий с высокой долей приблизительности, хотя в реальности дает совпадающие объекты в 99.999% случаев. он заключается в следующем построении:
а) таблица должна иметь уникальный индекс
б) к таблице строиться запрос на столбец уникального индекса, центроид X, центроид Y, площадь в кв. метрах, число вершин
в) строится статистический запрос на группировку по центроид X, центроид Y, площадь в кв. метрах, число вершин, количество(уникальный индекс)>1
г) строиться запрос к исходной таблице и статистической таблице
---
если сохранить таблицу в ее копию, то можно обойтись одним запросом:
выбрать из исходной таблицы А и таблицы Б (копии) все записи, у которых равны координаты центроидов, площадь и число вершин, но не равны уникальные индексы. что бы ограничить размер таблицы можно вместо "не равны", использовать условие "уникальный индекс из таблицы А меньше уникального индекса из таблицы Б".

SergS
Активный участник
Сообщения: 120
Зарегистрирован: 14 апр 2011, 13:24
Репутация: 5
Откуда: Екатеринбург

Re: дубляж

Сообщение SergS » 25 июл 2012, 08:41

Boris,
я бы не рискнул ориентироваться на центроид объекта в mapinfo, особенно, если данные получены из разных источников и(или) различным способом изготовлены. Хотя, если организовать уникальное поле и поизвращаться над копией, разместив этот самый центроид в "стандартном" месте объекта, то да, алгоритм рабочий...

Аватара пользователя
Institor
Активный участник
Сообщения: 243
Зарегистрирован: 22 апр 2011, 08:10
Репутация: 27
Откуда: Хабаровск

Re: дубляж

Сообщение Institor » 25 июл 2012, 11:48

В принципе можно придумать некий индекс (хэш) от центроида, площади и количества узлов, тогда вероятность ложного срабатывания будет очень маленькая, КМК

Boris
Гуру
Сообщения: 4231
Зарегистрирован: 10 апр 2006, 22:34
Репутация: -344969098
Откуда: Париж

Re: дубляж

Сообщение Boris » 25 июл 2012, 22:32

SergS писал(а): я бы не рискнул ориентироваться на центроид объекта в mapinfo, ...
Я бы то же не рискнул, но какое есть описание задачи от такого и идем...
О дублях гео-объектов из РАЗНЫХ источников, вообще, сказать ничего нельзя, тут можно часами строить предположения, - "а что если было сделано вот так ...?"
---
можно начать с простейшего - имеем ОДИН источник, но он путешествовал в результирующий набор через таблицы с разными границами, и ВСЕ. Объект один и тот же, а геометрия и ее производные будет разная по координатам. Даже плюс-минус миллиметра хватит, что бы не найти дублей.

Ответить

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

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

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