Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Styczeń 2016 Związki 1/46
Plan wykładu Związki 1 2 Związki 3 2/46
dane dotyczące obiektów powiązanych z powierzchnią Ziemi i połączonych ze sobą różnorodnymi związkami; obiekty te mają charakter naturalny lub antropogeniczny Mogą to być dane geo,, dane o terenie, katastralne, itp.. Związki 3/46
Zastosowania GIS - Geographic Information System CAD - Computer Aided Design CAM - Computer Aided Manufacturing Związki 4/46
GIS I Związki GIS Systemy Informacji Geograficznych - komputerowy system wspomagania, tworzenia, przechowywania i analizowania map cyfrowych. Prezentacja w bazie danych składa się z części graficznej (obraz) i z części tabelarycznej (atrybuty poszczególnych elementów tego obrazu). Zastosowanie w: urzędach administracyjnych administracji budynków ratownictwie wojsku 5/46
GIS II Związki kartografii i geodezji ochronie środowiska leśnictwie i rolnictwie nieruchomościach marketingu handlu architekturze turystyce organizacjach międzynarodowych transporcie przemyśle 6/46
CAD CAD Komputerowe wspomaganie projektowania (ang. Computer Aided Design) - projektowanie wspomagane komputerowo, czyli zastosowanie sprzętu i oprogramowania komputerowego w projektowaniu technicznym. Metodologia CAD znajduje zastosowanie między innymi w inżynierii mechanicznej, elektrycznej, budowlanej. Związki 7/46
CAM CAM Komputerowe wspomaganie wytwarzania (ang. Computer Aided Manufacturing) - system komputerowy, który ma za zadanie integrację fazy projektowania i wytwarzania. Związki 8/46
określa sposób reprezentacji obiektów świata rzeczywistego w aspekcie ich położenia go, kształtu oraz istniejących między nimi relacji Związki 9/46
Hierarchia typów geometrycznych Związki 10/46
y geometrii I Związki 11/46
y geometrii II Związki 12/46
Warstwa przestrzenna Warstwa Warstwa jest zbiorem geometrii mających ten sam zbiór atrybutów. owo warstwą może być mapa krajów, województw, miast, sieci rzek, szlaków, kanałów, obszarów zalesionych, obszarów o danej gęstości zaludnienia, obszarów rolnych, sieci firmowych sklepów. Związki 13/46
Związki Układ współrzędnych przydziela współrzędne obiektom i ustanowia związki pomiędzy zbiorami takich współrzędnych. Jeśli współrzędne opisują kulę ziemską, to układ jest georeferencyjny (współrzędne nie związane z kulą ziemską - układ niegeoreferencyjny) i posiada domyślną jednostkę miary, taką jak metry, każdy wynik można przekonwertować na inne jednostki, takie jak mile. : układ geograficzny, układ kartezjański, układ WGS-84, układ lokalny. 14/46
Związki zdjęcia satelitarne zdjęcia lotnicze zdjęcia naziemne odbiorniki GPS pomiary geodezyjne i stacje pomiarowe prace, obserwacje, pomiary i wywiady terenowe mapy i plany roczniki statystyczne, rejestry, inwentarze, dzienniki pomiarowe państwowe i instytutowe zasoby danych internetowe bazy danych 15/46
Dokładność danych Dokładność w bazie danych to liczba błędów danych geometrycznych i opisowych. Zależy od techniki pozyskiwania danych, oraz od danego źródła. Można używać jednocześnie wielu warstw danych o różnych dokładnościach (osiąganie jednakowej dokładności jest nieekonomiczne). Związki 16/46
Precyzja danych Precyzja to poziom szczegółowości pomiarów lub atrybutów opisowych. nieprecyzyjne zawierają zbyt mało szczegółów (na przykład zbyt mała liczba cyfr po przecinku lub krótkie atrybuty opisowe). Związki 17/46
Przyczyny Związki Przyczyny błędnych i nieprecyzyjnych danych : błędy pomiarów terenu, błędy przy wprowadzaniu danych do komputera, nieaktualne dane źródłowe, niepełny dostęp do danych, zła skala map i planów, pośrednie związanie danych z tematem, konwersja lub format zapisu danych, próba obniżenia kosztów pozyskiwania i wprowadzania dużej liczby danych. 18/46
Związki przechowują dane, zarówno ich geometrię, jak i atrybuty opisowe. Dzięki zoptymalizowanym zapytaniom i systemom transakcyjnym, umożliwiają szybki dostęp, z którego może korzystać jednocześnie wielu użytkowników. Ustalają optymalną strukturę danych, a także ułatwiają połączenia z dodatkowymi zbiorami atrybutów opisowych. Wykorzystują relacyjny model danych obiektowy model danych 19/46
Rozszerzenia Oracle Oracle Locator (w każdej edycji) - udostępnia funkcje i mapowanie niezbędne do wielu aplikacji biznesowych włączanych lokalnie Oracle Spatial Data Option (w Oracle Database 11g Enterprise Edition) - pozwala na obsługę plików 3D i usług sieciowych w celu zarządzania wszystkimi danymi geoprzestrzennymi, w tym danymi wektorowymi i rastrowymi, topologią i modelami sieci Związki 20/46
Oracle Spatial I Związki Spatial składa się z następujących części: schemat (MDSYS) określający przechowywanie, składnię i znaczenie obsługiwanych typów danych geometrycznych; mechanizm go indeksowania; operatory, funkcje i procedury do przeprowadzania zapytań na danych obszarach, go łączenia zapytań i innych operacji analitycznych; funkcje i procedury dotyczące użyteczności i operacje dostrajania; topologiczny model danych do pracy z danymi związanymi z węzłami, krawędziami i powierzchniami w topologii; sieciowy model danych do reprezentowania charakterów lub obiektów, które są wymodelowane jako węzły i połączenia w sieci; 21/46
Oracle Spatial II GeoRaster - funkcji pozwalającej na przechowywanie, indeksowanie, analizę i doręczanie funkcji GeoRaster danych, czyli obrazów rastrowych, danych gridowych oraz powiązanych z nimi metadanych. Związki 22/46
Model obiektowo-relacyjny w Oracle Spatial Związki Do przedstawienia geometrii Spatial wykorzystuje model obiektowo-relacyjny. Przechowuje całą geometrię poprzez dane wektorowe SDO GEOMETRY. Tabela może zawierać jedną lub więcej kolumn SDO GEOMETRY. Obiektowo-relacyjny model odpowiada określeniu SQL z typami geometrycznymi, czyli implementacji tabel w specyfikacji Open GIS ODBC/SQL dla cech geo. 23/46
Korzyści Związki Korzyści płynące z wykorzystania modelu obiektowo-relacyjnego obejmują: wsparcie dla wielu typów geometrii, w tym: łuki, okręgi, powiązane wielokąty i ciągi liniowe oraz zoptymalizowane prostokąty; łatwość użycia w tworzeniu i utrzymywaniu indeksów oraz w wykonywaniu zapytań; utrzymywanie indeksu przez bazę danych Oracle; modelowanie geometrii w pojedynczej kolumnie; optymalne wykonawstwo; wydajna manipulacja, przywracanie i powiązanie danych z innymi danymi przechowywanymi w bazie danych. 24/46
Obsługiwane typy Związki Spatial obsługuje następujace typy : punkty i klastry punktów, ciągi liniowe, n-punktowe wielokąty, łukowe ciągi liniowe, wielokąty łukowe, wielokąty złożone, złożone ciągi liniowe, okręgi, zoptymalizowane prostokąty, obiekty oraz czterowymiarowe 25/46
Spatial korzysta z dwuwarstwowego modelu zapytań do wyciagania informacji i tworzenia połączeń. Dopiero działanie dwóch połączonych operacji daje dokładny zestaw wyników: Filtr pierwotny zezwala na szybką selekcję rekordów kandydujących do przejścia przez filtr wtórny. Filtr wtórny stosuje dokładne obliczenia do geometrii, które pochodzą z filtra pierwotnego. Związki 26/46
Tolerancja Związki Tolerancja umożliwia bazie danych współpracę z poziomem precyzji. Polega ona na odzwierciedleniu odległości dwóch (być może) odrębnych punktów, wciąż rozpatrywanych jako ten sam punkt. Wartość tolerancji jest liczbą dodatnią i większą od zera, zależną od układu współrzędnych. Dla geodezyjnych danych (takich jak długość i szerokość geograficzna) wartość tolerancji jest liczbą wyrażoną w metrach. Dla danych geodezyjnych wartość ta nie powinna być mniejsza niż 0.05 (czyli 5 centymetrów). Dla niegeodezyjnych danych wartość tolerancji jest podana w jednostkach związanych z układem współrzędnych określonych danych. 27/46
Związki umożliwia szybsze wykonywanie zapytań w języku SQL, jest oparte na kryteriach takich jak przecięcia i domknięcia. jest wymagane przy: wyszukiwaniu obiektów pochodzących z wnętrza przestrzeni indeksowanych danych, które oddziałują z danym punktem interesującego obszaru (okno zapytań), wyszukiwaniu par obiektów pochodzących z wnętrza dwóch przestrzeni indeksowanych danych, które oddziałują przestrzennie z każdymi innymi (połączenie ). Najczęściej stosowaną metodą indeksowania go jest R-drzewo. 28/46
R-drzewo R-drzewa przybliża każdą geometrię jako pojedynczy prostokąt minimalizujący ograniczenia geometrii (zwany minimalnie ograniczającym prostokątem, lub Minimum Bounding Rectangle w skrócie MBR). Związki 29/46
Związki By ustalić związki, Spatial posiada kilka metod filtra wtórnego: operator SDO RELATE określający kryteria topologiczne, operator SDO WITHIN DISTANCE zawieranie się w danej odległości od obiektu, operator SDO NN ustalający najbliższych sąsiadów danego obiektu go. Związki 30/46
SDO RELATE Związki SDO RELATE model 9-elementowych przecięć dla sklasyfikowania binarnych związków topologicznych pomiędzy punktami, prostymi i wielokątami Każdy obiekt przestrzenny ma wnętrze, granicę oraz wierzch. Granica ciągu liniowego składa się z jego punktu końcowego. Jednakże, jeśli punkty końcowe nachodzą na siebie (czyli wtedy, gdy są tym samym punktem), to ciąg linii nie ma granicy. Granica wielokąta jest prostą, która kreśli jego obwód. Wnętrze składa się z punktów, które znajdują się w obiekcie, lecz nie na jego granicy. Wierzch składa się z tych punktów, które nie zawierają się w obiekcie. 31/46
SDO RELATE Związki 32/46
SDO RELATE I Związki DISJOINT: granice i wnętrza nie przecinają się; TOUCH: granice przecinają się, lecz wnętrza już nie; OVERLAPBYDISJOINT: wnętrze pierwszego z obiektów przecina granicę i wnętrze drugiego obiektu, lecz obydwie granice już się nie krzyżują; ten związek zdarza się, na przykład wtedy, gdy prosta rozpoczyna się na wierzchu wielokąta i kończy w jego wnętrzu; OVERLAPBYINTERSECT: granice i wnętrza dwóch obiektów przecinają się; EQUAL: dwa obiekty mają te same granice i wnętrza; CONTAINTS: wnętrze i granica jednego z obiektów zawiera się całkowicie we wnętrzu drugiego obiektu; 33/46
SDO RELATE II Związki INSIDE: odwrotność CONTAINS; A INSIDE B implikuje B CONTAINS A; COVERS: wnętrze jednego z obiektów zawiera się całkowicie we wnętrzu lub granicy drugiego obiektu i ich granice się przecinają; COVEREDBY: odwrotność COVERS; A COVEREDBY B implikuje B COVERS A; ON: wnętrze i granica obiektu znajduje się na granicy innego obiektu i drugi obiekt obejmuje ten pierwszy; ten związek zdarza się w przypadku, gdy prosta znajduje się na granicy wielokąta; ANTYINTERACT: obiekty są niezależne. 34/46
SDO RELATE III Związki 35/46
SDO WITHIN DISTANCE Związki 36/46
Związki Elementy wykorzystywane przy opisie j rzeczywistości: Punkt Prosta Wielokąt Płaszczyzna Zbiór Chmura punktów Multi prosta Multi powierzchnia Bryła Multi bryła 37/46
Związki SDO ANYINTERACT, SDO FILTER, SDO INSIDE (tylko dla geometrii brył), SDO NN, SDO WITHIN DISTANCE. Związki 38/46
Definicja tabel I CREATE TABLE jura_rez_park ( id_jury NUMBER PRIMARY KEY, nazwa VARCHAR2(20) NOT NULL, opis VARCHAR2(200), ksztalt SDO_GEOMETRY ); Związki CREATE TABLE szlak ( id_jury NUMBER PRIMARY KEY, nazwa VARCHAR2(20) NOT NULL, opis VARCHAR2(80), ksztalt SDO_GEOMETRY ); 39/46
Definicja tabel II CREATE TABLE obiekty ( id_jury NUMBER PRIMARY KEY, nazwa VARCHAR2(20) NOT NULL, miejscowosc VARCHAR2(40), kod_kocztowy NUMBER(5), ulica VARCHAR2(50), kategoria VARCHAR2(20), opis VARCHAR2(80), ksztalt SDO_GEOMETRY ); Związki 40/46
Wstawienie danych I Związki INSERT INTO jura_rez_park VALUES( 1, JKC, Jura Krakowsko-Częstochowska - Wyżyna Krakowsko-Częstochowska o dużej liczbie wapiennych ostańców, dolin, wzgórz i jaskiń., MDSYS.SDO_GEOMETRY( 2003, 8307, NULL, MDSYS.SDO_ELEM_INFO_ARRAY(1,1003,1), MDSYS.SDO_ORDINATE_ARRAY ( 18.574676, 51.265868, 18.999252, 51.164964, 19.290090, 50.829919, 19.430580, 50.731805, 19.622841, 50.692673, 19.643326, 50.593089, 19.860077, 50.513950, 41/46
Wstawienie danych II Związki ) ); ) 19.919357, 50.304516, 19.921632, 50.121695, 19.950943, 50.086490, 19.450493, 50.081952, 19.469719, 50.169554, 19.566193, 50.317934, 19.518185, 50.456695, 19.419594, 50.496962, 19.317970, 50.583367, 19.367294, 50.646239, 19.118843, 50.827322, 18.731461, 50.992409, 18.574676, 51.265868 42/46
Wizualizacja Związki 43/46
Co byśmy chcieli wiedzieć... Związki... a o co relacyjnej bazy nie moglibyśmy zapytać :) Jaki dystans dzieli mnie od najbliższej restauracji? Czy bliżej mam do Elżbiety, czy do Zygmunta? Jakiej atrakcji mogę szukać w pobliżu miejsca, w którym stoję? Czy na Chełmowej Górze mogę zbierać grzyby? Czy Diabelskie Mosty znajdują się w Rezerwacie Parkowe? Czy zszedłem z trasy Szlaku Orlich Gniazd? 44/46
Zapytanie SELECT o.nazwa, SDO_NN_DISTANCE(1) DYSTANS_W_KM FROM obiekty o WHERE kategoria LIKE RESTAURACJA AND SDO_NN (ksztalt, MDSYS.SDO_GEOMETRY( 2001, 8307, MDSYS.SDO_POINT_TYPE( 19.131008, 50.811680, NULL ), NULL, NULL ), SDO_NUM_RES = 2 unit = kilometer, 1 ) = TRUE ; Związki 45/46
I Związki W wykładzie wykorzystano materiały: E. Dziubek, Zaawansowane zastosowanie danych z wykorzystaniem Oracle 11g dla informacji turystycznej, Częstochowa 2011 H. Klimczak Prawie wszystko o danych..., Uniwersytet Przyrodniczy, Wrocław 2010 J. Michalak Problemy standaryzacji w GIS, GIS w praktyce, CPI, Warszawa 2001 K. Stolze SQL/MM Spatial: The Standard to Manage Spatial Data in Relational Database Systems, BTW 2003 L. Litwin i G. Myrda Zarządzanie danymi przestrzennymi w GIS, SIP, SIT, LIS, Helion, Gliwice 2005 http://download.oracle.com/docs/cd/b28359_01/ appdev.111/b28400/sdo_intro.htm 46/46