Znaczenie plików w projekcie UMP

Z UMP

Wprowadzenie i objaśnienie

Utrzymujemy następującą konwencję nazywania plików źródłowych. Jeśli się jej trzymasz, nowe pliki pojawią się w mapie same z siebie. Jeśli chcesz ją rozszerzyć, pamiętaj o pliku cvs:/narzedzia/md-filtr, wypada też to uzgodnić na liście ump-devel@.

Więcej o nazewnictwie i znaczeniu katalogów i podkatalogów

  • katalog UMP-JakisRegion/
  • plik JakisRegion-big.mp (samodzielnie działający – kiedyś nam to było potrzebne)
  • pliki jednakowe dla różnych regionów, w szczególności skrypty mont-demont
  • podkatalog src/
  • plik cities-JakisRegion.pnt
    • pliki cities-JakisRegion.txt i POI-JakisRegion.txt – niewskazane, chociaż dopuszczalne. Jeśli istnieją, powinna następować ich migracja do odpowiednich plików *.pnt.
  • plik(i) POI-*.pnt
    • w tym POI-routing.pnt i/lub *.debug.pnt (na znaczniki ślepych końców oraz wiaduktów)
    • wyjątkowo punkty zjazdów z autostrady zawierające rozszerzone informacje umieszczamy w plikach *.highways.txt
  • pliki MIASTO.ulice.txt (do zawartości dopisywana jest przynależność do miasta)
  • plik(i) inne.ulice.txt i *.drogi.txt (do zawartości nie jest dopisywane info o przynależności całościowo, ale mogą mieć indywidualne wpisy "Miasto=..." w poszczególnych elementach)
  • pliki *.zielone.txt
  • pliki *.woda.txt
  • pliki *.obszary.txt
  • pliki *.budynki.txt
  • pliki *.kolej.txt
  • pliki *.tramwaje.txt
  • pliki *.zakazy.txt (na zakazy zawracania czy przejazdu)
  • pliki *.znaki.txt (na podpowiedzi przejazdu czyli sekcje [SIGN])
  • pliki *.highways.txt - punkty POI typu "Zjazd" (Exit) 0x2000-0x27ff: zjazdy autostradowe i z dróg typu "S".
  • pliki *.granice.txt
  • pliki *.szlaki.topo.txt
  • pliki *.sciezki.txt
  • pliki *.topo.* z drobnymi elementami włączanymi tylko do wersji Topo

W nazwach plików nie stosuj ogonków. W przypadku wieloczłonowych nazw miejscowości pisanych z odstępem (spacją), znak ten należy zastąpić znakiem _ (podkreślenie). Nazwy pisane z dywizem (myślnikiem) zapisujemy w normalny sposób. Człony "Mazowiecki, Wielkopolski" itp. piszemy w całości. Przykłady:

BIELSKO-BIALA.ulice.txt
GORZOW_WIELKOPOLSKI.ulice.txt

Wielkość liter ma znaczenie, i pisząc:

  • Region jest rozumiane jako konkretny region czyli kawałek mapy, np. Warszawa, Katowice...
  • REGION jw. zwróć uwagę na wielkość liter, np. WARSZAWA, KATOWICE...
  • MIASTO oznacza nazwę miasta, np. GRODZISK_MAZOWIECKI, WARSZAWA_SRODMIESCIE...
  • POWIAT dla zmniejszenia wielkości plików inne.drogi.txt sugerujemy zgrubny podział na umowne powiaty, powiatów nie odmieniamy, piszemy je w formie: WARSZAWA, GRODZISK, GROJEC; Kilka ostatnich eksperymentalnie odmieniliśmy w formie "powiat <nazwa>" jednak te już podzielone zostają ze starą nazwą.
  • EXT oznacza zewnętrzne źródło danych. Patrz: Zewnętrzne źródła danych

Pliki

(wyjaśnienia szczegółowe)

  • cities-Region.pnt

zawierają miejscowości w formie

"lat,lon,wielkość,nazwa" 

plik ten wygodnie obrabia się także pod OziExplorerem

  • MIASTO.ulice.txt

Zawiera ulice danego miasta (w formacie mp). Na początku tego pliku (1 linijka) może być zapisane Miasto=Miasto (kapitaliki, spacje i polskie ogonki) np. w pliku

