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

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

Recommended Posts

А я вношу изменения в копию, перед конвертированием.

Вот рабочий кусочек скрипта, который добавляет "Floors=1", если у полигона (0x6c, 0x6d, 0x6e, 0x6f, 0x6, 0x13) отсутствует "Floors=". Прицепом комментирует ";HouseNumber=" у полилинии "Type=0x16"

Скрипт не оптимальный, написан на скорую руку. Замечания принимаются.

Путь и имя файла изменяем "под себя":

objFileName = "F:GPSAutoMapsmpTempO-45.mp"

Set objTS = objFSO.OpenTextFile("F:GPSAutoMaps" & objFSO.GetBaseName(objFileName) & "_tmp.mp", 2, true)

_Fix.vbs


' RusNavi.org

' ======================================

startTime = timer

objFileName = "F:GPSAutoMapsmpTempO-45.mp"

Set objFSO = CreateObject("Scripting.FileSystemObject")

Set objTS = objFSO.OpenTextFile(objFileName, 1)

strContents = objTS.ReadAll

objTS.Close

strContents = Trim(strContents)

strContents = Replace(strContents, "Numbers", ";Numbers")

arrLines = Split(strContents, vbCrLf)

Set objTS = objFSO.OpenTextFile("F:GPSAutoMaps" & objFSO.GetBaseName(objFileName) & "_tmp.mp", 2, true)

i=0

Do While i < UBound(arrLines)

	if arrLines(i) = "[POLYLINE]" then p=1

	if p=1 then

	  if arrLines(i) = "Type=0x16" then t=1

	  arrLines(i) = Replace(arrLines(i), "HouseNumber=", ";HouseNumber=")

	end if

	if arrLines(i) = "[POLYGON]" then p=2

	if p=2 then

	  if arrLines(i) = "Type=0x6c" then t=2

	  if arrLines(i) = "Type=0x6d" then t=2

	  if arrLines(i) = "Type=0x6e" then t=2

	  if arrLines(i) = "Type=0x6f" then t=2

	  if arrLines(i) = "Type=0x6" then t=2

	  if arrLines(i) = "Type=0x13" then t=2

	  if t=2 and Left(arrLines(i), 7) = "Floors=" then f=1

	  if t=2 and f=0 and arrLines(i) = "[END]" then

		arrLines(i) = Replace(arrLines(i), "[END]", "Floors=1" & VbCrLf & "[END]")

		t=0

	  end if

	end if

	if arrLines(i) = "[END]" then

		f=0

		p=0

		t=0

	end if

		objTS.WriteLine arrLines(i)

	i=i+1

Loop

objTS.Close

wscript.echo Now & " RunTime: " & timer-startTime

Set objFSO = Nothing

Wscript.quit

Edited by IgorAS

Share this post


Link to post
Share on other sites

Посмотрел схему.

Вопросы:

1. Зачем эта схема?

2. Какой из редакторов (кроме ГМЕ) более полно и точно поддерживает типы точек СГ? MicroGisEditor?

3. Почему некоторые точки не конвертируются напрямую из mp в СитиГид (например детские сады - Дошкольное учреждение (0xf501, точка))?

Получается при загрузке мр-файла в конструктор СитиГида уже на стадии загрузки мр-файла точки у которых нет прямого соответствия формату СГ - отсекаются и нет дальнейшей возможности их группового изменения в нужный формат?

Share this post


Link to post
Share on other sites

1. Зачем эта схема?

Многие категории сформулированы в СитиГиде не так, как в польском. У многих картосоставителей возникают вопросы, куда идут те или иные типы пои.

Скромно надеюсь, что эта схема поможет разобратся.

2. Какой из редакторов (кроме ГМЕ) более полно и точно поддерживает типы точек СГ? MicroGisEditor?

MicroGISEditor. В нём будут в том числе и те типы, что есть в СитиГиде, но нет в MapEdit.

3. Почему некоторые точки не конвертируются напрямую из mp в СитиГид (например детские сады - Дошкольное учреждение (0xf501, точка))?

Получается при загрузке мр-файла в конструктор СитиГида уже на стадии загрузки мр-файла точки у которых нет прямого соответствия формату СГ - отсекаются и нет дальнейшей возможности их группового изменения в нужный формат?

