Страница 1 из 1

Добавлено: 01 ноя 2009, 08:49
Vovan_Alm
Тестируем новую утилиту по выявлению и исправлению полилиний имеющих более 1 секции "Data0=" Утилита анализирует карту в польском формате и выдает лог с проблемными местами, и может так же автоматически исправить проблемные участки, вычленяя из полилинии все элементы. Т.е работает аналогично команде в Мапэдите "Вычленить все элементы" - но может быть применена сразу к всем полилиниям имеющим несколько Data0 секций. Утилита учитывает запреты поворотов и умеет их корректно обрабатывать...
Для работы утилиты нужно что бы была установлена Microsoft .NET Framework 2.0 и выше

Добавлено: 05 ноя 2009, 07:43
Vovan_Alm
Анонсирую: сейчас в тестировании, новая утилита. Задача, по заданной замкнутой (обязательно) полилинии области (Тип State/province boundary (0x1c, линия)), имеющей в "Имя"- Страну, Область, сокращение области- через запятые (к примеру КАЗАХСТАН, АЛМАТИНСКАЯ ОБЛАСТЬ, ALA) выявляет все "вложенные" т.е внутри этого "обруча" населенные пункты и индексирует их для поиска населенных пунктов... Если населенный пункт уже индексирован, то утилита его пропускает. Работает сразу с одним-несколькими полилиниями областей...

В дальнейшем планируется дополнить утилиту различными опциями, типа поиска дубликатов населенных пунктов и т.д. Но пока есть, что есть... Все кто попробует напишите все ли у вас получилось, что бы мы могли выявить возможные глюки...
Внимание: в утилите пока еще нет "защиты от дурака" если будут неподписанные полилинии областей или не замкнутые, то утилита аварийно вылетает

Добавлено: 06 ноя 2009, 10:54
Vadim_O
Ув. Vovan_Alm - вы затеяли полезное дело, но ...

где-то пару лет назад уже была утилита, которая прописывала в адреску информацию с того полигона куда попадали находящиеся в нем точки ПОИ ( в т.ч. и населенные пункты)
Попробуйте поищите такую утилиту уже готовую в инете или работайте лучше с полигоном а не с полилинией - уйдут проблемы "замкнутости".

Во всяком случае еще в 2006-м году населенку по Украине мы проставляли таким способом - присваивали адреску района по попаданию объекта ПОИ населенного пункта в полигон.
Но было это давно и какая именно это была утилита - забылось ...

Также проблемы замкнутости уйдут если сделать такую операцию: преобразовать линию в полигон, подкорректировать линии полигона если будет надо и потом преобразовать полигон обратно в линию ...

Что Вы понимаете под поиском дубликата объекта - поиск 2-х объектов с одинаковым лейблом в одном районе одной области ?

Добавлено: 06 ноя 2009, 13:16
OldMan
Vadim_O, Это делалось редактором от Ланго. Я когда-то инструкцию писал на форуме.

Vovan_Alm, поиск дубликатов штука вроде полезная, но может стать разрушительной.
В Донецкой области 6 Андреевок, 4 Богдановки, 5 Васильевок 11 Весёлых (причем два в одном районе), 5 Григорьевок и т.д. Причем двойников, тройников я пропускал, да и до конца алфавита ещё далеко. Лидер вроде бы Шевченко, их аж 17 (14 сел, 1 пгт и 2 посёлка).
Это лихо можно будет почистить область. :)

Добавлено: 06 ноя 2009, 21:41
Vovan_Alm
На счет "подобное уже было" - да было, это делает утилита GPSMapHelper, но мне не нравится некоторые моменты, а именно невозможно индексировать сразу несколько областей. По поводу того что проще использовать "полигон" вынужден согласится, утилита все равно переводит полилинию в полигон в конечном итоге (потому нужна замкнутая линия), но что бы не вводить в карту излишние элементы, решено работать именно с замкнутой полилинией.
О разрушительности утилиты - у нас в Казахстане тоже одних поселков Алгабас (вперед голова- дословно) больше чем у вас Андреевок (но меньше чем Шевченко :wink: ) - поэтому мы учитываем эти "накладки", и утилита будет искать дубликаты населенных пунктов, в некотором радиусе от каждого населенного пункта, что проверяется на дубликат названия... Я не думаю что у вас есть где то 2 Андреевки в радиусе 1 км, а вот дубликаты могут встречаться... Ну и на крайний случай утилита будет спрашивать - удалить Андреевку в 300 метрах от Андреевки... В общем пока нет каких-либо тревог по этому поводу.
И еще утилиты размещаю у вас исключительно по тому что нашел на вашем сайте несколько архиполезных утилит, типа mpUtilities за что автору респект и огромное спасибо... Это классика... Утилита "Дубликатор" домов, так же достойна высших похвал...
И последнее, уже выпущено по три версии, каждой утилиты, как лучше размещать их на Вашем сайте, с своем изначальном сообщениии меняя сам файл, или в новом сообщении...

