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

Учебный класс | подготовка карт для СитиГИД

Recommended Posts

протупил, "из коробки" СГ обрабатывает зоны отдыха :)

https://drive.google.com/open?id=0B3FCEATmCg5yOFBLSlFHejZjRTA

если они, конечно, есть в карте ;)

https://drive.google.com/open?id=0B3FCEATmCg5yR1k2THFJQmpsaWM

ps. сорри за внешние ссылки - движок не дает прикрепить картинки

Edited by _Michael_

Share this post


Link to post
Share on other sites

на карте эти знаки есть. Но в исходнике прописан как Автостоянка (0x2f0b, точка)

а вот в программе не отображается. 

если не сложно подскажите что нужно сделать что бы показывал этот знак?

Share this post


Link to post
Share on other sites

в схеме конвертера это пои есть.

Я не пойму как в польском  прописать. Или нужно открыть его в текстовом редакторе и вписать? Я хотел это делать в GME

Share this post


Link to post
Share on other sites

тут на форуме наше вот это:

в исходнике пишешь свой уникальный ключ (типа CGPOIType), если конвертишь не только под СГ.. если только, то можно сразу - Type=0x64a3

для "не только" - переносишь ключ CGPOIType в Type при подготовке карты под СГ

мне нужно не только для СГ

как понять подчеркнутую строку?

Share this post


Link to post
Share on other sites

ну ты определяешь новый тип - 18183, твоя модифицированная схема и геоконструктор делают файл только для СГ

если ты тот же исходник захочешь конвертнуть, например, в НН или Гармин - их конверторы тип 18183 не поймут и скорее всего просто проигнорируют :)

те. нужно каким-то образом готовить исходник для каждой конкретной навигации - в этом поможет доп. ключ. ставишь для всех общепринятое ПОИ (0x2f0b в данном примере) и 0х18183 для СГ. просто повезло, что геоконструктор принимает последнее описание типа в секции, как отреагируют другие конверторы на такой хак - я хз

Share this post


Link to post
Share on other sites

То есть ключ будет иметь формат Type, не CGPOIType. Правильно?

А значение я уже подставляю сам и Правим файл конструктора под это значение. Правильно?

Share this post


Link to post
Share on other sites

Поставил ключ Type 

GME кричит об ошибке 

Share this post


Link to post
Share on other sites

от горластый :)

а МГЕ пропускает

 59f3684b90f03_27-10-201720-08-33.png.22fdf7a521a2c6604e2bca5442cfa483.png

тогда для ГМЕ в два притопа: в самом ГМЕ ставить произвольный ключ (тот же CGPOIType), а потом в текстовом редакторе менять его (CGPOIType) на Type

Edited by _Michael_

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

по аналогии как выше было расписано?

new.thumb.png.783ff8936ab904b0f6158025e365ea25.png

Share this post


Link to post
Share on other sites

а какой код у этих пои что на картинке выше?

Share this post


Link to post
Share on other sites

0x46b6 - весовая станция
0x474f - контроль оплаты "ПЛАТОН"
0x4750 - пункт оплаты дорог

  • Like 2

Share this post


Link to post
Share on other sites
9 часов назад, Proks сказал:

а какой код у этих пои что на картинке выше?

такой же как в схеме конвертации укажешь/указано.. 

  • Like 1

Share this post


Link to post
Share on other sites

Спасибо. Но есть еще пара вопросов по пои на примере платона

В ГМЕ поставил точку произвольную с надписью платон и ключом CGPOIType=0x474f

Открыл исходник в редакторе нашел этот ключ и прописал следующее

[POI]
Type=0x474f
Label=Платон
Data0=(51.437090,128.385887)
[END]
Нужно ли еще добавлять какую информацию для пои. Не обязательно только для данной но и для других.

по аналогии из этого сообщения

интересует строчки

LocLabel=

EndLevel=1

Type=0x18383

особенно последняя. Откуда это значение берется и как его применять? Или это произвольное значение, тогда как выбрать что бы не совпало с другим. В  хелпе нашел что это коды пои но там только до 18164. Где найти остальные? Если они есть

