Jump to content
GPS навигатор СитиГИД
YoGun

Конструктор и конвертер для СитиГИД 8 | создание карт

Recommended Posts

IgorA100

   вот ссылка на мою карту -это карта Паттаи (Таиланд)http://stream.ifolder.ru/17712249

Скачал твою карту... собрал, все работат.....

А вот попытки собрать карты отсуда http://gis-lab.info/data/mp/ ни к чему не приводит...

Share this post


Link to post
Share on other sites

Что конструктор пишет в окне "Output'?

Пишет следующее:

>>>>>>>>>>>>>>>>>>>>>>>>>>>>

>> stack:

>>       [6]<-45:Load_MP.d|setLevelsParam*0|i

>>       [1]<-15:Load_MP.d|arLvls

>>       [0]

>> callstack:

>>    Load_MP.d|setLevelsParam*0

>>       arZooms          [2]

>>       i               [6]

>>       k               [21]

>>    main*0

>>       fname            [C:ru.novgorodnovgorod_2010-05-1500400053.mp]

>>       t0               [1273941158]

>>       nameDlg          [select Separation Type of data]

>>       str              [separate by XML & MapEdit Levels|Separate by XML|Separate by XML & some of MapEdit Levels|Separate by MapEdit Levels|Separate by some of MapEdit Levels|Not Separate]

>>       res              [1]

>>       s               []

>> sources:

>>    Load_MP.d <-

>>       sayIgnored       [0]

>>       zoomScales       [80000|120000|300000|800000|1200000|3000000|5000000|12000000|30000000|50000000|80000000|120000000|300000000|500000000|800000000|1200000000|3000000000|]

>>       ignorePOI        [0]

>>       ignoreAddress    [0]

>>       ignoreLines      [0]

>>       ignoreAreas      [0]

>>       onlyLevel        [0]

>>       xmlLayers        [1]

>>       lvlsNum          [5]

>>       arLvls           [1]

>>       arrLayersChs     [0]

>>       ln               [298578]

>>       ch               [0]

>>       ch_obj           [0]

>>       fp               [1]

>>       cities           [0]

>>       citiesregs       [0]

>>       noturn           [0]

>>       origscale        [0]

>>       chartName        []

>>       regions          [0]

>>       flog             [2]

>>       bropen           [0]

>>       semicolon        [0]

>>    toolSplit.dh

Load_MP.d[1683] Load_MP.d|setLevelsParam*0(): ArGet*2: outbound index: 21

>>>>>>>>>>>>>>>>>>>>>>>>>>>>

>> stack:

>>       [6]<-45:Load_MP.d|setLevelsParam*0|i

>>       [3]<-15:Load_MP.d|arLvls

>>       [0]

>> callstack:

>>    Load_MP.d|setLevelsParam*0

>>       arZooms          [4]

>>       i               [6]

>>       k               [21]

>>    main*0

>>       fname            [C:ru.ryazanryazan_2010-05-1500400062.mp]

>>       t0               [1273941395]

>>       nameDlg          [select Separation Type of data]

>>       str              [separate by XML & MapEdit Levels|Separate by XML|Separate by XML & some of MapEdit Levels|Separate by MapEdit Levels|Separate by some of MapEdit Levels|Not Separate]

>>       res              [1]

>>       s               []

>> sources:

>>    Load_MP.d <-

>>       sayIgnored       [0]

>>       zoomScales       [80000|120000|300000|800000|1200000|3000000|5000000|12000000|30000000|50000000|80000000|120000000|300000000|500000000|800000000|1200000000|3000000000|]

>>       ignorePOI        [0]

>>       ignoreAddress    [0]

>>       ignoreLines      [0]

>>       ignoreAreas      [0]

>>       onlyLevel        [0]

>>       xmlLayers        [1]

>>       lvlsNum          [5]

>>       arLvls           [3]

>>       arrLayersChs     [0]

>>       ln               [88280]

>>       ch               [0]

>>       ch_obj           [0]

>>       fp               [3]

>>       cities           [0]

>>       citiesregs       [0]

>>       noturn           [0]

>>       origscale        [0]

>>       chartName        []

>>       regions          [0]

>>       flog             [4]

>>       bropen           [0]

>>       semicolon        [0]

>>    toolSplit.dh

Load_MP.d[1683] Load_MP.d|setLevelsParam*0(): ArGet*2: outbound index: 21

Помогите разобраться в чем проблема?

Share this post


Link to post
Share on other sites

Помогите разобраться в чем проблема?

Конвертер останавливается на этапе задания масштабов карты. Похоже что-то не нравится в раскладке слоев.

Попробуйте вырезать из карты небольшой кусок - метров 200 на 200  и его сконвертить. Если будет ошибка - киньте мне этот вырезанный кусок на igora100ГАВprobki.net Посмотрю проблему.

ЗЫ: Вероятнее всего, у вас в секции заголовка карты указано, что карта имеет 6 слоев: "Levels=6", а реально карта содержит их меньше.

