Budynki w OSM. Adresy wg schematu z Karlsruhe oraz tagi do OSM 3D

Wielu uczestników projektu OSM w Niemczech zaczęło używać tzw. schemat z Karlsruhe zastosowany po raz pierwszy przez Marcusa Wolschona, patrz opis: http://wiki.openstreetmap.org/wiki/Karlsruhe_Schema

Wskazówki uzupełniające do tego schematu: Numer lub numery budynku staramy się rysować w miejscu, w którym orientcyjnie znajduje się wejście (lub wejścia, jako że w jednym bloku mieszkalnym mamy więcej klatek)

Ważne jest, by wpisywać tag building:levels z ilością pieter, przy czym parter jest także liczony jako piętro
W przypadku tagu: building:usage:pl gdzie podawany jest rodzaj budynku, dobrze by było uzupełnić istniejącą listę. Negocjuję to właśnie z GUGiK.

Propozycje nowych tagów:

A. building:roof , tag opisujacy rodzaj dachu budynku.

możliwe wartości: 1. Flat 2.Mono-pitch 3.Double pitch 4.curb 5.half-hipped 6.hip 7. pavilion 8. arched 9. Balloon 0. Generic
Po polsku: Dach 1.płaski 2.Jednospadowy 3. dwuspadowy 4. mansardowy 5. dwuspadowy z obiętymi narożnikami 6. czterospadowy 7. Namiotowy (wszystkie płaszczyzny dachów spotykają się w jednym, najwyższym punkcie: w przypadku okrągłego rzytu budynku daje to stożek obrotowy) 8. beczkowy 9. półkulisty 0. Generic- oznacza skomplikowaną formę dachów którą wkrótce opisze.

Building:roof uzupełnia tag
B. roof:angle w którym wpisujemy kąt nachylenia płaszczyzny dachowej podany w stopniach.

C. Building:wall_surface podaje rodzaj materialu z którego zbudowany jest budynek. Wartości: Stone, Brick, Wood, Steel, Glass-steel, Straw, clay

D. Building:roof_surface , podaje rodzaj materialu z którego zbudowany jest dach. Te same wartosci co w punkcie C oraz materiały: Tile, sand, roofing (papa dachowa), grass

Co do punktu A to zamierzam jeszcze wrzucić kilka rysunków wyjaśniających jak tagować i jak jaki dach wygląda. Ponieważ formy dachów A2 do A6 oraz A8 mogą wzdłuż lub w poprzek, to należy używać tego tagu do opisania dodatkowego punktu na obrysie budynku. Punkt ma być wprowadzany na ścianę zewnętrzną równoległa do kalenicy.

W przpyadku znanych wysokości budynku proponuję użyć:

E. Building:height_cullis , tj. wysokosć fasady do rynny
F. Building:height , pokazujacej wysokość łączną budynku mierzoną do najwyższego punktu budynku

ekhm, bez rysunków chyba się nie obędzie…

Marek

Przetlumaczylem na polski strone wiki o rysowaniu budynków.

http://wiki.openstreetmap.org/wiki/Pl:Key:building

Witam ja korzystam z tej strony wiki:
http://wiki.openstreetmap.org/wiki/Proposed_features/Building_attributes

A)
Chyba lepszym atrybutem dla kształtu dachu jest building:roof:shape
Proponowane na stronie wiki kształty dachów:

http://wiki.openstreetmap.org/w/images/a/a3/Roofs.png

Swoją drogą jak po angielsku nazywają się dachy jedno i dwu spadowe ?
znalazłem taką definicje:

  1. jedno spadowy - Pitched: http://en.wikipedia.org/wiki/Pitched_roof
  2. dwu spadowy - Gable: http://en.wikipedia.org/wiki/Gable_roof
    Tak jak ja to rozumiem: http://wiki.openstreetmap.org/w/images/f/f3/Roofs_gable.svg

Jednak zwykle dach dwu spadowy nazywany jest po prostu Pitched więc nie jestem pewien jak powinien się nazywać. Na pytanie przy dyskusji na wiki nikt jeszcze nic nie odpisał :confused:

