|
|
(4 intermediate revisions by the same user not shown) |
Line 1: |
Line 1: |
| | | |
− |
| |
− |
| |
− |
| |
− | ==SDO_SRID: NUMBER==
| |
− | identifikace prostorového referenčního systému, se kterým je asociována geometrie.
| |
− | Pokud je uvedena null hodnota, není asociace provedena. Jinak musí být uveden kód dle typu prostorového referenčního systému.
| |
− |
| |
− | Například:
| |
− |
| |
− | SDO_SRID(WGS 84) = 8307
| |
− |
| |
− | Pokud budeme chtít vytvořit prostorový index, všechny prvky geometrií musí stejný SDO_SRID.
| |
− |
| |
− | ==SDO_POINT: SDO_POINT_TYPE==
| |
− | definuje (geo)objekt typu bod, přesněji SDO_POINT_TYPE (dle dříve uvedených dimenzí). Dle dimenze je pak uveden počet souřadnic. Každá koordináta je zadána datovým typem NUMBER.
| |
− |
| |
− | CREATE TYPE sdo_point_type AS OBJECT (
| |
− | X NUMBER,
| |
− | Y NUMBER,
| |
− | Z NUMBER);
| |
− |
| |
− | Při zadávání bodu musí být SDO_ELEM_INFO a SDO_ORDINATES obě definovány hodnotou null, jinak Spatial funkce nefungují správně.
| |
− |
| |
− | Například zadání bodu
| |
− | SDO_GEOMETRY(
| |
− | 2001,
| |
− | NULL,
| |
− | SDO_POINT_TYPE(10, 20, NULL),
| |
− | NULL,
| |
− | NULL);
| |
− |
| |
− | ==SDO_ELEM_INFO: SDO_ELEM_INFO_ARRAY==
| |
− | definuje použití různé délky pole čísel. Ukazuje, jak interpretovat souřadnice z atributu SDO_ORDINATES.
| |
− | Je sestaven trojicí (SDO_STARTING_OFFSET, SDO_ETYPE, SDO_INTERPRETATION).
| |
− |
| |
− | SDO_STARTING_OFFSET - indikuje počáteční pozici v poli SDO_ORDINATES hodnot daného elementu. První element má vždy hodnotu 1 (nikdy 0).
| |
− |
| |
− | Například:
| |
− | SDO_ORDINATES = (2,4, 4,3, 10,3, 13,5, 13,9, 11,13, 5,13, 2,11, 2,4, 7,5, 7,10, 10,10, 10,5, 7,5).
| |
− | Element, který by byls sestaven ze dvou částí, bude mít začátek pole koordinát na pozici 1 a druhá část složeného prvku může mít definovánu hodnotu jako 19. Hodnota první souřadnice tohoto elementu má pak první souřadnici 7.
| |
− |
| |
− | SDO_ETYPE - indikuje typ elementu, viz [http://download.oracle.com/docs/cd/B28359_01/appdev.111/b28400/sdo_objrelschema.htm#BGHDGCCE].
| |
− |
| |
− | SDO_ETYPE indikuje dvě základní skupiny prvků - jednoduché a složené.
| |
− | U hodnot 1, 2, 1003, a 2003 jsou předpokládány jednoduché elementy, Jsou definovány pomocí jedné trojice hodnot, uvedené v SDO_ELEM_INFO array.
| |
− |
| |
− | ''Jednoduché elementy:'' Pro SDO_ETYPE hodnoty 1003 a 2003, první číslice indikuje exterior (1) nebo interior (2) - viz příklad:
| |
− |
| |
− | 1003: exterior polygon ring (must be specified in counterclockwise order)
| |
− |
| |
− | 2003: interior polygon ring (must be specified in clockwise order)
| |
− |
| |
− | ''Složené elementy:''
| |
− | SDO_ETYPE s hodnotami 4, 1005, 2005, 1006, a 2006 představují složené elementy. Jsou obsaženy v alespoň jednom záhlaví trojice, s řadou trojic, které patří k složenému prvku. Pro 4-místný typ SDO_ETYPE hodnotu, první číslice označuje exterrior (1) nebo interior (2):
| |
− |
| |
− | 1005: polygon vymezující "vnějšek" (hodnoty jeho koordinát musí být uvedeny v pořadí proti směru hodinových ručiček
| |
− |
| |
− | 2005: polygon s vnitřním obsahem (specifikace hodnot jde po směru hodin)
| |
− |
| |
− | 1006: vnějsí povrch, který se skládá z jednoho nebo více polygonálních "kruhů"
| |
− |
| |
− | 2006: vnitřní jednolitý povrch
| |
− |
| |
− | 1007: jednolitý element
| |
− |
| |
− | Prvky složeného prvku jsou souvislé. Poslední bod jedné části složeného prvku je prvním bod další části. Bod se neopakuje.
| |
− |
| |
− | SDO_INTERPRETATION - význam je závislý na tom, zda je v SDO_ETYPE zadán jednoduchý nebo složený element.
| |
− |
| |
− | Například:
| |
− | Máme SDO_ETYPE jako složený element (4, 1005, or 2005), pak SDO_INTERPRETATION specifikuje z kolika trojic hodnot jsou složeny jednotlivé elementy.
| |
− |
| |
− | ==SDO_ORDINATES==
| |
− | definuje použití pole proměnlivé délky (až 1048576) typu NUMBER, kde jsou uloženy souřadnice, tvořící hranice prostorového objektu. Použití je spojeno s SDO_ELEM_INFO. Hodnoty v poli jsou uspořádány dle dimenze.
| |
− |
| |
− | Například:
| |
− | Polygon, jehož hranice je tvořena čtyřmi dvoudimensionálními body je uložen takto:
| |
− | {X1, Y1, X2, Y2, X3, Y3, X4, Y4, X1, Y1}.
| |
− | Polygon, jehož hranice je tvořena čtyřmi třídimensionálními body je uložen takto:
| |
− | {X1, Y1, Z1, X2, Y2, Z2, X3, Y3, Z3, X4, Y4, Z4, X1, Y1, Z1}.
| |
− |
| |
− | == Seznam geometrických tvarů ==
| |
− |
| |
− | (1,1003,4) circle definován třemi body
| |
− | (1,1003,3) one rectangle 1003 - exterior exterior polygon ring, 3 rectangle
| |
− | (1,1003,1) one polygon 1003 - exterior polygon ring - vnější polygon,
| |
− | s body definovanými proti směru hodinových ručiček
| |
− |
| |
− | [http://gis.vsb.cz/wikivyuka/index.php/Prostorov%C3%A9_datab%C3%A1ze#Oracle Hlavní stránka předmětu]
| |