Share this post


Link to post
Share on other sites

Sten_2007

Скорее всего, у Вас в карте содержатся слои Level10, 8 или мельче

Попробуйте присвоить им, как мимум, 12 или 14.

Скорее всего, поможет.

Share this post


Link to post
Share on other sites

Sten_2007

Скорее всего' date=' у Вас в карте содержатся слои Level10, 8 или мельче

Попробуйте присвоить им, как мимум, 12 или 14.

Скорее всего, поможет.[/quote']

Вопрос в том, что я не знаю как это сделать... С конвертором разобрался... карта собирается, с ошибками конечно... но собирается...

Видимо есть какая-то защита. Пробывал конвертить карты Новгородской области для Гармина и ГисРусы.

Но навигатор по ней ничего не отображает...

Share this post


Link to post
Share on other sites

Вопрос в том' date=' что я не знаю как это сделать... [/quote']

В программе MapEdit (++) открываете карту *mp --> File --> MapProporties --> Levels -- Выбираете неподходяший --> Change

Share this post


Link to post
Share on other sites

Попробывал.... вроде получается...

для пробы сделал карту Новгородской области и выложил ее.

Share this post


Link to post
Share on other sites

Если кто не знает, то новая версия конвертора:

http://downloadgps.ru/cityguide/383-gisconstructor-gis-konstruktor-dlya-sitigid-v11-build-219.html

Share this post


Link to post
Share on other sites

А в пакетном режиме конвертер не запустить? Только ручками?

Share this post


Link to post
Share on other sites

Ну раз пошла такая пьянка..... то свежачек... ;)

Исправленный скрипт: http://ifolder.ru/17760698

Пароль: ac4Dy6k8

Положить вместо старого.

Изменения:

- Корректно формируется принадлежность к НП при сохраненной карте в старом польском формате.

- При поиске НП через места интереса не дублируется название города.

- Для ПОИ НП игнорируется любая информация, т.к. для такого объекта не может быть телефона, мыла и т.п.

- Изменен алгоритм формирования информационной строки при многострочном Text=

- Анализ принадлежности ПОИ к НП строится не на City=Y, а на основе типа ПОИ (для некоторых карт)

Проверяем, отписываемся по результату работы скрипта.

ЗЫ: Для версии конструктора от 18 мая 2010г http://forum.probki.net/forum_posts.asp?TID=7976 скрипт этот скачивать не надо, он уже идет в комплекте ;)

Share this post


Link to post
Share on other sites

В новом конвертере та же песня с масштабами Unhappy

Share this post


Link to post
Share on other sites

В новом конвертере та же песня с масштабами Unhappy

Какие именно непонятки с масштабами?

В новой версии нет пустоты при переходе на Евразию. На масштабы никто пока не жаловался...

Share this post


Link to post
Share on other sites


Какие именно непонятки с масштабами?
В новой версии нет пустоты при переходе на Евразию. На масштабы никто пока не жаловался...

 

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

Share this post


Link to post
Share on other sites

Использую симбиан и карту конвертированную конструктором от 14.05. таких проблем на своём не замечал

Share this post


Link to post
Share on other sites

ВОПРОС: есть карты  очень хорошие, но  самый подробный масштабный слой  имеет детальность 24bit (в терминах программы MapEdit)

,а не 26 как требуется. Есть ли возможность это как-нибудь обойти?

MaximV  у вас этот параметр соответствовал требуемому?

Share this post


Link to post
Share on other sites

поменяй  битность слоя на 26

Share this post


Link to post
Share on other sites

нулевой уровень 26

Share this post


Link to post
Share on other sites

поменяй  битность слоя на 26

 

 

ЧЕМ???????? mapedit не дает вводить битность "руками", а в меню-самое большое число-24!!!

Share this post


Link to post
Share on other sites

ЧЕМ???????? mapedit не дает вводить битность "руками"' date=' а в меню-самое большое число-24!!!
[/quote']

В mapedit поставьте тайпсет "Навител", тогда он позволит выставить битность = 26.

Share this post


Link to post
Share on other sites


В mapedit поставьте тайпсет "Навител", тогда он позволит выставить битность = 26.

Share this post


Link to post
Share on other sites

Кратко основные моменты-требования к получению подготовленных карт в *mp для последующей конвертации в формат СГ:

Без соблюдения этих требований карты для СГ будут с багами или не соберутся !!!

1) На 0-м слое карты должен быть полигон покрытия карты 0x4b (Map Coverage Area) который покрывает все объекты на карте. Полигон 0x4b тоже не должен иметь самопересечений.

2) проверка карт на ошибки ШТАТНЫМИ средствами GPSMapEdit и Мап++ (сначала одним редактором, потом вторым) - все галочки кроме наложения полигон на полигон. Не должно быть самопересечений ! На джиттеры (выбросы) тоже надо карту проверять.

Джиттеры = выбросы в полигонах.

Проверять в ГМЕ надо так:

