Cs:Relation:boundary
boundary |
Popis |
---|
Pro seskupování hranic a vyznačování enkláv/exkláv. |
Vykreslování v OSM Carto |
Skupina: Vlastnosti |
Členy |
|
Viz též |
Status: de facto |
Nástroje |
Relace boundary=* se používají pro seskupování hranic a označování enkláv/ exkláv(en).
Relace se používají, aby se:
- Vyhnulo použití name:left=*, name:right=*, nation:right=* a region:right=*. Toto bylo nahrazeno jednou relací pro každou zem, provincii, město, atd.
- Snadněji k sobě sešívaly všechny části hranice.
- Vyhnulo více duplikovaným cestám nad sebou.
- Vyhnulo připojování hranic k fyzickým prvkům jako lesům či řekám. Dříve nebo později se tyto prvky v reálu změní a budou aktualizovány v OSM – ale obvykle tvar hranice zůstane stejný. Výjimkou je, když je hranice právně vázána na fyzický prvek.
Značky na cestách
Cesty hranice by měly mít značky boundary=administrative a admin_level=* pro nejvyšší hranici (když země, stát, okres jsou na té samé cestě, pak admin_level by mělo být 2). source=* je vždy doporučován.
Protože hranice mohou být vykreslovány jak z relací tak jednotlivých cest, značení cest je v nejstriktnějším smyslu volitelné. Existoval problém vykreslování (viz tuto diskusi na Githubu(en)), ale ten byl vyřešen.
Relace hranic jsou užitečné pro hodně nástrojů, ale ne nutně pro účely vykreslování, což je důvod proč hraniční linie by měly být označeny, aby je vykrelsovač mohl opět použít.
Staré značky závislé na orientaci jako jsou name:left=*/name:right=* mohou být odstraněny.
Značky na relaci
Klíč | Hodnota | Diskuse |
---|---|---|
type | boundary | také se používá type=multipolygon, ale je to již zastaralé (viz poznámky o softwarové implementaci) |
boundary | administrative | pro skutečnou hranici (někdy uprostřed řeky nebo 12 mil od pobřeží) |
land_area | administrative | pro pobřežní a skutečné hranice na pevnině |
name | název | |
admin_level | administrativní úroveň hranice |
Pokud máte v oblasti administrativní plochu na pevnině měli byste nastavit obojí: boundary=administrative i land_area=administrative. Pokud land_area není stejná jako hranice, udělejte dvě relace, jednu s land_area=administrative a druhou s boundary=administrative.
Členy relace
Prvek | Role | Opakování? | Diskuse |
---|---|---|---|
outer | ! 1+ | Více cest, které tvoří uzavřenou hranici | |
inner | ? 0+ | Enklávy této hranice - více cest, které tvoří uzavřené vnitřní hranice | |
subarea | ? 0+ | Odkazují na relace pod-úrovňových hranic uvnitř této administrativní úrovně. Poznámka: Volitelně, rozporováno a nadbytečné (odkazy na pod-úrovně lze také najít pomocí prostorových dotazů, za předpokladu, že se podobné pod-úrovně nepřekrývají). Také odkazování na jiné relace v některých případech komplikuje editaci. | |
admin_centre | ? 0–1 | Uzel reprezentující administrativní centrum (hlavní město, správní centrum okresu atd.), obvykle město nebo vesnice (závisí na úrovni hranice, viz place=*). | |
label | ? 0–1 | Uzel reprezentující místo, kam se má vykreslit popiska. (Toto není momentálně podporováno Mapnikem). Může se hodit, když existuje enkláva nebo je hranice hodně prohnutá a výchozí umístění popisky by ji dalo zcela mimo plochu hranic. | |
✗ 0 | Zastaralé, použijte místo toho outer |
Poznámka: Cesty nemusí být uzavřeny, ale všechny cesty dohromady musí tvořit uzavřené kruhy vytvářející hranici. Pro neuzavřené, lineární hranice, viz Proposal:Relation boundary segment(en).
Příklady
Baarle Nassau je dobrým příkladem použití této relace. Má exklávy v enklávách. Exklávy v enklávách Belgie by byly přidány jako exklávy do relace Nizozemí, holandské provincie Noord-Brabant a hranice vesnice.
Příklady značení | |
C je enkláva A a exkláva B:
<relation id="1"> <tag k="type" v="boundary" /> <tag k="boundary" v="administrative" /> <tag k="land_area" v="administrative" /> <tag k="admin_level" v="2" /> <tag k="name" v="světlezelená země" /> <member type="way" id="AB" role="outer" /> <member type="way" id="AC" role="inner" /> </relation> <relation id="2"> <tag k="type" v="boundary" /> <tag k="boundary" v="administrative" /> <tag k="land_area" v="administrative" /> <tag k="admin_level" v="2" /> <tag k="name" v="tmavězelená země" /> <member type="way" id="AB" role="outer" /> <member type="way" id="AC" role="outer" /> </relation> |
|
D je exkláva B, ale není enklávou A, jelikož také sdílí hranici s C:
<relation id="1"> <tag k="type" v="boundary" /> <tag k="boundary" v="administrative" /> <tag k="land_area" v="administrative" /> <tag k="admin_level" v="2" /> <tag k="name" v="světlezelená země" /> <member type="way" id="AB" role="outer" /> <member type="way" id="AC1" role="outer" /> <member type="way" id="AC2" role="outer" /> <member type="way" id="AD" role="outer" /> </relation> <relation id="2"> <tag k="type" v="boundary" /> <tag k="boundary" v="administrative" /> <tag k="land_area" v="administrative" /> <tag k="admin_level" v="2" /> <tag k="name" v="tmavězelená země" /> <member type="way" id="AB" role="outer" /> <member type="way" id="BC" role="outer" /> <member type="way" id="AD" role="outer" /> <member type="way" id="CD" role="outer" /> </relation> <relation id="3"> <tag k="type" v="boundary" /> <tag k="boundary" v="administrative" /> <tag k="land_area" v="administrative" /> <tag k="admin_level" v="2" /> <tag k="name" v="fialová země" /> <member type="way" id="AC1" role="outer" /> <member type="way" id="AC2" role="outer" /> <member type="way" id="CD" role="outer" /> <member type="way" id="BC" role="outer" /> </relation> |
Máme i více příkladů!
Softwarová implementace
Software by měl podporovat všechny zastaralé typy, dokud nezmizí z databáze:
- type=multipolygon stejně jako type=boundary (administrativní hranici lze určitě poznat pomocí existující značky boundary=*)
- role=(blank) pro role=outer (povšimněte si, že prázdná role je zastaralá i pro multipolygon, ale obvykle se bere za outer)
Nástroje
Downloady
- OSM Boundaries od uživatele wambacher
Boundaries as download(en) od mapzen.com