Share this post


Link to post
Share on other sites

гм.. нужно хоть чуток про польский формат почитать :)

есть стандартные для него ключи (Type - тип, EndLevel - уровень до которого отображается объект) и нестандартные (LocLabel, CGPOIType и тп.)

6 часов назад, Proks сказал:

Откуда это значение берется и как его применять?

можно взять с потолка, например 112233 и путаться в них :) 

можно взять за основу номерацию из СГ, можно придумать свою. главное, чтобы в исходнике тип объекта соответствовал задуманному и описанию в схеме конвертации.

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

актуальные коды СГ смотреть можно в ресурснике в xml файлах, например, ПОИ - в DictPOI.xml, знаки - в DictTraf.xml и тд.

Скрытый текст

<obj acron="PLATON" code="18255" flags="0b1" name="Platon control">

<obj acron="TOLPAY" code="18256" flags="0b1" name="Toll payment">

 

Share this post


Link to post
Share on other sites
6 часов назад, _Michael_ сказал:

можно взять с потолка, например 112233 и путаться в них :) 

собственный велосипед должен быть приемственным.   Почему нельзя взять существующий набор  типов и кодов польского и добавлять... Потом вынудим Галического, по факту, добавить сг-шные типы и коды :) 

Share this post


Link to post
Share on other sites
10 часов назад, _Michael_ сказал:

если используется стандартная схема - то берите коды из неё

Спасибо за ответ. Теперь возник вопрос такой.

В ГМЕ нет типа для платона. Как писал выше 

[POI]
Type=0x474f
Label=Платон
Data0=(51.437090,128.385887)

Type=0х18255 - Этот тип нужно обязательно прописывать, что бы Конвертер(программа СГ) поняли что это за ПОИ? Или это не обязательный параметр. и достаточно будет Type=0x474f
[END]

Share this post


Link to post
Share on other sites

Объясните еще такой момент. 

Если я хочу поставить своё ПОИ но его нет ни в программе ни в ГМЕ. Можно ли это сделать. например: увидел в папке пои значок жилая зона.

как его можно внедрить в карту?

1. Нужно ему присвоить тип вида например 18ххх или нужен тип вида например 0х0000

2. Нужно что бы конвертер распознал это пои и обработал. Что нужно для этого сделать?

3. Допустим конвертер его понял и обработал. 

Теперь нужно что бы это пои стало понятно для программы СГ. Я так понимаю нужно прописать его в ресурсник. Если так, то в какие файлы и в каком формате?

Share this post


Link to post
Share on other sites
42 минуты назад, Proks сказал:

Теперь нужно что бы это пои стало понятно для программы СГ. Я так понимаю нужно прописать его в ресурсник. Если так, то в какие файлы и в каком формате?

не надо путать причину и следствие :)

смОтрите в ресурснике, что понимает СГ - этот объект прописываете в схеме конвертации (если его там нет, хотя не факт что обработается конструктором) и в исходнике

18333 - это в десятичке, при неудачном выборе кода можете попасть в стандартный тип, 0х18333 - это в шестнадцатиричке, тут шансов на совпадение практически нет

фух. то ли для меня слишком очевидно, то ли я не умею объяснять.. но я уже устал писать одно и то же разными словами :(

7 часов назад, polpred сказал:

Почему нельзя взять существующий набор  типов и кодов польского и добавлять...Потом вынудим Галического, по факту, добавить сг-шные типы и коды

по этому пути вёл Дункан лет несколько назад.. и?.. 

я же всё это время успешно пользуюсь описанной схемой подмены типа ;)

Share this post


Link to post
Share on other sites
14 минуты назад, _Michael_ сказал:

18333 - это в десятичке, при неудачном выборе кода можете попасть в стандартный тип, 0х18333 - это в шестнадцатиричке, тут шансов на совпадение практически нет

получается что разницы как бы и нет.

18ххх=0х0000 это один и то то же тип но записанный по разному. Если так, то предпочтительней выбирать тип 0х0000. Правильно. 