bardziej mi podoba się tagi:
B) building:roof:angle
C) building:facade:material
D) building:roof:material
Do oznaczania wzdłuż i poprzek jest tag:
building:roof:orientation

Generalnie chyba trzeba unikać oznaczania czegokolwiek jako punkty na obrysie, Taki punkt może należeć do obrysów dwóch budynków i zwykle w tym drugim budynku będzie on nie poprawny. Wyszło to po implementacji tagu building:roof:ridge. W dyskusji zaproponowałem sposób jak oznaczyć krawędź dla dachu jedno i dwu spadowego za pomocą relacji. Oczywiście trzeba jeszcze przemyśleć i może inaczej nazwać relacje. Jednak na wiki na razie nikt nic nie odpisał.

http://wiki.openstreetmap.org/w/images/7/7f/Ridge_josm.png
http://wiki.openstreetmap.org/w/images/f/f0/Ridge_Kendzi3D.png

Czekam z niecierpliwością na propozycje dla tagowania dachów :slight_smile:

Temat jest jeszcze bardziej zlozony.
wyslij mi bezposrednio maila to podrzuce Ci serie szkiców co do form dachów. jakos nie mam czasu by to wrzucic w siec bo forma na razie rozwojowa…

Ponieważ to ja swoimi pytaniami PM sprowokowałem Marka do tłumaczenia tekstu o budynkach pozwolę sobie ujednoznacznić i krótko podsumować sprawę tagowania i numerowania budynków cytując informacje z wiadomości od Marka:

Budynki

1. Na budynku tagujemy minimum:
**building ** = yes :slight_smile:

2.Tagowanie budynku Optimum:
building = yes lub **building **= residential (używamy, gdy wiemy ze jest użytkowanie mieszkalne)
building:levels = ilość kondygnacji budynku (ilość pięter + 1)
building:usage:pl = Mieszkalny lub inne przeznaczenie (trzeba zrobic na podstawie definicji sporzadzonej przez GUGiK. )

*3. Robimy węzeł na budynku *
Wg sugestii Marka i Karlsruhe Schema
Numerować trzeba na węzłach, a nie na budynkach,
Na węzłach **przyczepionych **na budynku, najlepiej w miejscu wejścia do budynku lub po stronie budynku, gdzie jest wejście.

*4. Opisujemy węzeł tagując adres *

Tagowanie minimum
**addr:housenumber = **numer :slight_smile:

Tagowanie Optimum
**addr:street: ** = nazwa ulicy
addr:housenumber: = numer domu
**addr:postcode: ** = numer kodu pocztowego w układzie XX-YYY
**addr:city: ** = Nazwa miasta
**addr:coutry: ** = symbol państwa np. PL

można dodawać jeżeli wiadomo gdzie się znajdują:
**entrace:**yes
**name: **emergency exit

Różnice w tagowaniu na budynku i na węźle można zobaczyć poniżej, także jak różnie renderuje Mapnik building = yes lub **building **= residential

Miało być krótko! - sorry

Przypomniał mi się problem, który miałem kiedyś. Co w sytuacji kiedy adres jest następujący:
nazwa_ulicy numer
miejscowość
kod_pocztowy miejscowości_poczta

Przykład: “05-552 Wólka Kosowska, Mroków, ul. Rejonowa 40”. Tutaj adres jest w miejscowości Mroków, ale poczta jest w Wólce Kosowskiej.

Mysle ze tak:

addr:street: = Rejonowa
addr:housenumber: = 40
addr:postcode: = 05-552
addr:city = Mroków
addr:district: = Wólka Kosowska
addr:country: = PL

to jest na podstronce: http://wiki.openstreetmap.org/wiki/Key:addr
Musimy to tez przetlumaczyc na Polski.
Moze ktos sie za to wezmie?

Znalazłem kiedyś taki tag, ale bardzo rzadko używany:
addr:postal_district = * - rejon pocztowy.
Może to jest to?

Czyli by było:
**addr:street ** = Rejonowa
addr:housenumber = 40
**addr:postcode ** = 05-552
**addr:city ** = Mroków
**addr:coutry ** = PL
addr:postal_district = Wólka Kosowska

ale pewności nie mam.