Добавлено: 06 ноя 2009, 22:48
OldMan
Vovan_Alm, и в мыслях не было "наезжать". Я, наоборот, всячески приветствую появление разнообразных утилит, потому что все мы знаем, как катастрофически порой не хватает простых инструментов для решения очевидных задач.
Я всего лишь о том, что при постановке нужно учитывать разные нюансы, которые могут потом вылезти и больно ударить.
Если утилита поможет отлавливать двойников, то это будет замечательно, а если еще можно будет вообще двойников любых ПОИ ловить, то будет просто супер.

Добавлено: 07 ноя 2009, 07:58
Vovan_Alm
а если еще можно будет вообще двойников любых ПОИ ловить, то будет просто супер
спасибо за идею... в понедельник выскажу ее программистам...

Добавлено: 09 ноя 2009, 11:09
Vovan_Alm
Новая версия утилиты... вылавливает дубликаты ПОИ... если поставить галочку "Проверять ближайшие" и выставить расстояние между точками (которые считать дубликатами) (расстояние условно разница между координатами, 0,0005 - примерно равно 50 метрам) то после работы утилита создаст новый файл с суффиксом _poi в который будут добавленны загладки Мапэдита- BUG красного цвета... после этого легко будет отсортировать точки руками.
Примечание: Мапэдит использовать не ранее 1.0.60.0 версии
Жду замечания и предложения...
ЗЫ: Защиты от дурака нет, что попало не писать в поле с цифрами...

Добавлено: 11 ноя 2009, 13:40
Vovan_Alm
Новая версия утилиты... доработали и устранили вылет на больших картах... внутри Архива вложен Хелп, сначала читаем, а потом запускаем утилиту...

Добавлено: 11 ноя 2009, 22:16
OldMan
Что-то не получилось у меня потестировать. Сначала файл картs вроде загружался, правда в дубликаты выводило все ПОИ, что есть в карте, остальное не работало, т.к. я забыл, что карта не индексная, а когда вывел адреса в индексы, утилита перестала открывать любой файл, даже те, что раньше открывала.
Как-то непонятно.

Добавлено: 12 ноя 2009, 09:05
Vovan_Alm
Странная ошибка... обычно не смотря на наличие или отсутствия полилинии для индексирования, дубликаты утилита ищет, только не надо менять число в окошке, там должно стоять 0,0005 по умолчанию... Пока больше никто не жаловался на работу утилиты... Если так и дальше будет продолжаться надо будет иметь образец полиша, что бы воиспроизвести проблему. У меня дубликаты удалось все отметить и удалить на карте. Самый большой полишь с которым тестировалась утилита был 70 метров.
А вас стоит "Фреймворк 2" или выше? Да и еще... полишь только в 0 уровне...

Добавлено: 12 дек 2009, 08:39
BUVET
А нет ли у кого-нить тулзы или скрипта, проставляющая привязку к населенному пункту улиц. Т.е. Имеем название улицы и там где есть название, пишем привязку к городу и области. Или как это можно реализовать?

Добавлено: 13 дек 2009, 17:25
Vadim_O
BUVET, почитать правила работы с ГМЕ.

Сначала убедиться что в адресном списке
Tools - Edit Postal Address Item - есть ваш город

Потом выделить объекты (например ваши дороги) и правой клавишей выпадающее меню - Modify - Postal Address - City ...

Добавлено: 15 дек 2009, 11:42
OldMan
BUVET писал(а):А нет ли у кого-нить тулзы или скрипта, проставляющая привязку к населенному пункту улиц. Т.е. Имеем название улицы и там где есть название, пишем привязку к городу и области. Или как это можно реализовать?
Подобное можно сделать в версии редактора от Ланго. Выделяете именованные улицы и присваиваете им город. Выделять надо в командной строке (есть там такая), присваивать можно тоже, но проще как в обычном редакторе. Этим удобно пользоваться когда карта одного города т.к. выделяются все именованные улицы. Если много городов, то ручками. Можно также пользоваться редактором от Михуса, но там несколько по-другому. Там можно выделить все, попадающее под полигон. Т.е. вынести улицы в отдельный файл, нарисовать полигон, выделить под полигоном и присвоить всем улицам город. Потом в редакторе ланго удалить город в тех улицах, где он не нужен, т.е. неименованных.
Вот такие танцы. Зато не скучно. :)

Добавлено: 16 дек 2009, 09:03
BUVET
Да так и делаю, ну думал может скрипт готовый существует) А то так всю область привязывать сума сойдешь))