Главная

Регистрация

Вход
О навигации на Дальнем Востоке
Суббота, 18.11.2017, 08:45
Приветствую Вас Гость | RSS
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Модератор форума: dobryi, HillWalker 
Форум о навигации на Дальнем Востоке » Развитие GPS навигации на Дальнем Востоке » Обсуждение создания схем » mpTypes - новый конвертер типов
mpTypes - новый конвертер типов
DarkDiverДата: Четверг, 08.05.2014, 10:41 | Сообщение # 1
Полковник
Группа: Модераторы
Сообщений: 212
Репутация: 10
Статус: Offline

Откуда: Владивосток
mpTypes - консольная программа-конвертер типов объектов для карт в польском формате, для перехода от одного набора типов к другому.

Использование программы:

MPTypes.exe input.mp output.mp types-config.cfg

input.mp - исходный файл
output.mp - итоговый файл с преобразованными типами в соответствии с конфигурационным файлом.
types-config.cfg - конфигурационный файл (далее по тексту - конфиг)

Формат конфига совпадает с форматом конфига для mpUtilities (в комплекте с программой идет пример конфига), и состоит из нескольких секций:

[POI]- содержит правила преобразования типов точек.
[POLYLINE]- содержит правила преобразования типов линий.
[POLYGON]- содержит правила преобразования типов полигонов.
[CHNLIN2POL] - содержит правила преобразования линий в полигоны.
[CHNPOL2LIN] - содержит правила преобразования полигонов в линии.
[DELPOLYLINE]- типы линий, которые будут удалены.
[DELPOLYGON]- типы полигонов, которые будут удалены.
[DELPOI]- типы точек, которые будут удалены.
[DELROUTE]- типы линий, в которых будет удалена информация о роутинге.

По сравнению с программами mp2mp и mpUtilities, способными выполнять эту же задачу, в mpTypes имеется целый ряд преимуществ:

1) В отличие от mpUtilities, mpTypes - консольная программа, это позволяет использовать ее в пакетном режиме для обработки большого числа файлов.
2) В отличие от mp2mp, mpTypes не спотыкается обо все не известные ей ключи польского формата.
3) В отличие от mp2mp, в которой вопреки всякой логике название исходного файла прописано в конфиге, а заголовок карты зачем-то нужно передавать программе в качестве параметра отдельным файлом, в mpTypes все имена файлов (входной, выходной, конфиг) передаются в качестве параметров, а заголовок карты берется из исходной карты без изменений, что облегчает использование программы в пакетном режиме для обработки большого числа файлов.
4) В отличии от mp2mp и mpUtilities, mpTypes может обрабатывать карты очень большого размера, т.к. карта не загружается в память целиком, обработка идет по одному объекту, при этом оперативной памяти требуется столько, чтобы в нее поместился самый большой объект карты.
5) Допустим в конфиге есть правило 0x1=0x2. mpUtilities обработает по этому правилу все типы начинающиеся с 0x1, например типы 0x10, 0x10f05, 0x10e07 и т.п. - все будут преобразованы в 0x2. Это - баг mpUtilities. В mpTypes такой проблемы нет.
6) Допустим в карте есть объект 0x3, а в конфиге есть правило 0x3=0x4, в этом случае тип этого объекта меняется на 0x4,что логично и правильно. Но если ниже в конфиге есть еще одно правило 0x4=0x5, то тип этого объекта меняется еще раз на 0x5. Это также создает определенные проблемы. В mpTypes тип объекта изменяется только один раз, в соответствии с правилом, которое в конфиге встречается первым.

Другие особенности алгоритма (по данным пунктам сравнение с mpUtilities не проводилось):

1) Если в конфиге по ошибке задано два правила для какого либо из типов, то используется то, которое идет выше.
2) Если исходное значение типа объекта содержится в секциях конфига перечисляющих перечень типов для удаления из карты ([DELPOLYLINE], [DELPOI], [DELPOLYGON]), то объект будет удален вне зависимости от того, есть ли касающиеся него правила в других секциях конфига. Т.о. секции удаления имеют наивысший приоритет.
3) Правила секций [CHNLIN2POL] и [CHNPOL2LIN] имеют более высокий приоритет,
чем правила преобразования типов.
4) Правила из секции [DELROUTE]применяются к линии после изменения ее типа, если такое изменение прописано в секции [POLYLINE], т.е. в секции [DELROUTE]в таком случае должен быть прописан итоговой тип. Если тип линии не меняется, то правило применяется к исходному типу.

Страничка программы: http://gpspohod.ucoz.ru/publ....2-1-0-1
Прикрепления: mpTypes-v1.02.rar(46Kb)


http://gpspohod.ucoz.ru
В поход с GPS!


Сообщение отредактировал DarkDiver - Вторник, 07.10.2014, 13:04
 
Форум о навигации на Дальнем Востоке » Развитие GPS навигации на Дальнем Востоке » Обсуждение создания схем » mpTypes - новый конвертер типов
Страница 1 из 11
Поиск:

Copyright MyCorp © 2017