edit:
zgraliśmy się z Markiem :slight_smile:

edit2
Marku uważam, że samo district odnosi się do powiatu - zgodnie z definicją:
http://en.wikipedia.org/wiki/District#Poland

Rozpocząłem trochę rysowanie budynków w Warszawie.

Narysowałem trochę budynków wokół ulicy Żelaznej.

Po narysowaniu kilkunastu budynków mam takie myśli:

  1. Do czego używamy numeracji budynków i samych kształtów budynku jako użytkownicy OSM? Pytanie do was do czego używacie danych takich jak numeracja czy kształt budynku? Odpowiadając na to pytanie mogę powiedzieć, że dla mnie ważny jest numer budynku oraz kształt budynku. Dzięki numerowi jestem w stanie zlokalizować budynek dokładnie, a dzięki kształtowi będąc na miejscu jestem w stanie zrozumieć, gdzie są wejścia, jak obejść budynek itp. Dla mnie numer budynku i kształt budynku są bardzo ważne. Takie mam subiektywne odczucie.

Skoro odpowiedzieliśmy sobie na punkt 1 to teraz rozważania:
a. Czy schemat z Karlsruhe jest ok aby spełnić wymagania i oczekiwanie?
Odpowiedzi na to pytanie jest negatywna. Niestety takie rysowanie budynków nie daje pełnej i przejrzystej informacji o budynku.

Idąc dalej powstaje pytanie na które również nie znalazłem odpowiedzi na forum. Czy istnieje możliwość importu danych do JOSM w sposób cyfrowy? Czy można gdzieś kupić dane geodezyjna w których są narysowane budynki?
A może istnieje jakieś urządzenie jakieś precyzyjne urządzenie GPS które ma precyzję ok. 0,5 m i mogę obejść budynek i zmierzyć go w całości po czym przenieść GPX do JOSM i narysowanie linii?

Jak dzisiaj inni dostawcy map rysują budynki? Jakich techniki używają? Czy sadzają 100 chinczyków i każą im rysować? Czy może jednak mają jakiś automat? Jak dokonują aktualizacji danych? Jak dodają nowe budynki?

Jeśli mogę o pomoc w odpowiedzeniu na te pytania to będę bardzo wdzięczny. Bardzo chciałbym aby Warszawa była jednym z miast w którym budynki są ładnie numerowane i narysowane. :)))

pzdr,
Leszek Giza

Uwaga: uzupelnilem tutorial o rysowaniu budynków o pozycje czeste bledy (bede to jeszcze dalej rozbudowywal)
Patrz:

http://wiki.openstreetmap.pl/Pomoc:Rysowanie_budynk%C3%B3w

a. Czy schemat z Karlsruhe jest ok aby spełnić wymagania i oczekiwanie?
Odpowiedzi na to pytanie jest negatywna. Niestety takie rysowanie budynków nie daje pełnej i przejrzystej informacji o budynku.

Witaj Spoorle :slight_smile:

Co to jest pelna i przejrzysta informacja o budynku? To pytanie o definicje. Nikt, lacznie z aktualna definicja formatu GDF nie ma precyzyjniejszej specyfikacji tego tematu niz osm.

Tak, istnieje mozliwosc importu a dane mozna kupic.
Inni dostawcy danych maja auta pomiarowe wyposazone w kamery video, skanery 3D. W placzeniu ze zdjeciami satelitarnymi i programami pozwalajacymi na semiautomatczne rozpoznawanie budynków tworza oni takie modele. Oczywiscie w wielu krajach kupuja (tam gdzie mozna) dane katastralne gdzie te budynki juz sa. Czego OSM potrzebuje, to program rozpoznajacy semiautomatycznie geometrie budynku ze zdjec lotniczych. Przyspieszylo by to prace. Lepiej zaplacic za to, niz za kupno gotowych danych.
Marek

Moje 3 grosze. Jest jeszcze inna metoda na powiązanie numeru z ulicą niż addr:street, z wiki.openstreetmap.org wynika, że lepsza, z mojej analizy również. Mianowicie poprzez relację associatedStreet, w skrócie: lepsze dla algorytmów, elastyczniejsze, bardziej znormalizowana baza danych, trudniej wprowadzić. Z tego co pamiętam można do niej dorzucać całe budynki, wejścia itp. Warto się zastanowić, którą metodę będziemy propagować na wiki.