PODKOWA_LESNA.ulice.txt 

znajdziemy na początku

Miasto=Podkowa Leśna

Jeśli wpisu nie ma, to nazwa miasta jest generowana na bazie nazwy pliku.
Sugerujemy wydzielać miasta, które mają wyrysowane ponad 100 ulic.

  • MIASTO.tramwaje.txt

Linie tramwajowe (rysowane za pomocą obiektów POLYLINE typu 0x10e10).

  • inne.drogi.txt

Plik zawiera drogi, które jeszcze nie zostały rozdzielone na POWIATy lub nie można w danej chwili stwierdzić przynależności. Zalecane jest jednak rozdzielanie zawartości w miarę jak plik rośnie.

POWIAT

Pliki powstają dla zmniejszenia pliku inne.drogi.txt oraz plików REGIONów.

To, czy dany rodzaj pliku powinien być jeden dla całości (czyli np. REGION.zielone.txt), czy podzielony na mniejsze fragmenty (a więc np. POWIAT1.zielone.txt, POWIAT2.zielone.txt, itd.) zależy głównie od ilości zgromadzonych danych. Poniższe opisy odzwierciedlają typowy podział. Sensownie jest trzymać dane w plikach wielkości 100-500 kB. Jeśli plik robi się zbyt duży -- warto go podzielić, bo pozwala to zmniejszyć czas transmisji w momencie porównywania plików lokalnych i serwera (cvs update, cvs commit), a także zmniejszyć prawdopodobieństwo kolizji przy równoczesnej edycji danych przez kilka osób.


  • POWIAT.drogi.txt - zawiera drogi. Uwaga! Wiele narzędzi zakłada, że będą tam tylko drogi.
  • POWIAT.topo.txt - zawiera dane dla kompilacji UMP-PL topo, miejsce na ścieżki, drogi z zasady nieprzejezdne dla samochodu itp.
  • POWIAT.sciezki.txt - tzw. "ścieżki dla sarenek" i podobne. Dróżki, które niekoniecznie pasują do kategorii topo, ale nie dbamy w nich zbyt restrykcyjnie na poprawne definiowanie wszystkich skrzyżowań dla routingu.
  • POWIAT.woda.txt - wszelkie obszary i linie dotyczące wody: jeziora, stawy, rzeki, strumyki, morza.
  • POWIAT.zielone.txt - Lasy, laski, parki, działki.
  • POWIAT.obszary.txt - zawiera wszelkie obszary, które nie trafiły wyżej
  • POWIAT.zakazy.txt - tutaj umieszczamy restrykcje, czyli zakazy manewrów (zakręcania, zawracania) definiowane liniami 0x19. (link?)

REGION

  • REGION.granice.txt - granice administracyjne miast, powiatów i gmin.
  • REGION.budynki.txt - gdzieniegdzie pojawiają się obrysy budynków.
  • REGION.kolej.txt - tu znajdziemy tory kolei wszelkiego rodzaju.
  • REGION.highways.txt - na zjazdy z autostrady, MOP-y i inne POI trafiające do listy wyszukiwania "Highway exits". Takie POI mają dodatkowe informacje, które nie pozwalają użyć formatu pnt. Więcej informacji w FAQ
  • REGION.szlaki.txt - szlaki znakowane - jest to pozostałość po wcześniejszych wersjach/próbach. Po weryfikacji zawartość powinna trafić do szlaki.topo.txt.
  • REGION.szlaki.topo.txt - zawiera szlaki znakowane - dane stąd trafiają do UMP-PL topo i UMP-szlaki.

Pliki z danymi pochodzącymi z Zewnętrznych źródeł danych

  • REGION.EXT.topo.txt

Znaczenie poniższych jest takie samo jak dla POWIATów

  • REGION.zakazy.txt
  • REGION.woda.txt
  • REGION.zielone.txt
  • REGION.obszary.txt

POI

