Pnt2poi.txt

Z UMP

(Różnice między wersjami)
(pnt2poi.txt specyfikacja)
Aktualna wersja (18:09, 8 lip 2018) (edytuj) (anuluj zmianę)
d (DEF-POI: co z dupli)
 
(Nie pokazano 4 wersji pośrednich.)
Linia 8: Linia 8:
plik składa się z sekcji [COS] ... [END]
plik składa się z sekcji [COS] ... [END]
rozpoznawane przez programy montujące są następujące sekcje
rozpoznawane przez programy montujące są następujące sekcje
 +
[DEF-POI]
 +
[DEF-LINE]
 +
[DEF-REVPOI]
 +
proszę jednak nie zakładać tylko tych, a nieznane ignorować.
==== DEF-POI ====
==== DEF-POI ====
Linia 18: Linia 22:
[END]
[END]
-
W sekcji '''DEF-POI''' rozpoznawane są parametry _plik _poziom _dopisz
+
* NAZWA to podanie typu słownego i odpowiadającej im wartości hex. Wielkość liter nie ma znaczenia, jednak dla czytelności sugerowana jest UPPERCASE.
-
* _plik podaje domyślną nazwę do jakiej ma trafić dany poi
+
-
* _poziom podaje domyślny endlevel
+
-
* _dopisz dodaje do nazwy poi-a (na końcu) w trakcie kompilacji tekst zdefiniowany w tej zmiennej.
+
-
* NAZWA to podanie typu słownego i odpowiadającej im wartości hex
+
* # dopuszczalny jest komentarz "#" wszystko po tym znaku jest ignorowane
* # dopuszczalny jest komentarz "#" wszystko po tym znaku jest ignorowane
 +
* w przypadku kilku 'tych samych' definicji (duplikaty) wygrywa ostatnia w tym pliku
 +
* możliwe jest definiowanie dodatkowych parametrów dla danej sekcji w postaci "_nazwa_małą" (dla czytelności) jednak w chwili obecnej nikt tego nie wykorzystuje, wstępnie sugerowane parametry:
 +
** _plik podaje domyślną nazwę do jakiej ma trafić dany poi
 +
** _poziom podaje domyślny endlevel
 +
** _dopisz dodaje do nazwy poi-a (na końcu) w trakcie kompilacji tekst zdefiniowany w tej zmiennej.
 +
 +
==== DEF-LINE ====
 +
 +
[DEF-LINE]
 +
NAZWA=Wartość-hex
 +
[END]
 +
 +
przydatne dla nazwania tekstowego naszych 3bajtowych linii, a które w paskudny sposób są zmieniane na 0x0 w przypadku przełączenia się na typ_set navitel/uniwersal.
==== DEF-REVPOI ====
==== DEF-REVPOI ====
[DEF-REVPOI]
[DEF-REVPOI]
-
NAZWA=RegExp
+
RegExp=NAZWA
[END]
[END]
Linia 36: Linia 49:
===Przykłady===
===Przykłady===
[DEF-POI]
[DEF-POI]
-
_plik=City.poi
+
_plik=POI-Obszar.debug.pnt
-
_poziom=4
+
#_plik=POI-Obszar.routing.pnt
-
CITY:1M=0x04
+
SLEPY=0x1708
-
CITY:500k=0x05
+
WATPLIWY=0x170d
-
CITY:200k=0x06
+
REMONT=0x1712
[END]
[END]
 +
[DEF-POI]
[DEF-POI]
-
#bankatm w kompilacji dostaje +ATM
+
REJON=0x1f00
-
_plik=POI-Bank.poi
+
ZJAZD=0x2000
-
_dopisz=+ATM(24h)
+
OPLATA=0x2500
-
BANKATM:24h=0x2f06
+
[END]
[END]
 +