Jeśli chodzi o szybkie mapowanie to w przypadku gdy nie ma geometrycznej wątpliwości do której ulicy należy budynek można IMO darować sobie wprowadzanie tej informacji, niezbędna jest tam gdzie algorytmy mogłyby “mieć wątpliwości”.

Jeśli nie ma przeciwwskazań wspomniałbym również (na wiki) o narzędziu Korekta Prostopadłości (jest w Potlatch?).

Byla na ten temat dyskusja w 2009 roku w RFN:
addr:street jest prostsza do zrozumienia dla mapowicza, associatedStreet-relation latwiejsza dla komputera.
W przypadku gdy ulica jest podzielona na fragmenty (np. z powodu róznej klasyfikacji, maxspeed czy wielu dróg dojazdowych; highway=service) trezba podzielic ulice na wiele relacji (regula: tylko 1 way do 1 relacji) co powoduje, ze praca staje sie nieznosna.
Anyway: dopuszcza sie jedna z obu metod a mapowicz moze wybrac która.
Z tego co obserwuje, wiekszosc wybiera prostsza metode, natomiast warto by bylo szczególowo na wiki opisac o co chodzi.
h4v, moze przetlumaczysz odpowiedni fragment wiki na Polski?

Marek

Nie utrudnia to w sposób znaczący wprowadzania danych. Poza tym są pomysły na łączenie pofragmentowanych dróg w całość relacją, wtedy associatedStreet (lub nowy tag) mógłby się odnosić do tej relacji i od strony bazy lepiej by to wyglądało. Pomysłów jest dużo, rzeczywiście nie ma konsensusu jeszcze jak to robić.

Jeśli nie ma przeciwwskazań to dopiszę.

Jasne, napisz. Projekt zyje wieloscia pomyslów i wspólnym poszukiwaniu najlepszego (lub optymalnego ,o) )rozwiazania.
Warto tez napisac tam przyklady jak to zrobic i rysunki dla mniej zorientowanych w temacie.

Ja bym sie nie sugerowal klasyfikacja GUGIK bo ona ma ustalona szczegolowosc. Jesli wiemy cos o uzytkowaniu jakiegos budynku to chyba nie ma powodu zeby nie dac bardziej szczegolowej informacji w tagu building:usage:pl czy building:use:pl.

Druga sprawa to wejscia. Jest taki tag building=entrance ktory kiedys byl na wiki (nie sprawdzalem teraz) i uzywam go od dosyc dawna, a widze ze entrance=yes ma miec ta sama funkcje. Poza tym Marek mowil, ze adresy najlepiej tagowac na wejsciach i ten sam argument slyszalem na konferencji osm od wielu osob z Niemiec, tez tych, ktore zajmuja sie nawigacja dla niepelnosprawnych. Ale globalnie ten sposob sie nie przyjal, i mi tez wydaje sie kiepski. Jesli jakis budynek ma wiele numerow domu, to mozna albo podac wszystkie w jego tagu addr:housenumber, albo tak jak w katastrze podzielic go na kilka budynkow i odpowiednio otagowac ich adresy. Tak staralem sie mapowac budynki w starych dzielnicach Warszawy gdzie sa rzedy polaczonych ze soba kamienic. Duzo budynkow ma wiecej niz jedno wejscie nawet pod tym samym adresem, wiec wydaje mi sie, ze wejscia i adresy to dwie rozne sprawy, i nie nalezy zmieniac sposoby tagowania dla nawigacji. Nawigacje da sie zrobic dobrze z adresami na budynkach i odpowiednio otagowanymi wejsciami. (W niektorych krajach mozliwe ze to wejscia maja przydzielone adresy, ale w Polsce to budynki i dzialki maja adresy, a nie wejscia)

