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

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

Recommended Posts

[POI]
Type=0x2f01
Label=ОККО
WebPage=http://www.okko.ua/
Text=EV Plug (J1772), Mennekes (Type 2)
Data0=(48.6649832,33.0822686)
MIT=0x9918250
[END]

для любого объекта прописываем ключ - MIT=0x...

скрипт переопределяет тип, для данного примера получим Type=0x9918250

в схеме описываем данный тип

poi_9918250 //  АЭЗС 
{
  FUELEL { POICAT="fuel" 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}}" }
}

таким образом, из стандартного польского АЗС получаем на выходе СГидовскую АЭЗС

ну и тд. для всех желаемых объектов :)

MIT2.lua

Share this post


Link to post
Share on other sites
В 30.05.2017 в 11:45, polpred сказал:

А в какое место засунуть в польском,  глиф 18938, чтоб СГ заругался про "Обгон запрещен"?

я делаю так: в МГЕ ставлю знак "обгон запрещен", первый ус - азимут захвата и дистанция до начала предупреждения, второй ус - зона действия (азимут не важен)

[POI]
Type=0xfe31
RoadSign=1,1,180,1,75,690,0
Data0=(48.5155894,32.1603870)
[END]

тот же mplua при подготовке исходника к конвертации делает финт ушами - ставит значение второму азимуту RoadSign=1,1,180,-400,75,690,0

таким образом получается заставить коньструктор корректно обрабатывать знаки с зоной действия ;)

итого: всё редактирование карты (со знаками и МИТовскими типами) ведется в МГЕ, все необходимые допиливания под СГ выполняются mplua, затем конструктор конвертирует карту. те. все танцы по выпуску сводятся к одному батнику :)

Edited by _Michael_

Share this post


Link to post
Share on other sites

_Michael_ таким образом у тебя знаки в исходнике нанесены?

Edited by katran1961

Share this post


Link to post
Share on other sites

знак обгон запрещен 0xfe31 двунаправленный - так ?

За 75 метров будет предупреждать о запрете по азимуту 180 гр.?

"-400"    это    400 метров действия после знака?  И как будет осуществляться предупреждения после самого знака? Второй ус как работает?

690 - это что?

24 минуты назад, _Michael_ сказал:

одному батнику

так именно этот батик и интересен 

А проверок и замен  - это и в продвинутом редакторе  можно - "найти и заменить"

вот 

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

 

function onInitScript()
  WriteLog('Скрипт перевода переулков с названием с типом 0х7 в 0х6')
end


function onCheckSection()
  local ST
  local t = {}
  local PC7 = 0
  local x = os.clock()
  repeat
    ST = tonumber(SectionType)
    if (SectionName == 'POLYLINE') and (ST == 0x7) then
      t = {}
      LoadSectionInTable(2, 0, t)
      if (t.label ~= nil) then
          PC7 = PC7 + 1
          SetKeyInSection('Type','0x6')
          WriteLog('L=' .. t.label)
      end
    end
  until LoadNextSection(1) == -1

  WriteLog(os.clock() - x)
  WriteLog('Изменено 0х7 в 0х6: ' .. PC7)
 end

 

 

Share this post


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

_Michael_ таким образом у тебя знаки в исходнике нанесены?

да, всё в одном исходнике

 

34 минуты назад, polpred сказал:

это и в продвинутом редакторе  можно

а зачем лишний танец, если всё делает скрипт mplua?

 

34 минуты назад, polpred сказал:

"-400"    это    400 метров действия после знака?  И как будет осуществляться предупреждения после самого знака? Второй ус как работает?

нет, -400 заставляет конструктор понять, что второго азимута у знака нет, а 690 (длина второго уса) - работает как зона действия.

те. за 75м на экране всплывает знак обгон запрещен, идет звуковое предупреждение и в течение 690м знак висит на экране

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

rem обработка исходника
mplua -s cg.lua -i C:\Constructor\maps\UA35KI-.mp -o C:\Constructor\maps\UA35KI.mp -a -l log.txt -v
rem создаем dcm
GeoConstructor -mp:C:\Constructor\maps\UA35KI.mp -loadrule:My_PolishConverter.shm -nooldpoi -scale:100000 -scamax:1500000 -multilevels -keepdcf -oldcgmap -lang:UA
rem создаем cgnet
CGMapToolPublic.exe Type=CrtCGNet SkipSmallObj=No InFile=C:\Constructor\maps\UA35KI.dcm
rem копируем карту
copy C:\Constructor\maps\UA35KI.cgnet C:\Users\%UserName%\Documents\CityGuidePC\CGMaps\ /Y
rem запускаем СГ
C:\Users\%UserName%\Documents\CityGuidePC\CityGuidePC.exe

 