[DEF-REVPOI]
[DEF-REVPOI]
-
BENZYNA=ORLEN
+
ORLEN=BENZYNA
-
PKP=^PKP
+
^PKP=PKP
[END]
[END]
Linia 64: Linia 78:
* zamiana pozycji w DEF-POI np 0x2f06=BANKATM:24h - odrzucone powód brak niepowtarzalności pierwszej pozycji w sekcji (brak możliwości korzystania z bibliotek ini w przyszłości)
* zamiana pozycji w DEF-POI np 0x2f06=BANKATM:24h - odrzucone powód brak niepowtarzalności pierwszej pozycji w sekcji (brak możliwości korzystania z bibliotek ini w przyszłości)
* dodanie wyróżnika dla parametrów - dodany w postaci "_"
* dodanie wyróżnika dla parametrów - dodany w postaci "_"
 +
 +
[[Kategoria:Tworzenie mapy]]

Aktualna wersja

Spis treści

Format użyty w narzedzia/pnt2poi.txt

Istnieje w UMPie kilka narzędzi montujących (bat/perl/sh), każde z nich zawiera własną tablice konwersji typ słowny na wartość numeryczna (hex) np APTEKA => 0x2e05. Każdą zmianę tych tablic trzeba wykonać w 3 miejscach, co jest proszeniem się o problemy. Plik pnt2poi.txt ma połączyć te osobne tablice w jednym miejscu.

Specyfikacja

plik składa się z sekcji [COS] ... [END] rozpoznawane przez programy montujące są następujące sekcje

[DEF-POI]
[DEF-LINE]
[DEF-REVPOI]

proszę jednak nie zakładać tylko tych, a nieznane ignorować.

DEF-POI

[DEF-POI] 
_plik=
_poziom=
_dopisz=
NAZWA=Wartość_hex
[END] 
  • NAZWA to podanie typu słownego i odpowiadającej im wartości hex. Wielkość liter nie ma znaczenia, jednak dla czytelności sugerowana jest UPPERCASE.
  • # dopuszczalny jest komentarz "#" wszystko po tym znaku jest ignorowane
  • w przypadku kilku 'tych samych' definicji (duplikaty) wygrywa ostatnia w tym pliku
  • możliwe jest definiowanie dodatkowych parametrów dla danej sekcji w postaci "_nazwa_małą" (dla czytelności) jednak w chwili obecnej nikt tego nie wykorzystuje, wstępnie sugerowane parametry:
    • _plik podaje domyślną nazwę do jakiej ma trafić dany poi
    • _poziom podaje domyślny endlevel
    • _dopisz dodaje do nazwy poi-a (na końcu) w trakcie kompilacji tekst zdefiniowany w tej zmiennej.

DEF-LINE

[DEF-LINE] 
NAZWA=Wartość-hex
[END]

przydatne dla nazwania tekstowego naszych 3bajtowych linii, a które w paskudny sposób są zmieniane na 0x0 w przypadku przełączenia się na typ_set navitel/uniwersal.

DEF-REVPOI

[DEF-REVPOI]
RegExp=NAZWA
[END]

Sekcja DEF-REVPOI służy do rozpoznawania typu poi po jego nazwie (dla nowych poi bez typ), często się to przydaje przy pkp pks gdzie typ numeryczny jest ten sam a jednak chcieli byśmy rozróżniać takie poi (np: dla mapy www)


Przykłady

[DEF-POI]
_plik=POI-Obszar.debug.pnt
#_plik=POI-Obszar.routing.pnt
SLEPY=0x1708
WATPLIWY=0x170d
REMONT=0x1712
[END]


[DEF-POI]
REJON=0x1f00
ZJAZD=0x2000
OPLATA=0x2500
[END]


[DEF-REVPOI]
ORLEN=BENZYNA
^PKP=PKP
[END]


Ograniczenia

Występują pewne ograniczenia i uproszczenia:

  • parametry _plik _dopisz _poziom powinny być na początku sekcji.
  • regexp powinien być najprostszy z możliwych bez "\" i innych udziwnień.

Pomysły

  • zamiana pozycji w DEF-POI np 0x2f06=BANKATM:24h - odrzucone powód brak niepowtarzalności pierwszej pozycji w sekcji (brak możliwości korzystania z bibliotek ini w przyszłości)
  • dodanie wyróżnika dla parametrów - dodany w postaci "_"