Oczywiscie wejscia moga miec swoje nazwy w name=, te nazwy ladnie sie renderuja na warstwie osmarender. Moj kolega mieszka w bardzo dlugim bloku o jednym adresie gdzie pooznaczal kazde wejscie jako building=entrance, name=Klatka I, Klatka II itd. i swoim znajomym podaje linki do mapy osmarender kiedy chce im pokazac jak do niego dotrzec. Hale handlowe tez czesto maja wejscie pooznaczane kolejnymi literami alfabetu a tylko jeden adres, podobnie ogrodki dzialkowe i cmentarze czesto maja pojedynczy adres i nazwane bramy.

+1 :slight_smile:
Jesli chodzi o dostawcow w Polsce to z tego co wiem uzywaja danych oficjalnych, za ktore placa i ktore sa dostepne nie dla wszystkich regionow, i w roznych formatach. Chyba nie ma serwisu ktory ma budynki dla calego kraju? Oczywiscie kazdy format mozna przekonwertowac do OSM i zaladowac do JOSMa, ale kazdy kolejny format to dodatkowa praca.

To, ze te dane mozna kupic i skonwertowac nie znaczy ze wolno je zaimportowac do OSM, bo np. dane z narodowego zasobu kartograficznego wedlug prawa nie moga byc opublikowane na zadnej sensownej licencji.

A skad biora sie one w zasobach panstwowych? Obawiam sie ze sa po prostu narysowane za pomoca duzej ilosci ciezkiej pracy, przynajmniej na dzien dzisiejszy, moze w przyszlosci beda pozyskiwane za pomoca LIDARu tak jak w Stanach. Na szczescie byly mapowane stopniowo, mapy z budynkami chyba sa prowadzone przez od dosyc dawna i sa utrzymywane w jako takiej aktualnosci i mimo ze kiedys byly papierowe a teraz cyfrowe, to te cyfrowe w duzej czesci pochadza ze skanow, nie powstaly w jednym “rzucie”. Ludzie ktorzy je zmapowali chyba wkladali w to nawet wiecej pracy na pojedynczy budynek niz my w OSM, bo duzo z nich jest z precyzyjnych pomiarow zrobionych zanim istnialy zdjecia lotnicze i gps, teraz juz chyba sa dodawane za pomoca zdjec ale tez nie sadze zeby programy w ktorych sa rysowane byly nawet czesciowo tak przyjazne jak JOSM i Potlatch :slight_smile:

Ja bym sie nie sugerowal klasyfikacja GUGIK bo ona ma ustalona szczegolowosc. Jesli wiemy cos o uzytkowaniu jakiegos budynku to chyba nie ma powodu zeby nie dac bardziej szczegolowej informacji w tagu building:usage:pl czy building:use:pl.

  • zgadza sie. Czy mamy ustalona liste rodzajów uzytkowania? Jesli nie, to ta z GUGiK jest poczatkiem do rozwoju listy bardziej ogólnej.

Druga sprawa to wejscia. Jest taki tag building=entrance ktory kiedys byl na wiki (nie sprawdzalem teraz) i uzywam go od dosyc dawna, a widze ze entrance=yes ma miec ta sama funkcje.
– dokladnie tak

Adresy najlepiej tagowac na wejsciach i ten sam argument slyszalem na konferencji osm od wielu osob z Niemiec, tez tych, ktore zajmuja sie nawigacja dla niepelnosprawnych. Ale globalnie ten sposob sie nie przyjal.

  • -Cóz, w najwiekszej community na swiecie, czyli w Niemczech sie przyjal. Sa ku temu powody o czym ponizej

Jesli jakis budynek ma wiele numerow domu, to mozna albo podac wszystkie w jego tagu addr:housenumber,
– w ten sposób ginie informacja o mjejscu polozenia wejscia budynku, dlatego technika ta sie nie przyjela.

albo tak jak w katastrze podzielic go na kilka budynkow i odpowiednio otagowac ich adresy.
– sa sytuacje gdzie definitywnie jeden budynek na sjkrzyzowaniu dwóch ulic ma dwa wejscia i dwa rózne adresy. Takiego budynku nie mozna podzielic. Dlatego stosowana przez Ciebie technika sie nie przyjela.