Конструктор точки не отсекает, но например "Дошкольное учреждение (0xf501, точка)" конвертируется в "Школы и дошкольные учебные заведения".

:unsure: Нужно будет отобразить это в схеме.

Share this post


Link to post
Share on other sites

Спасибо за ответ. Особенно за наводку на MicroGis (видать придется привыкать к новому редактору, а так не хотелось)), а то до сих пор не понятно какое отношение этот редактор имеет к СитиГиду. Разработчики заявляют, что они тесно работают с МИТ-ом, но насколько это "тесно" не совсем понятно. :)

В принципе соотношение в большинстве вариантов и так интуитивно понятно. Для меня была основная проблема в торговых объектах, а именно: гипермаркеты и торговые комплексы; магазины и продуктовые. Если честно до сих пор не вижу смысла в их разделении. Программа же расчитывается на несведующего в тонкостях пользователя, а название группы ввобдит в заблуждение (меня по крайней мере точно). Гипермаркет я полагал это здоровенный торговый комплекс, в котором все есть (как то так)). Может стоило эти пары объединить в происке в одну группу (для упрощения поиска)?

Да, чуть не забыл, рассмотрите возможность в главном меню поиска ПОИ, рядом с наименованием поставить обобщенные значки групп. В подгруппах значки есть, очень удобно, а в главном меню их нет, приходиться вчитываться в каждую строку.

Share this post


Link to post
Share on other sites

Спасибо за ответ. Особенно за наводку на MicroGis (видать придется привыкать к новому редактору, а так не хотелось))

редактор хороший.вопрос в цене

Share this post


Link to post
Share on other sites

редактор хороший.вопрос в цене

Пробовал практически первый релиз давно уже. Сыро. Все чесалось снова попробовать, ждал. Вчера все таки качнул последнюю версию. Попробовал. Буду еще ждать. У меня в исходнике все в одном. Даже дорожные знаки поддерживаемые как НН, так и IGO и пр, не говоря уже о закладках радаров, лежаков и пешеходников. Просто открыл, ничего не делал, "сохранил как", думал размер файла увеличиться за счет автоприсвоения floors=1 всем неразнесенным полигонам домов, итог: floors=1 автоматом расставился, подтверждаю, но закладок нет, вес исходника на 8 метров упал. Что удалилось кроме закладок не пойму, Анализировать более 50 мегабайт текстовой инфы нет ни времени, ни желания. Игры с тайпсетом Navitel/Тopo -сохраняют рестрикты на перекрестках, так что это не страшно. Но вот неуверенность в корректности сохранения всех данных останавливает. Может я что то еще не так делаю?

Share this post


Link to post
Share on other sites

Извиняюсь за напраслину, скорее всего понял из-за чего уменьшение веса. У меня в настройках сохранения польского формата стояла опция расширенных адресных данных (для СВН). Скорее всего МикроГис сохраняет в формате CityIdx, поэтому и экономия места. Но вопрос о сохранности закладок остается.

Share this post


Link to post
Share on other sites

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

  • Upvote 1

Share this post


Link to post
Share on other sites

ГеоКонструктор 1.2.328

5. При сохранении карты в dcm появилась функция "Multilevels" (в тестовом режиме).

это что ?

Share this post


Link to post
Share on other sites

5. При сохранении карты в dcm появилась функция "Multilevels" (в тестовом режиме). это что ?

Насколько я слышал краем уха, с этой опцией карта отображается быстрей. Подробностей пока не знаю, но проверить стоит.

Edited by MaxBel

Share this post


Link to post
Share on other sites

Скорее всего это разложение карты на слои с последующей генерализацией каждого слоя в зависимости от масштаба.

Share this post


Link to post
Share on other sites

Скорее всего это разложение карты на слои

ну это он умел и раньше далать.деласть из однослой многослойку

Share this post


Link to post
Share on other sites

ну это он умел и раньше далать.деласть из однослой многослойку

щас поставил при компиляции мульитлевелс.какрта потолстела в полтора раза

под PC стала таскатся гораздо шустрее

Share this post


Link to post
Share on other sites

... функция "Multilevels" (в тестовом режиме).

это что ?

Собирает ячейки по другому принципу. Карта в итоге собирается дольше, весит больше, но работает на устройствах быстрее.

Share this post


Link to post
Share on other sites

Geo-U-Piter,

Я на Android визуально разницы не заметил. Наверно это на слабых устройствах особо заметно ?

