Как mp2mp разносит объекты по слоям - Форум Нижегородского GPS-клуба
 



 
 
Вход

Страница 1 из 11
Модератор форума: Carlych, Alexkidd 
Форум Нижегородского GPS-клуба » Навигационные карты » Создание и редактирование карт » Как mp2mp разносит объекты по слоям
Как mp2mp разносит объекты по слоям
kuzorДата: Пятница, 01 Октябрь 2010, 09:49 | Сообщение # 1
Рядовой
Группа: Пользователи
Сообщений: 11
Награды: 0
Репутация: 0
Статус: Offline
Доброго времени суток!
Решил освоить программу mp2mp, так как нарисовал уже на своих картах довольно много объектов, а вручную распределять их по слоям уж очень долго и муторно. И вот что меня смутило и удивило. Программа mp2mp вместо ожидаемого мной установки для объекта признака EndLevel копирует секцию данных объекта для разных слоев! surprised Получается сильное разбухание файла карты .mp и, предполагаю, конечного файла тоже. Ниже будут иллюстрации этого явления, а пока вопросы:
Это нормально?
Это поведение настраивается?
Вы тоже так делаете?
Это ускоряет или замедляет отрисовку готовой карты навигатором?
А теперь иллюстрации:
Исходное описание объекта в однослойном файле .mp:
Code

[POI]
Type=0x6402
Label=11
Data0=(57.014232,41.041435)
[END]

Ручное редактирование (поднятие объекта до уровня 4) дает такое описание:
Code

[POI]
Type=0x6402
Label=11
EndLevel=4
Data0=(57.014232,41.041435)
[END]

А вот после работы mp2mp описание объекта получается таким:
Code

[POI]
Type=0x6402
Label=11
Data0=(57.014232,41.041435)
Data1=(57.014232,41.041435)
Data2=(57.014232,41.041435)
Data3=(57.014232,41.041435)
D ata4=(57.014232,41.041435)
[END]

Что согласитесь, несколько объемно даже для простого объекта. Что уж говорить о сложных полигонах!
В конфиге у mp2mp для этого преобразования записано:
Code

   export=false;
   case type=0x6402
    {
     case kind=point  // здание
      {
       export=true;
       layer_max=4;
      }
    }

Версию mp2mp не знаю, размер исполнимого файла 233472.
 
LS_DДата: Пятница, 01 Октябрь 2010, 11:24 | Сообщение # 2
Admin
Группа: Администраторы
Сообщений: 2329
Награды: 18
Репутация: 48
Статус: Offline
Описание mp2mp здесь
Чтобы не мучаться с написанием конфига, можно воспользоваться графической оболочкой GUImp2mp


Xiaomi Redmi Note 2 + CityGuide
 
kuzorДата: Пятница, 01 Октябрь 2010, 11:34 | Сообщение # 3
Рядовой
Группа: Пользователи
Сообщений: 11
Награды: 0
Репутация: 0
Статус: Offline
А я и не мучаюсь! Я пользуюсь этой графической оболочкой. И конфиг мне сформировала именно эта оболочка. Конфиг судя по всему правильный. К нему у меня претензий нет. Заморочка относится к mp2mp.
Описание, на которое Вы указали, я читал.
 
monitorДата: Пятница, 01 Октябрь 2010, 15:49 | Сообщение # 4
Генерал-майор
Группа: Проверенные
Сообщений: 379
Награды: 2
Репутация: 19
Статус: Offline
Я делаю как генерит mp2mp. На счет разбухания конечного файла не уверен, тут все зависит от алгоритма кодирования в nm2 формат и я сомневаюсь, что результаты могут отличаться 2.5 раза как у исходников. Но это легко проверить. Попробуйте сделайте 2 карты по обоим вариантам, даже самому стало интресно.
Кроме того как делает mp2mp более универсальная вещь, так как вроде нет описания начального слоя видимости объекта (строго от 0 и до ENDLevel), а оно иногда нужно.


Garmin-Asus Nuvi M10, CityGuide v.7.2.1.62, Navitel 5.0.3.70, Garmin MobileXT 5.86.50
 
monitorДата: Суббота, 02 Октябрь 2010, 07:23 | Сообщение # 5
Генерал-майор
Группа: Проверенные
Сообщений: 379
Награды: 2
Репутация: 19
Статус: Offline
Попробовал сделать маленькую карту (несколько зданий и дорог) обоими способами. Размер nm2 карт совпал до байта cool

Garmin-Asus Nuvi M10, CityGuide v.7.2.1.62, Navitel 5.0.3.70, Garmin MobileXT 5.86.50
 
kuzorДата: Понедельник, 04 Октябрь 2010, 08:55 | Сообщение # 6
Рядовой
Группа: Пользователи
Сообщений: 11
Награды: 0
Репутация: 0
Статус: Offline
Повторил Ваш эксперимент. Создал маленькую абстрактную карту, где одна точка, три линии и четыре полигона.
Результаты:
Файлы mp имеют размеры 1354 и 2824 байта.
Файлы nm2 имеют размеры 1218 и 1221 байта.
Так что, действительно, получается нет разницы. По крайней мере, большой разницы.
 
monitorДата: Понедельник, 04 Октябрь 2010, 09:06 | Сообщение # 7
Генерал-майор
Группа: Проверенные
Сообщений: 379
Награды: 2
Репутация: 19
Статус: Offline
У меня было 10 зданий и 1 дорога, но сошлось с точностью до байта (4493 и 4493) smile
Может у Вас не абсолютно точное разложение на слои?
Прикрепления: test.zip(6Kb)


Garmin-Asus Nuvi M10, CityGuide v.7.2.1.62, Navitel 5.0.3.70, Garmin MobileXT 5.86.50
 
kuzorДата: Понедельник, 04 Октябрь 2010, 09:17 | Сообщение # 8
Рядовой
Группа: Пользователи
Сообщений: 11
Награды: 0
Репутация: 0
Статус: Offline
Да, я думаю, что не абсолютно точное. Верхний слой я создал с битностью 14. И при копировании некоторых полигонов на этот уровень произошла автоматическая генерализация. Некоторые узлы были удалены. Возможно разница возникла из-за этого.
 
Форум Нижегородского GPS-клуба » Навигационные карты » Создание и редактирование карт » Как mp2mp разносит объекты по слоям
Страница 1 из 11
Поиск:
 
 
 НИЖЕГОРОДСКИЙ GPS-КЛУБ © 2007 | ls_d Хостинг от uCoz   Rambler's Top100 Юридические услуги в Нижнем Новгороде Нижегородский форум нивоводов Все для навигации Автограф - контроль автотранспорта