Duzo budynkow ma wiecej niz jedno wejscie nawet pod tym samym adresem, wiec wydaje mi sie, ze wejscia i adresy to dwie rozne sprawy, i nie nalezy zmieniac sposoby tagowania dla nawigacji.
– dlatego sa wejscia najace adres oraz wejscia majace jedynie Entrace:yes

Nawigacje da sie zrobic dobrze z adresami na budynkach i odpowiednio otagowanymi wejsciami.
– Owszem, ale z tym systemem mozna zrobic ja lepiej. Akurat tak sie sklada ze rozwijam specyfikacje dla przyszlosciowych systemów nawigacji w konsorcjum NDS. Siedzi tam Navteq, Teleatloas, Zenrin, Porsche, Audi, BMW, Volkswagen, TomTom, Navigon, Elektrobit. Ten pomysl z OSM bardzo sie tam podoba :slight_smile: Jest taka koncepcja nazywajaca sie “last mile navigation” do której sie to stosuje.

(W niektorych krajach mozliwe ze to wejscia maja przydzielone adresy, ale w Polsce to budynki i dzialki maja adresy, a nie wejscia)
– O dzialkach tu nie mówimy, bo maja swoja odrebna numeracje katastralna która oczywiscie tez mozemy ujac w projekcie (polecam do obejrzenia np. centrum Gniezna).
To budynki maja adresy: nalezy to uszczególowic: Domek jednorodzinny owszem tak, ale sa tez inne sytuacje: Pracuje w budynku biurowca który ma dwa rózne adresy choc to jeden, wolnostojacy budynek. Naprzeciwko budynek ma 6 róznych adresów.

Oczywiscie wejscia moga miec swoje nazwy w name=, te nazwy ladnie sie renderuja na warstwie osmarender.
Moj kolega mieszka w bardzo dlugim bloku o jednym adresie gdzie pooznaczal kazde wejscie jako building=entrance, name=Klatka I, Klatka II itd. i swoim znajomym podaje linki do mapy osmarender kiedy chce im pokazac jak do niego dotrzec. Hale handlowe tez czesto maja wejscie pooznaczane kolejnymi literami alfabetu a tylko jeden adres, podobnie ogrodki dzialkowe i cmentarze czesto maja pojedynczy adres i nazwane bramy.
–Tak, oczywiscie. to dobry sposób na oznaczanie wejsc w halach handlowych, wejsciach na lotniskach i innych wielkich obiektach majacych wiele wejsc oznakowanych specjalnie dla publicznosci.
Jesli w tym budynku nie bylo oznaczenia np. 22A, 22B, 22C itd. to kolega postapil slusznie.
Jesli sa to inne, odrebne adresy pocztowe, to wg. tego schematu powinien byl je opisac inaczej.

Sa jeszcze dwa pozytywne aspekty geokodowania adresów na obrysie:

  1. Sa stosowane do robienia lepszych planów ewakuacyjnych (straz pozarna np potrzebuje tego w tej formie a tych danych nie ma) Dlatego w miastach niemieckich jest tendencja do zmiany dotychczasowego systemu opisu gdzie adres ma budynek, na system w którym adres globalny my budynek (np. 22) a adresy szczególowe (np. 22a, 22b, 22c ) sa umieszczane w miejscu gdzie sa wejscia.
  2. W planowaniu urbanistycznym do ustalania nowego przebiegu sciezek np. na starych osiedlach.

Mnie się wydaje logiczniejszym tagowanie node w budynku jako wejście, a sam adres dawac w area. Pozwala to na dodaniu paru wejść (np. sklepy, galerie, budynki uż. publicznego) no i oczywiście moża potem określić dostęp dla takiego wejścia :stuck_out_tongue: np. dla pracowników

Oczywiscie, tagujemy kazde wejscie, jednak adres dajemy tam, gdze jest: Przyklad: Blok mieszkalny ma cztery klatki schodowe: 22A, 22B, 22C, 22D i te w ten sposób oznaczymy. W bloku sa tez z boku dwa wejscia do piwnicy (rowerym kotlownia itp) te oznaczamy jako wejscie.
to samo np w kamienicy majacej dwie klatki schodow dla mieszkanców a oprócz tego na parterze 4 sklepy. Adresami oznaczamy tylko klatki schodowe, zas sklepy to entrace=yes