Edited by _Michael_

Share this post


Link to post
Share on other sites
Только что, _Michael_ сказал:

да, всё в одном исходнике

Ну вот видишь! А мы по старинке. Котлеты и мухи - отдельно.

Кстати этот вопрос давненько уже обсуждался. Знаки наносятся в диспетчере, а можно и в конструкторе.

 

Безымянный.jpg

Share this post


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

-400

это как код, признак и т.д. второму усу работать в противоположную сторону на дистанцию 690?

без бутылки не разобрать;)

Share this post


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

Знаки наносятся в диспетчере, а можно и в конструкторе.

да все можно.. и в текстовом редакторе заменять, и на счетах умножать ;)

я в свое время всё перепробывал - и диспетчер, и конструктор, и примочку для работы со знаками (склероз кто из форумчан делал)

но если можно удобно обойтись двумя инструментами - зачем танцевать с бубнами?

Share this post


Link to post
Share on other sites

инструмент должен быть простым и удобным.  Не просто и не удобно:angry:

Share this post


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

это как код, признак и т.д. второму усу работать в противоположную сторону на дистанцию 690?

совершенно верно, можно поставить любое красивое бредовое значение второму азимуту, хоть -333 (для справки - "нормальный" азимут 0-360), главное что конструктор при этом длину второго уса использует как зону действия. про знаки очень хорошо у Монорельса на сайте расписано, за что ему большое спасибо, в свое время очень помогло :) 

Share this post


Link to post
Share on other sites

Наверное зря ввязался. Вы же не работаете с файлами DCF и DCM. Запустил батник и курим бамбук.;)

Share this post


Link to post
Share on other sites
В 30.05.2017 в 13:11, omsk-gps.ru сказал:

Появилось желание отметить номера подъездов, в домах где "сложная" нумерация. "Надпись (0x2800, точка)"  в СГ не отображается.... Чем лучше метить ? 

метить можно чем угодно, например, любым типом, который в схеме уходит в МИТовский POIGEN - будет отображаться галкой

я рисую подъезды полигонами - наглядно и реалистично :)

06-06-2017 11-27-21.png

  • Upvote 1

Share this post


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

инструмент должен быть простым и удобным.  Не просто и не удобно

это про МГЕ или mplua? или про фотошоп?

Share this post


Link to post
Share on other sites

Скорее всего он имел ввиду mplua. Фотошоп то тут при чем?

Share this post


Link to post
Share on other sites

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

Share this post


Link to post
Share on other sites

ну, а в чем проблема-то? в ГМЕ знак пишется в виде закладки и не так удобно и наглядно как в МГЕ, но тоже можно скриптом готовить под СГ 

@polpred или я чего не понимаю? что может быть удобнее ставить знак сразу в исходнике карты?

Share this post


Link to post
Share on other sites

сравниваешь же исходник - конечно  в исходнике.  Вот и прыгаешь из редактора в редактор

Share this post


Link to post
Share on other sites

В .mp исходнике есть праписанно zip код, а вот почему его невидно в карте .cgnet  Где надо править, чтоб было видна эта инфо?

Share this post


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

В .mp исходнике есть праписанно zip код, а вот почему его невидно в карте .cgnet  Где надо править, чтоб было видна эта инфо?

Щщас культурная столица оторвется по правописанию и пунктуации. Честное слово ничего не понятно. Подозреваю что речь идет об элементах адреса и zip код это по смеси французского и нижегородского  почтовый индекс

Edited by polpred

Share this post


Link to post
Share on other sites

Ну да, речь идё про почтовый индекс

Share this post


Link to post
Share on other sites

@dzambo

А разве у ситигида есть в адресе поле индекса? Что-то я не видел нигде.

Как вариант, вносить индекс в название населенного пункта.

  • Upvote 1

Share this post


Link to post
Share on other sites

Привет! коллеги.

А подскажите плиз, можно ли в "польском" сделать простую надпись? Не объект на карте, а просто надпись на подложке? 

Честно гуглил - но не нашел...

Share this post


Link to post
Share on other sites

Заинтриговал ... что хочешь написать? У меня много версий, одна креативнее другой..


За ашыпке прашю венить TapaTalk

Share this post


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

Не объект на карте, а просто надпись на подложке? 

Что в твоем понятии подложка?

Share this post


Link to post
Share on other sites

Мне нужна просто надпись на карте, безо всякого объекта. Такое можно сделать?

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

×