Пятница
26.04.2024
19:08
Категории раздела
GPS [5]
Статьи касающиеся GPS тематики.
Вход на сайт
Поиск
Друзья сайта
Статистика


Онлайн всего: 1
Гостей: 1
Пользователей: 0

В поход с GPS

Каталог статей

Главная » Статьи » GPS

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

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

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, то mpUtilities меняет тип этого объекта еще раз на 0x5. Это также создает определенные проблемы. В mpTypes тип объекта изменяется только один раз, в соответствии с правилом, которое в конфиге встречается первым.

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

1) Если в конфиге по ошибке задано два правила для какого либо из типов, то используется то, которое идет выше.

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

3) Правила секций [CHNLIN2POL] и [CHNPOL2LIN] имеют более высокий приоритет,
чем правила преобразования типов.

4) Правила из секции [DELROUTE] применяются к линии после изменения ее типа, если такое изменение прописано в секции [POLYLINE], т.е. в секции [DELROUTE] в таком случае должен быть прописан итоговой тип. Если тип линии не меняется, то правило применяется к исходному типу.

Скачать mpTypes

Обновлено 2 марта.2015 г.

Опубликовано 8 мая 2014 г.

Богатырев Евгений

http://gpspohod.ucoz.ru

Категория: GPS | Добавил: DarkDiver (03.10.2014)
Просмотров: 1365 | Рейтинг: 0.0/0
Всего комментариев: 0
avatar