Przyczyną rozbicia na pliki jest głównie łatwiejsza edycja dla człowieka (porządek, posortowanie, łatwiej porównywać z innymi listami punktów danego rodzaju, itp.)

  • POI-REGION.debug.pnt lub POI-REGION-routing.pnt - bojki i inne elementy wspomagające routing i edycję mapy
  • POI-REGION.debug.topo.pnt - bojki dla topo
  • POI-REGION.kolej.pnt - stacje PKP, przystanki PKS, metro, pętle tramwajowe
  • POI-REGION.msi.pnt - Mapy "Miejskiego Systemu Informacji", tu też powinny trafić wszelkiego rodzaju tablice informacyjne
  • POI-REGION.budynki.pnt - budynki użyteczności publicznej: urzędy, ministerstwa, komendy, ambasady itp
  • POI-REGION.sklepy.pnt - sklepy "wielkoformatowe" oraz 24h lub spożywczaki na "zadupiu"
  • POI-REGION.bankomaty.pnt - bankomaty oraz banki
  • POI-REGION.historia.pnt - punkty na mapie które już nie istnieją (forty, budynki historyczne)
  • POI-REGION.topo.pnt - zawiera punkty brane pod uwagę tylko w mapie topo

Pozostałe nie wymagaja opisu:

  • POI-REGION.hotele.pnt
  • POI-REGION.jedzenie.pnt
  • POI-REGION.kinoteatr.pnt
  • POI-REGION.koscioly.pnt
  • POI-REGION.paliwo.pnt
  • POI-REGION.rozrywka.pnt
  • POI-REGION.sport.pnt
  • POI-REGION.szkoly.pnt
  • POI-REGION.szpitale.pnt i apteki
  • POI-REGION.zabytki.pnt
  • POI-REGION.inne.pnt

Pliki z POI z Zewnętrznych źródeł danych

  • POI-REGION.EXT.paliwo.pnt

Jak wydzielić miasto

Z czasem okazuje się, że warto zrobić nowy plik na ulice jakiejś miejscowości, która do tej pory była rozproszona w pliku np. inne.drogi.txt. Robi się to tak:

  • zmontuj dany obszar (w swój ulubiony sposób)
  • ulice danej miejscowości mają do tej pory właściwość Dodatkowe (Extras) Miasto=Jakieś, Plik=[...]\inne.drogi.txt. Zmień te dwa wpisy na jeden: Plik=[...]\JAKIES.ulice.txt (trzy kropki zależą od metody montowania). Najpierw, dla przećwiczenia, dla jednej ulicy, potem hurtowo:
    • w trybie Zaznacz obiekty (Select, klawisz S) zaznacz wiele ulic: klawisz Ctrl i klikaj drogi po kolei - nie bardzo daje się przeciągnąć, bo się zaznaczy także punkty
    • prawy klawisz - Modyfikuj (Modify) - Dodatkowe (Extras) - Usuń (Remove) - wskaż wpis Miasto,
    • Modyfikuj - Dodatkowe - Edytuj - wybierz wpis Plik oraz wpisz wartość ręcznie (pomoże klawisz podpowiedzi "trójkącik w dół") lub wybierz Jak ost. (Last)
  • zdemontuj jak zwykle
  • drogi się rozłożyły do nowego pliku; diff dla inne.drogi.txt zawiera skasowania, i jest nowy plik JAKIES.ulice.txt.
    • edytuj ten nowy plik. Jeśli nie przegapiłeś/łaś niczego, to powinien się zaczynać od linijki [POLYLINE] nie zawierać ani jednego wpisu (sprawdź to!)
Data0=(......
Miasto=Jakieś
[END]
    • dodaj na samym początku dwie linijki:
Miasto=Jakieś
(pusta linijka)
  • przenieś oba pliki do katalogu src, a plik diff skasuj - jak zwykle
  • UWAGA nowy plik trzeba dodać do serwera
    • w linii komend napisz
cvs add JAKIES.ulice.txt
    • WinCVS: poproszę o podpowiedź
  • i całość wyślij na serwer, jak zwykle.


Uwagi:

  • dla elegancji warto najpierw założyć pusty plik i wysłać na serwer, a dopiero potem rozkładać: dzięki temu w logach będzie bilans: w inne minus ileś, w nowym ulic plus ileś.
  • o stworzenie nowego, pustego pliku można poprosić na grupie (wskazane ump-devel@)


Można prościej, tj stworzyć pusty plik danego miasta wg opisu powyżej i skorzystać z mont-demont.bat -idx który samodzielnie zrobi resztę w ramach uporządkowania ulic w plikach drogi.