Меню Инструменты - Дополнительно - Убрать "Джиттеры" полигонов

3) проверка доп. утилитами на отсуствие сджоиненных полилиний, дублей роутинга и на целостность ключей.

Утилиты в помощь картографам есть здесь:

http://travelgps.com.ua/forum/viewforum.php?f=71

Очень много полезного найдете.

К каждой утилите как правило есть файл типа ReadMe.

Например утилита от Graf основные рабочие вкладки: 2xБлоки, 2xID, Узлы

4) Проверка нодов, с целью оптимизации - утилитой от AlexPro

лишние ребра - мешают и "раздувают" карту (пункт Исправление ошибок роутинга).

5) Проверка адрески = чтобы StreetDesc= совпадало с Label для улиц. Можно еще проверять соответствие номеров домов в адреске и на полигоне с помощью утилиты от AlexPro.

6) Проверка адрески выполняется в зарегистрированном (лицензионном) редакторе ГМЕ (через поиск по адресу) чтобы была улица (полилиния типа Roads) с Label для объектов у которых есть адрес.

Для каждого значения StreetDesc должна быть обязательно линия у которой будет такое же StreetDesc= и Label=

Я это делал вручную в лицензионном GPSMapEdit, через поиск по адресу. Слева узкий столбик улиц которые берутся со StreetDesc=. Справа видим объекты. Суть в том что если слева есть адрес, то справа в группе объектов обязательно должна быть полилиния улицы/дороги/хоть квартально проезда с таким же Label и StreetDesc=

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

Тогда на 2-м этапе не будет ошибок типа noStreet.

7) Проверка с помощью редактора Мап++ на "Единство дорожного графа".

Кто не знает - в Map++ Вид -> Дерево слоев - Полилинии - (выбрать все роутинговые которые должны участвовать) - Анализ топологии.

Для карты СГ не допускается иметь оторванный граф дорог, который типа может быть соедиен через внешние ноды с соседней или "верхней" картой.

8) Не желательно иметь названия в круглых скобках () в названии улиц, меняйте их на квадратные [ ]

9) Уровни битности на карте в слоях допускаются от 26 бит до 12 бит. Реально работайте лучше до 18 бит. После 18 бит шкала пересчета масштабов не линейна. Для уровней 26-25-24 бита сделан "плавный" пересчет масштаба отображения, так как у многих исходники не на 26 бит, а на 25 или 24 бита.

10) Для сложных ситуаций когда имеются полигоны со сложными вырезами внутри необходимо будет использовать команду Reassemble через CompactChart

Открываем после первого этапа конвертации в конструкторе сложные полигоны с дырками (леса, болота и пр.) --> Tools --> Reassemble Contours&Areas --CompactChart-->Save --Close All

Что касается подготовки адрески:

11) У конвертора СГ отрабатываются два атрибута и Label и StreetDesc=

12) Адресный список строится только по полям StreetDesc=

при этом обязательно присутствие улицы/дороги с таким же самым значением StreetDesc=, иначе объекты в адресный поиск не попадут и конвертор будет выдавать NoStreet на 2-м этапе

13) Те значения что в поле Label - те идут в отрисовку и в поиске не участвуют.

Таким образом допускается частичное "несовпадение" у улиц Label= и StreetDesc=, при условии что все же имеется кусок улицы или какая-то улица/дорога/переулок/внутриквартальный проезд (роутинговая полилиния) или участок у которого будет иметься StreetDesc= такой же как и у адресных объектов.

14) Значения из StreetDesc= попадают в InfRouter - из него идет и поиск и маршрут

15) Для дорог/улиц у которых есть только Label и нет StreetDesc (StreetDesc предполагает CityIdx, что для загородных дорог не имеет смысла) - будут прорисовываться названия, но поиска не будет

16) StreetDesc= из POI пока не участвуeт в адресном поиске, но в поиске объектов через "Места интереса" приписывается как дополнительная информация (как телефон, сайт и пр.)

17) Если есть полигон (дом) у которого есть заполненное значение со StreetDesc= и нет такой Улицы с таким же StreetDesc= - то адрес полигона (домика) в поиск не пойдёт.

18 ) Для ситигида 3.7.Х важно, чтобы в названии улицы была привязка по городу (области, району) идентичная адреске и названия города (пои)

Дополнение и продолжение следует ...

Share this post


Link to post
Share on other sites

Vadim_O супер инструкция. Только бы ещё уметь пользоваться всем этим добром. Эх....

Share this post


Link to post
Share on other sites

С картинками по шагам расписать смогу не раньше июня. Тем кто уже немного делает карты для Гармина или Навитела - для тех понять что тут кратко написано сложностей быть не должно.

Периодически возможно буду предыдущее сообщение редактировать и расширять дополнениями и пояснениями.

Share this post


Link to post
Share on other sites

8) Уровни битности на карте в слоях допускаются от 26 бит до 12 бит.

Добавлю, если битность будет меньше 12, то сборка упадёт на первом этапе.

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.

×