а какие файлы в ресерснике нужно смотреть? Я так  понимаю тут PresPOI.xml, DictPOI.xml или еще что то нужно смотреть? если знаете скажите как понимать эти файлы. За что они отвечают?

в конвертере нужно править в файле PolishConverter.shm или в другом файле?

типо этого?

Скрытый текст

poi_F007 //@ // Railway station? Железнодорожный вокзал
{//18058
  RAILST { POICAT="railwaystation" priort=906 SCAMIN=POI_SCAMIN LABELS="{{Label}}" NUMBER="{{HouseNumber}}" STRNAM="{{StreetDesc}}" DSTNAM="{{DistrictName}}" TWNNAM="{{CityName}}" TERNAM="{{CountryName}}" REGNAM="{{RegionName}}" PHONES="{{Phone}}" FAXNUM="{{Fax}}" WEBPGE="{{WebPage}}" EMAILS="{{Email}}" OPTIME="{{OpeningHours}}" FULNAM="{{FullName}}"  INFORM="{{Text}}" }
  //BUILDS { INFORM={ "{{StreetDesc}}, {{HouseNumber}} ({{CityName}})","{{StreetDesc}}, {{HouseNumber}}","{{StreetDesc}} ({{CityName}})","{{StreetDesc}}" } POICAT="railwaystation" priort=906 OBNAME="{{Label}}" BLDFNC=65 /*Railway station*/ }
  //$texts { POICAT="railwaystation" priort=909 SCAMIN=POI_SCAMIN txtval="{{Label}}" rgbnam="#858585" fnthei=7 fntstl={ 2,5 } justh=3 justv=3 shifty=-300 } 
}

Если править нужно в нем  дайте файл PolishConverter.shm из своего конвертера если не жалко. 

Я понимаю что достал вас своими вопросами. Но для меня не очень понятны некоторые моменты. 

Не могли бы Вы на примере платона в картинках рассказать как это делается свои пои, что, где и как прописывается. 

Народ хочет разобраться :) что к чему.

Share this post


Link to post
Share on other sites
1 час назад, _Michael_ сказал:

но я уже устал писать одно и то же разными словами

Помнишь, я расписывал тебе последовательность? Вытащи эту инструкцию сюда, мне сейчас просто неудобно с телефона это сделать.

Share this post


Link to post
Share on other sites

методичка от @KonTur

Скрытый текст

 

1. Берешь последний ресурсник (от андроида или ПК). Там  в PresPOI.xml находишь нужный код объекта глазами или еще как. например весовые станции 18102. Записываешь код, его hex значение 46В6 и слово под ним WEIGHT.

2. В файле city_plan.shm в папке конструктора ищешь это слово и смотришь какие ему можно прицепить параметры.

3. Потом в папке конструктора смотришь в файле POICategories.shm куда лучше поместить это пои. Там есть Weigher - записываешь это слово.

4. Открываешь PolishConverter.shm на редактирование, и в разделе ПОИ либо создаешь, либо копируешь уже имеющееся (в этом случае пункт 2 не нужен :). Например там есть 

poi_FE82 //@ // Начало НП белый
{
  USIGNS { POICAT="other" priort=906 LABELS="{{Label}}" NUMBER="{{HouseNumber}}" STRNAM="{{StreetDesc}}" DSTNAM="{{DistrictName}}" TWNNAM="{{CityName}}" TERNAM="{{CountryName}}" REGNAM="{{RegionName}}" PHONES="{{Phone}}" FAXNUM="{{Fax}}" WEBPGE="{{WebPage}}" EMAILS="{{Email}}" OPTIME="{{OpeningHours}}" FULNAM="{{FullName}}"  INFORM="{{Text}}" }
}
Меняешь у скопированного:

FE82 на 46B6

 объяснительную надпись "начало НП... на "весовая станция"

USIGNS на WEIGHT

POICAT="other" на POICAT="Weigher"

Если все сделано правильно, то поставленная в польском точка с кодом 46В6 должна будет видна в ситигиде. 

 

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×