Share this post


Link to post
Share on other sites

Пока суть да дело... давно хотел спросить, но как то забывал. Не мог ли кто нибудь хоть в двух словах объяснить как в СГ происходитт стыковка карт, ну в смысле локальной карты и Евразии например (ведь две соседние локалки все равно через Евразию стыкуются, или я не прав?).

В НН там понятно, совмещаются внешние НОДы. А нужны ли внешние НОДы для СГ в польском исходнике? И что там к чему до сих пор темный лес, хотя работает же))

Share this post


Link to post
Share on other sites

Zauber, в СитиГиде внешние ноды не нужны. Важно, чтобы дороги доходили точно до границы кавера (0x004b). Маршрут прокладывается по активной локальной карте, а за её пределами - по карте Евразии (России). При пересечении границы локальных карт, маршрут перепрокладывается по новой активной.

Share this post


Link to post
Share on other sites

Я немного не о том. Как вычисляется переход с локалки на обзорную, если нет стыковки НОД-ов?

Получается, что вычисляется ближайший нод локалки к ближайшему ноду обзорной карты и между ними рисуется маршрут? А где эти ноды вычисляются у текущего местонахождения (+-) или на границе локальной карты?

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

Share this post


Link to post
Share on other sites

Стал сталкиваться с такой проблемой

*** cannot add 55000a_A to D:mpasmpAK02Bsh.dcm

* warning: D:mpasmpAK02Bsh.ist file created, but address file has empty names

D:mpasmpAK02Bsh.dcm -- saving time 18'07"

*** cannot add 530003_L to D:mpasmpAK02Bsh.dcm

* warning: D:mpasmpAK02Bsh.ist file created, but address file has empty names

D:mpasmpAK02Bsh.dcm -- saving time 18'24"

* warning: D:mpasmpAK02Bsh.ist file created, but address file has empty names

D:mpasmpAK02Bsh.dcm -- saving time 18'26"

Карта собралась только с третьего раза

Share this post


Link to post
Share on other sites

Ну что ж - движуха пошла! Релиз для Андроида вышел! Ждёмс соответствующего конструктора для СГ7 с нетерпением!!!

Share this post


Link to post
Share on other sites

да фиг с ним с конструктором)) хоть бы скрипт один ...

Share this post


Link to post
Share on other sites

Господа, кто поможет понять проблему.

При сохранении чарта в дцф появляется сообщение.

Внимание! Возможно, при записи карты произошла ошибка.

Перезагрузите сохранённую карту для проверки её целостности.

Ошибка какого плана возможна? Ошибка в карте или ошибка записи на винт?

Перезагрузил. Вроде всё нормально, ругани нет.

Но при сохранении в дцм вываливает ошибку:

*** errorcode=4003 saving D:ConstructorUA...........___~~~src.dcf

Что значит этот эррор? Где копать? Что починять? Чем проверять?

Спасибо.

Конструктор 1.2.334

Share this post


Link to post
Share on other sites

Вопрос: как можно предварительно точно проверить маршрутизацию карты в исходнике, конвертируемой для СГ-7 (для правильной настройки типа, класса и скоростных параметров ребер)?

В GPSMapEdit СОВЕРШЕННО ИНОЙ алгоритм просчета маршрута. Проверил маршрутизацию в ГМЕ, все настроил, конвертнул последним (1.2.334) конструктором - совершенно иное построение маршрута (галочку на игнор параметров польского не ставил). Маршрут изменился не глобально, но заметил, что приоритет значительно больше отдается типу дороги, а класс ребра то ли не учитывается вовсе, то ли ошенама мало учитывается. Или тут еще вопрос о недолюбливании СГ левых поворотов (к этому склоняюсь больше, заметил такое)? Вот и интересуюсь? Может МГЕ или в самом конструкторе есть инструмент точной проверки маршрутизации в СГ?

Просто карты же рисуем не для дяди, хочется настроить так, что бы удобнее было именно ездить, а не на экране играться.

Share this post


Link to post
Share on other sites

Я думаю в ближайшее время такого алгоритма в редакторах мы не увидим. Даже 3 и 5 версия прокладываю иначе, чем 7-я. А что уж говорить о редакторах. Но хотя бы написать и обсудить этот вопрос на форуме МГЕ я думаю стоит.

Share this post


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

×