This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
git_prostorove_databaze [2018/05/28 12:42] efox |
git_prostorove_databaze [2018/05/28 17:24] (current) efox [funkce třídy geometry] |
||
---|---|---|---|
Line 42: | Line 42: | ||
* **vizuální ER schéma** | * **vizuální ER schéma** | ||
* vizuální reprezentace vtahů (relací) na sobě závislých polí (cizích klíčů) mezi tabulkami | * vizuální reprezentace vtahů (relací) na sobě závislých polí (cizích klíčů) mezi tabulkami | ||
+ | |||
+ | |||
+ | ====== SQL (Structured Query language) ====== | ||
+ | * skládá se z: | ||
+ | * DDL (data definition language) | ||
+ | * definice relací, tabulek, atributů, vazeb, integritních omezení, indexů | ||
+ | * DML (data manipulation language) | ||
+ | * změna obsahu tabulek, vlastní dotazování na jejich obsah | ||
+ | * DCL (data control language) | ||
+ | * administrace databáze | ||
+ | * kontrola transakcí | ||
+ | * přidělování práv uživatelům, | ||
+ | |||
+ | ====== SQL/MM (Multimedia) ====== | ||
+ | * standardizovaný soubor ADT, procedur a funkcí vytvořených dle SQL3 pro práci s multimediálním obsahem databáze | ||
+ | * část standardu se zabývá prostorovými daty | ||
+ | * definue: | ||
+ | * ukládání, | ||
+ | * reprezentaci prostorových objektů pomocí prostorových datových typů (spatial types) | ||
+ | * funkce pro práci s prostorovými daty | ||
+ | * St_Geometry -> St_Surface (CurvePolygon, | ||
+ | * ST_geometry columns a spatial reference systems - obsahují popisky prostorových sloupců a souřadnicocých systémů použitých v databázi | ||
+ | * st_units of measure: popisuje délkové a úhlové jednotky použité v databázi | ||
+ | * st_sizings: | ||
+ | * formáty: OGC well-known text representation for geometry, OGC well-known binary representation for geometry, GML | ||
+ | |||
+ | ====== oddělení dotazovacích a zobrazovacích instrukcí ====== | ||
+ | * 3 typy instrukcí: | ||
+ | * vlastní uživatelský dotaz (user query) | ||
+ | * další dotazy (display queries):. jiné barvy a další serepetičky | ||
+ | * vlastní popis jak zobrazit data (display description) | ||
+ | * prezentační jazyk: ukaž budovy z výsledku jako červená kolečka | ||
+ | |||
+ | ====== predikát PICK ====== | ||
+ | * výběr ukázáním | ||
+ | * umožňuje formulovat dotazy s referencí na prostorové objekty viditelné na obrazovce | ||
+ | * může kvalifikovat každý prostorový atribut ve WHERE klauzuli | ||
+ | * například na jmeno mesta na ktere jsem klikla | ||
+ | |||
+ | ====== GPL (Graphical presentation language) ====== | ||
+ | * Spatial SQL obsahuje oddělený prezentační zobrazovací jazyk pro GPL pro manipulaci s grafickou prezentací výsledků dotazu | ||
+ | * tvoří nadmnožinu dotazovací části spatial sql | ||
+ | * **instrukce: | ||
+ | * set: nastavení konkrétních parametrů zobrazení | ||
+ | * cancel: zrušení nastavení | ||
+ | * show: ukáže aktuální hodnotu daného parametru | ||
+ | * **modifikátory** | ||
+ | * permanent: příslušné set/cancel se uloží pro příští práci se systémem | ||
+ | * immediately: | ||
+ | * **parametry nastavitelné pomocí GPL** | ||
+ | * display mode: udává, jak se zobrazují výsledky sekvence dotazů | ||
+ | * grafické módy: new, overlay, remove, intersect, highlight | ||
+ | * neprostorové selecty budou zobrazeny jako labels | ||
+ | * graphical representation: | ||
+ | * buď jenom pro prostorovou relaci nebo pro její instance splňující nějaké její podmínky | ||
+ | * zobrazení legendy, je to easy | ||
+ | * měřítko (scale): SET Scale n; | ||
+ | * výřez (window): SET Window, lze nastavit jako XY dvou protilehlých rohů nebo jako nejmenší obdélník ohraničující výsledky dotazu | ||
+ | * kontext (spatial kontext): SET context - definice kontextu, který je při zpracování dotazu přidán k jeho výsledkům | ||
+ | * zjištění obsahu kresby (examination of content): výsledká kresba může být kombinací mnoha dotazl (pomocí overlay, intersect, remove) | ||
+ | |||
+ | ====== geometrický objektový model dle OGC ====== | ||
+ | {{:: | ||
+ | * třída geometry je ADT - každý geometrický objekt je asociován se souřadnicovým systémem, ve kterém je definován | ||
+ | * point (0D), curve (1D), surface (2D) | ||
+ | * GeometryCollection: | ||
+ | * Curve: sekvence bodů | ||
+ | * OGC 1.1. definuje podtřídu LineString odpovídající lineární interpolaci | ||
+ | * Line: linestring se dvěma body | ||
+ | * linearring: linestring odpovídající jednoduché (neprotíná se) a je uzavřená křivka | ||
+ | * surface: libovolný 2D geometrický objekt | ||
+ | * povrch je jednoduchý, | ||
+ | * multigeometrické typy:více geom typů stejné dimenze | ||
+ | * multipoint, multilinestring, | ||
+ | * každá třída má definované svoje metody | ||
+ | * pro geometry: dimension, geometrytype, | ||
+ | * empty: definuje prázdnou geometrii | ||
+ | ===== funkce třídy geometry ===== | ||
+ | * dimension | ||
+ | * envelope: lomená čára typu BoundingBox | ||
+ | * MBR (minimal bounding rectangle) | ||
+ | * operace: MBRcontains, | ||
+ | * určuje nejmenší obdélník, do kterého lze daný geometrický útvar vepsat | ||
+ | * geometrytype: | ||
+ | * srid | ||
+ | |||
+ | ===== funkce objektu linestring ===== | ||
+ | * glenght | ||
+ | * isclosed (1 nebo 0, shodnost koncového bodu a výchozího bodu) | ||
+ | * numpoints | ||
+ | * strrtpoint, endpoint, point(g,N) | ||
+ | |||
+ | ===== funkce objektu polygon ===== | ||
+ | * area | ||
+ | * exteriorring (vnější kružnice polygonu jako typ linestring) | ||
+ | * interiorring (vnitřní blabla) | ||
+ | * numinterrings (počet vnitřních kružnic - děr) | ||
+ | |||
+ | ===== funkce objektu geometryCollection ===== | ||
+ | * geometry(g, | ||
+ | * numgeometries(g) | ||
+ | |||
+ | ===== přehled ===== | ||
+ | * point: x(), y(),m() | ||
+ | * curve: lenght, startpoint, endpoint, isclosed, isring | ||
+ | * linestring: numpoints, pointn | ||
+ | * multicurve: isclosed, lenght | ||
+ | * surface: area: centroid, pointonsurface | ||
+ | * polygon: exterioring, | ||
+ | * TIN: numpatches, patchn, boundingpolygon, | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | ====== uložení dat v geodatabázi ====== | ||
+ | * OGC simple features | ||
+ | * specifikuje uložení geografických dat v digitální podobě | ||
+ | * založen na 2D geometrii s možností interpolace mezi lomovými body | ||
+ | * prvek je považován za jednoduchý, | ||
+ | * definuje třeba envelope | ||
+ | * WKT | ||
+ | * textový značkovací jazyk pro popis vektorové geometrie geografických objektů prostorových referenčních systémů | ||
+ | * objekty jsou reprezentovány pomocí ascii | ||
+ | * body, linie, polygony, tin, polyhedrony | ||
+ | |||
+ | ====== prostorová doména ====== | ||
+ | * přidá se tam doméne " | ||
+ | * pro zajištění vysoké úrovně abstrakce prostorových dat | ||
+ | * atribut z domény " | ||
+ | * spatial_0 až 3 (pro dimenze) | ||
+ | * v PC zachytím číslo jenom s omezenou přesností, | ||
+ | * simplexy: | ||
+ | * skládání složitějších entit z jednodušších | ||
+ | * simplelx = nejmenší nevyplněný objekt dané dimenze, 0-simplex je bod, 2-simplex je trojuhelník, | ||
+ | * úplné deskriptory: | ||
+ | * komplexní popis modelované oblasti | ||
+ | * množina bodů, úseček a případně vyyšších celků s následujícími vlastnostmi: | ||
+ | * každý (i koncový) bod je bodem sítě | ||
+ | * žádný vnitřní bod není zaznamenán v síti | ||
+ | * žádní dvě úsečky nemají průsečík a ani se nepřekrývají | ||
+ | |||
+ | ====== prostorové predikáty ====== | ||
+ | * relace mezi dvě prostorovými objekty | ||
+ | * výsledek je 1 nebo 0 | ||
+ | * můžu na objekty dvou libovolných dimenzí | ||
+ | * disjoint, meet, overlap, inside/ | ||
+ | * predikáty: left/right, north/ | ||
+ | |||
+ | ====== prostorové operace ====== | ||
+ | * unární: jedna prostorová položka prostorové relace | ||
+ | * topologické operátory: | ||
+ | * dimension | ||
+ | * boundary | ||
+ | * interior - všechny části objektu, které nejsou v jeho hranici, boundingNodes a boundingEdges (určí ohraničující body a úsečky ploch), pro 1D a 2D je boundary, boundingNodes, | ||
+ | * aritmetické operátory: | ||
+ | * lenght, area, volume | ||
+ | * složené operátory: | ||
+ | * perimetr (obvod) pro mnohoúhelník | ||
+ | * extreme coordinates | ||
+ | * complement (doplněk) | ||
+ | * convex hull (konvexní obal) | ||
+ | * binární prostorové operátory (počítají hodnotu ze dvou položek) | ||
+ | * distance | ||
+ | * direction (úhel udávající azimut) | ||
+ | |||
+ | ====== geometrické funkce ====== | ||
+ | * převod geom formátů: astext, asbinary, geomgromtext, | ||
+ | * i point-linestrin-polygon as text apod | ||
+ | |||
+ | ====== prostorové analytické funkce ====== | ||
+ | * všechny funkce přidávají dvě geometrie | ||
+ | * výsledek je boolean | ||
+ | * contains (pokud leží BB úplně) | ||
+ | * within (jako contains ale opačně) | ||
+ | * crosses (BB se nekříží) | ||
+ | * equals (stejné geometrie) | ||
+ | * intersects (BB se dotýkají nebo překrývají) | ||
+ | * overlaps (BB se překrývají) | ||
+ | * touches (BB se dotýkají) | ||
+ | * disjoint (BB se ani nedotýkají ani nepřekrývají) | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | |||