User Tools

Site Tools

git_prostorove_databaze

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
git_prostorove_databaze [2018/05/28 15:34]
efox
git_prostorove_databaze [2018/05/28 17:24] (current)
efox [funkce třídy geometry]
Line 104: Line 104:
  
 ====== geometrický objektový model dle OGC ====== ====== geometrický objektový model dle OGC ======
-{{::3_ogc.png?300|}}+{{::3_ogc.png?600|}} 
 +  * 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: několik klidně různých objektů, ale musí mít stejný SS 
 +  * 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ý, lze li ho definovat jednou vnější hranicí a 0 až n vnitřními hranicemi (které se ale nesmí protínat, jsou tam od toho, aby definovaly díry) 
 +  * multigeometrické typy:více geom typů stejné dimenze 
 +        * multipoint, multilinestring, multipolygon 
 +  * každá třída má definované svoje metody 
 +  * pro geometry: dimension, geometrytype, srid 
 +  * empty: definuje prázdnou geometrii 
 +===== funkce třídy geometry ===== 
 +  * dimension 
 +  * envelope: lomená čára typu BoundingBox 
 +        * MBR (minimal bounding rectangle) 
 +              * operace: MBRcontains, eithin, equal, intersect, overlaps, touches, joint 
 +        * určuje nejmenší obdélník, do kterého lze daný geometrický útvar vepsat 
 +  * geometrytype: point, linestring, polygon, ... 
 +  * 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,N) 
 +  * 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, numinrioring, interioringn 
 +  * TIN: numpatches, patchn, boundingpolygon, isclosed 
 + 
 + 
 + 
 + 
 +====== 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ý, pokud nedochází k překřížení prvku se sebou samým 
 +        * 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 "spatial" 
 +  * pro zajištění vysoké úrovně abstrakce prostorových dat 
 +  * atribut z domény "spatial" je spatial attribute, je i spatial relation 
 +  * spatial_0 až 3 (pro dimenze) 
 +  * v PC zachytím číslo jenom s omezenou přesností, tak proto 2 přístupy: 
 +        * 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, 3-simplex je čtyřstěn atd... 
 +        * ú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/contains, equal 
 +  * predikáty: left/right, north/south, over/under 
 + 
 +====== 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, boundingedges, interior, interiorNodes, interiorEdges, interiorAreas 
 +  * 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, geomfromwkb 
 +        * 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í) 
  
  
Permalink git_prostorove_databaze.1527514466.txt.gz · Last modified: 2018/05/28 15:34 by efox

oeffentlich