Vektorová data

Vektorová data (Vector graphics) jsou souborem geometrických elementů, reprezentující fenomény reálného světa jako diskrétní prvky. Prvky jsou podle svého charakteru reprezentovány jako bod, linie nebo polygon.

../_images/vektor.png

Obrázek 1: Vektorové prvky - bod, linie a polygon.

Poznámka

V anglické literatuře je vektorový prvek označován jako feature. Slovo feature je pak tradičně do češtiny překládáno jako charakteristický rys, resp. vlastnost objektu. Aby zmatení bylo dokonalé, v českých normách je anglické feature ve významu vektorového objektu v GIS překládáno jako vzhled jevu. Závěr: narazíte-li v anglické literatuře na slovo feature a v českých normách na vzhled jevu, vždy se jedná o vektorový prvek v GIS s geometrií a atributy.

Vektorová data jsou vhodná všude tam, kde se jedná o modelování diskrétních objektů, jako ideální reprezentace fenoménu reálného světa:

  • výskyt jedince sledovaného druhu (bod),
  • významný orientační prvek (bod),
  • středová linie silnice, silniční síť (linie),
  • průběh elektrického vedení (linie),
  • říční síť, dráhy povrchového odtoku (linie),
  • hranice parcel katastru nemovitostí (polygon),
  • hranice vodních ploch (polygon),
  • hranice půdního krytu (polygon),
  • ...
../_images/vector-model-sfa.png

Obrázek 2: Ukázka vektorové reprezentace jevů realného světa - bod (významný orientační prvek), linie (středová linie silnice) a polygony (hranice půdního krytu).

Vektorová data jsou většinou uložena ve formě uspořádaných dvojic souřadnic \(x, y\). Linie a plocha je zapsána pomocí množiny těchto uspořádaných dvojic definující jejich lomové body. Přesnost takto zadaných souřadnic tak může být teoreticky nekonečná (co umožní počítačové systémy).

Zvláštním případem jsou tzv. multiprvky (angl. multipoints, multilinestrings, multipolygons). Jde o vektorové prvky skládající se z více vzájemně nepropojených geometrických objektů. Například dálnice D8 je v úseku přes České středohoří přerušena - lze ji tak reprezentovat jako objekt multiline sestávající se ze dvou nesouvislých liniových geometrických elementů.

Atributy vektorových dat

Kromě informace o geometrických vlastnostech prvků nesou vektorová data také popisnou informaci uloženou v atributech. Atributy jsou většinou zaznamenány do formy databázové tabulky. V závislosti na použitém software se jedná buď o souborý formát (například DBF u formátu Esri Shapefile) nebo plnohodnotný databázový server (například PostgreSQL).

../_images/vector-attributes.png

Obrázek 3: Mapa velkoplošných chráněných území spolu s atributy uloženými v atributové tabulce (zdroj: AOPK OGC WFS Server).

Geometrická a atributová složka bývají obvykle uloženy zvlášť a navzájem propojeny pomocí jednoznačného interního identifikátoru (tzv. feature id).

Počet atributů vektorových prvků je teoreticky nekonečný. Pokud použijeme pro uložení atributů databázový systém, je možné s daty dále pracovat pomocí standardních nástrojů databazových systémů jako je např. SQL (více ve školení PostGIS pro začátečníky).

Poznámka

Některé softwary, například databázový systém PostGIS nebo souborová databáze SpatialLite, ukládají geometrickou složku dat jako jeden z atributů vektorového prvku (viz kapitola Prostorové databáze). Data jsou uspořádána do klasické databázové tabulky, geometrie je pouze další atribut - geometrie tak není od atributů nijak oddělena. Příklad: výpis parcel s jejich identifikátorem, parcelním číslem a geometrií ve formě WKT:

+------------+------------------------------------------------------+--------+
|    fid     |                       geometry                       |  cislo |
+============+======================================================+========+
|45496175010 | POLYGON((-728524.789710812 -1066515.49883718,-728... | 515    |
+------------+------------------------------------------------------+--------+
|2982799209  | POLYGON((-723694.909701298 -1063302.12883134,-723... | 1331/10|
+------------+------------------------------------------------------+--------+
|2969999209  | POLYGON((-718640.439694238 -1037240.20878015,-718... | 1276   |
+------------+------------------------------------------------------+--------+

Vektorová topologie

Topologie je vlastnost vektorových prvků, pomocí které lze určit jejich vzájemné prostorové vztahy. Pomocí topologie lze popsat charakteristiky dvou vektorových prvků jako:

  • prvek leží v jiném prvku,
  • prvek se kříží s jiným prvku,
  • prvek je nalevo/napravo od prvku,
  • prvek je shodný s prvkem a tak dále.

Softwary a jejich formáty přistupují k topologii různě, dnes ale převládá takový přístup, že data jsou uložena v netopologickém formátu jako tzv. jednoduché prvky, resp. simple features a topologické charakteristiky jsou počítány na vyžádání.

Poznámka

Jiné softwary jako např. GRASS GIS naopak data vždy ukládá v topologickém formátu (více ve školení pro začátečníky).

../_images/area-1-2.png

Obrázek 4: Ukázka topologického datového modelu (uzly, hrany a plochy).

Nejsou-li data tzv. topologicky čistá, obsahují různě závažné chyby topologie. Například společná hranice dvou parcel není stejná, ale každá parcela má lehce posunuté hraniční lomové body a tudíž dochází v některých místech k nedotažení společné hranice, na jiných místech zase obě parcely do sebe zasahují. Dalšími chybami mohou být nedotažení lomových bodů nebo naopak jejich přetažení. Většina pokročilích GIS obsahují nástroje pro čištění topologie.

../_images/overshoot.png
../_images/v_clean_rmsa.png

Obrázek 6: Zdroje: Běžné chyby v topologii vektorových dat Digitalisation de cartes vectorielles a GRASS GIS Manual.

Vektorové formáty

Mezi nejčastěji používané vektorové formáty v GIS patří:

  • Esri Shapefile
  • KML
  • GML
  • GeoJSON

Formát, který by si zasloužil větší pozornost je standardizovaný formát OGC GeoPackage.

Vektorová data se také tradičně ukládají do prostorových databází (popsaných v další části).

Formát Esri Shapefile

Formát Esri Shapefile je tradičně nejpoužívanějším formátem pro vektorová data. Tento datový formát je dnes již zastaralý, nicméně pro některé jednodušší typy dat stále dostačující. Je podporován prakticky všemi nástroji GIS a ve své době se stal prakticky oborovým standardem. Důvodem je, že firma Esri uvolnila dokumentaci k tomuto formátu a jeho licence nezakazuje jeho implementaci v software třetích stran.

Vektorové prvky jsou v tomto formátu uloženy v netopologické formě, tj. například společná hranice dvou polygonů je uložena dvakrát, jednou jako součást prvního polygonu a podruhé jako součást druhého polygonu.

Data jsou uložena (minimálně) ve třech souborech, lišících se od sebe navzájem koncovkou:

  • *.shp - geometrie (shape)
  • *.dbf - atributy (databáze)
  • *.shx - propojení geometrie a atributů (index)

Poznámka

Souborů tvořící datovou vrstvu v tomto formátu může být potencionálně víc, např. soubor s koncovkou *.prj obsahující informace o souřadnicovém systému ve formě Esri WKT, *.cfg s informací o kódování atributových dat a další.

Důvody proč dnes již Esri Shapefile nepoužívat

Z dnešního pohledu obsahuje formát Shapefile několik slabých míst:

  • data nejsou uložena v jednom souboru, ale minimálně ve trojici (shp+shx+dbf) souborů. Různé softwarové produkty si navíc přidávají vlastní metadatové soubory, které nejsou součástí specifikace tohoto formátu.
  • Názvy atributů jsou omezeny pouze na deset znaků.
  • Data neobsahují informaci o znakové sadě (některé softwary tuto informaci zapisují do souboru s příponou *.cfg, ale je to spíše vyjímka), což vede k problémům při automatické konverzi dat a používání na různých operačních systémech.
  • Velikost souborů je maximálně 2GB.
  • Neumožňuje ukládat topologické informace o vzájemných vztazích mezi prvky geodat.
  • Každý soubor SHP umožňuje ukládat pouze jeden typ geometrie (bod, linie, polygon).
  • Neumožňuje uložit stromovou strukturu dat.

Důvody proč se Esri Shapefile stále používá

  • Je podporován prakticky všemy softwary.

Formát KML

OGC KML je určen především pro vizualizaci jednotlivých prvků geodat. Formát byl původně vyvinut firmou Google a je postavený na jazyce XML. Data v souborech KML, na rozdíl od GML (viz níže), umožňují použít pouze souřadnicový systém WGS84.

KML podporují produkty firmy Google, ale i řada služeb a programů třetích stran. Bývá často podporován moderními GPS přijímači. V minulosti býval nasazován ve webových mapových aplikacích, protože je v porovnání s GML menší a obsahuje zmíněnou informaci o vizualizaci jednotlivých prvků geodat. Ačkoliv byl v době před cca 3 lety tento formát populární, dnes je často nahrazován formátem GeoJSON.

Formát GML

OGC GML (Geography Markup Language) jako otevřený standard je perspektivním formátem pro přenos vektorových dat. Jedná se o jednosouborový textový formát založený na značkovacím jazyce XML, je proto interpretovatelný i bez speciálního software. Kromě standardizace na úrovni OGC je definován technickou normou ISO 19136. Vzhledem k tomu je podporován většinou moderních GIS nástrojů. GML je také předepsaný technickými dokumenty INSPIRE a výchozím formátem služby WFS.

GML se používá jako univerzální formát pro data, která mohou mít i komplikovanější stromovou strukturu. Díky tomu, že je postaven na XML, je jeho strojové zpracování jednoduché i běžnými systémy, například pomocí transformace XSLT.

Formáty GeoJSON a TopoJSON

Populárními formáty se v poslední době stávají formáty odvozené z formátu JSON, především GeoJSON a TopoJSON. Formáty JSON mají své uplatnění především mezi webovými technologiemi. Oproti formátům odvozených z XML (GML, KML) mají kratší zápis, což je výhodné při přenosech v prostředí Internetu. Stejně jako při využití formátů odvozených z XML, je i zde je možné zabezpečit správnost struktury dat to pomocí schémat.

JSON je velice přívětivý k netypovým programovacím jazykům, je srozumitelný prostým lidským okem. Souřadnicový systém není v těchto formátech jak specifikovat, předpokládá se, že se jedná o WGS84. Data lze libovolným způsobem zanořovat a větvit.

GeoJSON je využíván u webových služeb pro svůj malý objem a jednoduchost. Je méně náročný na zpracování, což je vhodné zejména u webových prohlížečů. U uživatelů mimo svět GIS je oblíbený, protože jeho strukturu je možné rychle pochopit a připravit vlastní parser.

TopoJSON je druhým formátem odvozeným z formátu JSON, který ale zatím nenabyl takové popularity jako GeoJSON. Hlavním úkolem formátu TopoJSON je minimalizace datového toku mezi webovým serverem a klientem. Formát je částečně ztrátový, neboť souřadnice bodů a lomových bodů jsou zapisovány v relativní poloze od daného počátku a v celých číslech (ztrácí se přesnost). K úspoře datové velikosti vede také fakt, že např. hranice polygonů jsou uloženy pro dvě sousedící plochy pouze jednou (formát je tedy topologický).