gis – systemy informacji geograficznej
DESCRIPTION
GIS – SYSTEMY INFORMACJI GEOGRAFICZNEJ. WEKTOROWE MODELE DANYCH. PLAN WYKŁADU METODY ZAPISU ODWZOROWAŃ KARTOGRAFICZNYCH ZAPIS ODWZOROWANIA KARTOGRAFICZNEGO PLIKÓW SHP MODELE WEKTOROWE PROSTE MODELE WEKTOROWE ZŁOŻONE – MODEL TOPOLOGICZNY TRIANGULACJA DELAUNEYA – CZ.I STRUKTURA DANYCH DCEL - PowerPoint PPT PresentationTRANSCRIPT
GIS ndash SYSTEMY INFORMACJI GEOGRAFICZNEJ
WEKTOROWE MODELE DANYCH
PLAN WYKŁADU
1 METODY ZAPISU ODWZOROWAŃ KARTOGRAFICZNYCH2 ZAPIS ODWZOROWANIA KARTOGRAFICZNEGO PLIKOacuteW SHP3 MODELE WEKTOROWE PROSTE4 MODELE WEKTOROWE ZŁOŻONE ndash MODEL TOPOLOGICZNY5 TRIANGULACJA DELAUNEYA ndash CZI6 STRUKTURA DANYCH DCEL7 DEFNICJE POLIGONU WIELŚCIANU D-KOMOacuteRKI
DEFINIOWANIE UKŁADU WSPOacuteŁRZĘDNYCH
A) w przypadku wspoacutełrzędnych geograficznych (φ λ)bull elipsoida (elipsoid)bull położenie elipsoidy w przestrzeni (datum)
B) w przypadku wspoacutełrzędnych płaskich dodatkowoodwzorowanie kartograficzne (mapprojection)parametry odwzorowania zależą od typu odwzorowanianp dla odwzorowania Gaussa-Kruumlgera lub poprzecznego
odwzorowania Mercatora(Transverse Mercator) są to południk środkowy wspoacutełczynnik skalujący na południku osiowym przesunięcie w kierunkach wschodnim i poacutełnocnym
FORMAT DANYCH PLIKU ODWZOROWANIA DLA PLIKOacuteW SHAPE (PRJ)
Informacja opisująca zastosowane odwzorowanie dla danych zapisanych w formacie shape jest niezbędna dla prawidlowego ich odczytu i dalszego ich wykorzystania Plik prj nie jest plikiem wymaganym jednak bardzo często stosowanym gdyż najczęściej nie jest możliwe wywnioskowanie jedynie z samych danych jakie odwzorowanie kartograficzne zostało zastosowane Plik prj najczęściej zawiera następujące informacje
Geographic coordinate system Datum (geodesy) Spheroid Prime meridian Map projection Units used
Parametry odwzorowania kartograficznego bull Latitude of origin bull Scale factor bull Central meridian bull False northing bull False easting bull Standard parallels
DANE WEKTOROWE I DANE RASTROWE
DANE WEKTOROWE
Dane przestrzenne zostają przedstawione (reprezentowane) w formie wspoacutełrzędnych x y (z) Podstawowymi jednostkami informacji przestrzennej są punkty linie i poligony Wszystkie obiekty wektorowe składają się z ciągu jednego lub ich większej liczby punktoacutew z określonymi wspoacutełrzędnymi dla obiektoacutew liniowych jest to uporządkowany zbioacuter powiązanych punktoacutew a dla poligonu zbioacuter powiązanych linii
Przykłady danych wektorowych bull TIGER (Topologically Integrated Encoding and Referencing) bull ArcView Shapefile bull ArcInfo coverage bull DLGbull CAD format
POŁOŻENIE POSZCZEGOacuteLNYCH PUNKTOacuteW WARSTW LINIOWYCH I POLIGONOWYCH W UKŁADZIE WSPOacuteŁRZĘDNYCH
Model wektorowy
Dla większości obiektoacutew świata rzeczywistego występujących w systemach informacji przestrzennej ich reprezentacja przestrzenna może być zrealizowana tylko jednym z wymienionych elementoacutew geometrycznych Obiekty tak reprezentowane określa się jako
Punkt - uporządkowana pary wspoacutełrzędnych w układzie kartezjańskim (xy)
Linia - ciągi wspoacutełrzędnych punktoacutew tworzących linię
Wielobok - ciągi wspoacutełrzędnych punktoacutew tworzących linie ograniczające wielobok
Każdy obiekt (punkt linia wielobok) ma swoacutej identyfikator
DEFINICJA MODELU WEKTOROWEGO
Poszczegoacutelne obiekty proste reprezentują
minus obiekty punktowe reprezentują np punkty osnowy geodezyjnejminus obiekty liniowe reprezentują np ogrodzenia krawężnikiminus obiekty powierzchniowe reprezentują np działki
REPREZENTACJA OBIEKTOacuteW W MODELU WEKTOROWYM
Zależnie od wymiaru podstawowego elementu geometrycznego z jakiego tworzony jest model możemy wyroacuteżnić trzy rodzaje numerycznych modeli przestrzennychbull modele punktowe - podstawowym elementem geometrycznym jest punktbull modele liniowe (wektorowe) - podstawowym elementem jest linia reprezentowana przez ciąg punktoacutewbull modele powierzchniowe - podstawowym elementem jest obszar ktoacutere dodatkowo w zależności od rozmieszczenia i kształtu podstawowych elementoacutewdzielone są nabull modele regularnebull modele nieregularne
NUMERYCZNE MODELE PRZESTRZENNE
PODZIAŁ MODELI WEKTOROWYCH
Szczegoacutelnymi przypadkami modeli powierzchniowych są teselacje ktoacutere definiowane są jako podział części płaszczyzny na elementarne obszary będące figurami ustalonego kształtu Teselecja w przestrzeni dwuwymiarowej może być więc poroacutewnana do mozaiki ktoacuterej elementy pokrywają całkowicie dany obszar nie nakładając się na siebie W teselacjach wyroacuteżniamy teselacje regularne ktoacutere utworzone są z elementoacutew w kształcie kwadratu troacutejkąta roacutewnobocznego lub sześciokąta foremnego
Z powyższych modeli największe znaczenie mają modele wektorowe nieregularne oraz modele rastrowe (czyli teselacje o elementach kwadratowych)
MODELE POWIERZCHNIOWE
PROSTY MODEL WEKTOROWY
Model ten stanowi bezpośrednie numeryczne przedstawienie obiektoacutew świata rzeczywistego przez odpowiadające im geometryczne obiekty w modelu danych przestrzennych Obiektami prostego modelu wektorowego są obiekty1048766 punktowe1048766 liniowe1048766 powierzchniowe
Położenie obiektoacutew punktowych określa się przez wspoacutełrzędne punktu lokalizującego dany obiekt W przypadku obiektoacutew liniowych i powierzchniowych ktoacutere określane są przez większą liczbę punktoacutew oproacutecz ich wspoacutełrzędnych istotne jest ich odpowiednie uporządkowanie ktoacutere określa kształt obiektu Mając bowiem jedynie grupę punktoacutew bez informacji o ich uporządkowaniu nie jesteśmy w stanie jednoznacznie określić kształtu obiektu
PROSTY MODEL WEKTOROWY SPAGHETTI
W prostym modelu wektorowym bdquospaghettirdquo brak jest informacji o bezpośredniej wzajemnej relacji opisywanych danych W ten sposoacuteb- poszczegoacutelne segmenty mogą nie przylegać dokładnie do siebie- poligony mogą tworzyć otwarte powierzchnie- sąsiadujące poligony mogą przecinać się lub tworzyć wolne przestrzenie- linie (polilinie) mogą być utworzone z wielu oderwanych segmentoacutew
TOPOLOGICZNY MODEL WEKTOROWY
W prostym modelu wektorowym obiekty opisywane są bezpośrednio przez ciągi wspoacutełrzędnych punktoacutew Jest to opis kompletny pod względem geometrycznym ale nie dający bezpośrednio informacji o wzajemnym powiązaniu obiektoacutew między sobą Ewentualne powiązania między obiektami (np sąsiedztwo) mogą być wykrywane jedynie przez zastosowanie geometrii analitycznej Inaczej sytuacja wygląda w topologicznym modelu wektorowym ktoacutery oproacutecz informacji geometrycznych definiujących położenie I kształt obiektoacutew zawiera roacutewnież informacje o wzajemne powiązania między obiektami W topologicznym modelu wektorowym wyodrębnia się trzy rodzaje elementoacutew topologicznych
bull zerowymiarowe - punkty węzłowebull jednowymiarowe - linie granicznebull dwuwymiarowe - obszary
TOPOLOGIA
Przetwarzanie danych z wspoacutełdzieleniem geometrii (lepsza jakość obsługi)
Ograniczenie sposobu dzielenia właściwości geometrycznych-np przyległe poligony takie jak działki mają wspoacutelne krawędzie
Zdefiniowanie oraz implementacja integralności danych-między działkami nie powinno być wolnych przestrzeni
Zapewnienie możliwości wykonywania zapytań przestrzennych- szybka identyfikacja obiektoacutew spełniających zadane kryteria
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE POJĘCIA MODELU WEKTOROWEGO
bull etykieta (label polygon interior point) ndash punkt wskazujący na właściwości danej powierzchni
bull węzeł (node) ndash punkt wspoacutelny obiektoacutew najczęściej odnosi się do przecięć linii lub zakończeń tych odcinkoacutew
bull punkt odniesienia (entity point) ndash punkt lokalizujący ścisłe położenie obiektoacutew punktowych oraz liniowych i powierzchniowych posiadających reprezentację znakową typu punktowego
bull kierunek linii ndash własność odcinak linii porządkująca punkty tworzące obiekt
bull granica obszaru (border boundary) ndash odcinek linii ograniczający dany obiekt powierzchniowy
bull wyspy dziury i enklawy ndash charakterystyczne części obszaroacutew ograniczone całkowicie innymi obiektami i powierzchniowymi (ring)
REPREZENTACJA OBIEKTU LINIOWEGO W TOPOLOGICZNYM MODELU WEKTOROWYM
REPREZENTACJA OBIEKTU POWIERZCHNIOWEGO - POLIGONU W TOPOLOGICZNYM MODELU WEKTOROWYM
ZŁOŻONY MODEL TOPOLOGICZNY
Proces tworzenia złożonego modelu wektorowego jest z definicji bardziej skomplikowany i zajmuje więcej czasu jednakże posiada szereg zaletbull umożliwia zadawanie zapytań i analizę danychbull punkty reprezentują poligony o zerowym polu i długościbull linie (łuki ndash ang arcs) ndash rozpoczynają się i kończą węzłami (ang nodes)bull poligony są zbiorem połączonych linii
Określenie segmentoacutew- odcinkoacutew wspoacutelnych dla poligonoacutew zapewnia mniejszą liczbę linii w bazie danych przyległe poligony nie tworzą wolnych przestrzeni i nie przecinają się bardziej spoacutejny obraz podczas wizualizacji danych
Dane muszą zostać bdquooczyszczonerdquo i bdquozbudowanerdquo przed wykorzystaniem w systemie GIS
Po zbudowaniu modelu wektorowego wszystkie przecięcia tworzą węzły i nie ma wiszących segmentoacutew
WSPOacuteŁRZĘDNE ŁUKOacuteW - LINII
TOPOLOGIA LINII
TOPOLOGIA WĘZŁOacuteW
TOPOLOGIA POLIGONOacuteW
RODZAJE WĘZŁOacuteW
1 NORMAL NODES
W miejscu przecięcia trzech lub więcej linii granicznych
Akceptowane zawsze
2 DANGLING NODES
Na końcu linii granicznych
Akceptowane w obiektach liniowych np drogi rzeki ale nie dla poligonoacutew
3 PSEUDONODES
Między dwoma liniami
W poligonach wyspach zmianie atrybutoacutew
LINIE GRANICZNE ndash LINIE ndash ŁUKI
We wszystkich przecięciach wymagane są węzłyWiszące linie są akceptowane pod warunkiem że nie przekraczają wartości progowej tolerancji Na przykład jeżeli proacuteg tolerancji został ustalony na wartość 5 metroacutew linie o długości mniejszej niż 5 metroacutew są uznawane za linie wiszące (błąd) a linie o długości powyżej 5 metroacutew są prawidłowymi danymi
CZYSZCZENIE DANYCH ndash CLEANING
Usuwanie nieprawidłowych linii i węzłoacutewŁączenie brakujących segmentoacutew (w określonej odległości)Usuwanie zbędnych pseudowęzłoacutewDodanie węzłoacutew do wszystkich przecięćDodanie punktoacutew (Label points) centroidoacutew do poligonoacutew
BUDOWANIE TOPOLOGII ndash TOPOLOGY BUILDING
Nie zmienia położenia obiektoacutew ale polega na ich scalaniu Tworzenie tablicy atrybutoacutewPonowne tworzenie po dodawaniu ndash edycji danych w tym- dodawanie lub usuwanie linii i punktoacutew- dodawanie lub usuwanie danych atrybutoacutew
TIN ndash TRIANGULATED IRREGULAR NETWORKWĘZŁY
PROSTOKĄTY OGRANICZAJĄCE
Jedną z najprostszych metod organizacji danych sprzyjającą szybszemu dostępowi jest wprowadzenie w stosowanych do reprezentacji obiektoacutew strukturach danych pewnych dodatkowych informacji Zadaniem ich jest uproszczone w sensie przestrzennym zobrazowanie obiektoacutew ktoacutere możemy nazwać aproksymacją obiektoacutew właściwych Istotą takiej aproksymacji będzie zachowywanie przybliżonej informacji o obiekcie zapisanej w maksymalnie uproszczony sposoacuteb wygodny do wykonywania analiz
Najpowszechniejszym ze spotykanych uproszczeń jest aproksymacja obiektu minimalnym prostokątem o bokach roacutewnoległych do osi układu wspoacutełrzędnych w ktoacuterym można zmieścić cały rozpatrywanyobiekt Prostokąt taki będziemy nazywali minimalnym prostokątem ograniczającym W literaturze polskiej można się spotkać z określaniem takiego prostokąta bdquopudełkiemrdquo
STRUKTURY DANYCH WEKTOROWYCH
SIEĆ PUNKTOacuteW ndash składa się z uporządkowanego geometrycznie zbioru obiektoacutew punktowych na podstawie ich wzajemnej relacji położenia możliwe jest wnioskowanie o poprawności zapisu danych W przypadku gdy sieć punktoacutew ma postać regularnej siatki (grid) wtedy taka strutura jest roacutewnoważna modelowi rastrowemu ponieważ dziedziczy wszystkie jego własności Przykładem takiej struktury jest min Numeryczny model terenu zapisany jako prostokątna sieć punktoacutew
SIEĆ ndash struktura liniowa utworzona z odcinkoacutew o dowolnym kierunku przecinających się w węzłach Najczęściej przenoszona bezpośrednio ze Świata rzeczywistego (np sieć drogowa kolejowa telekomunikacyna itp) Uwzględnienie kierunku linii w topologicznym modelu wektorowym zapewnia Niezależnie analizę parametroacutew sieci w dwu kierunkach Tego typu struktura może być analizowana za pomocą tzw analiz sieciowych z grupy Analiz przestrzennych min Poszukiwanie optymalnej trasy pomiędzy zadanymi punktami optymalizacja lokalizacji centroacutew sieci oraz wyznaczenieZasięgu obszaru obsługi dla centroacutew w sieci i ich dostępności
DRZEWO ndash zespoacuteł skierowanych obiektoacutew liniowych łączących się w węzłach z każdego węzła może wychodzić tylko jeden obiekt Tego typu sieć Nazywana jest siecią typu hierarchicznego i może na przykład reprezentować powiązanie rzek w systemach rzecznych (rzędowość)
WYPEŁNIENIE POWIERZCHNI ndash (GT ndash poligony) ndash przyległe obszary zachowujące ściśle relacje wzajemnego położenia sąsiedztwa Najczęściej powiązane zależnościami hierarchicznymi a grupy obiektoacutew niższego rzędu tworzą pewne nadklasy o kolejnych stopniach agregacji obiektoacutew Przykładowo jednostki podziału administracyjnego kraju
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
PLAN WYKŁADU
1 METODY ZAPISU ODWZOROWAŃ KARTOGRAFICZNYCH2 ZAPIS ODWZOROWANIA KARTOGRAFICZNEGO PLIKOacuteW SHP3 MODELE WEKTOROWE PROSTE4 MODELE WEKTOROWE ZŁOŻONE ndash MODEL TOPOLOGICZNY5 TRIANGULACJA DELAUNEYA ndash CZI6 STRUKTURA DANYCH DCEL7 DEFNICJE POLIGONU WIELŚCIANU D-KOMOacuteRKI
DEFINIOWANIE UKŁADU WSPOacuteŁRZĘDNYCH
A) w przypadku wspoacutełrzędnych geograficznych (φ λ)bull elipsoida (elipsoid)bull położenie elipsoidy w przestrzeni (datum)
B) w przypadku wspoacutełrzędnych płaskich dodatkowoodwzorowanie kartograficzne (mapprojection)parametry odwzorowania zależą od typu odwzorowanianp dla odwzorowania Gaussa-Kruumlgera lub poprzecznego
odwzorowania Mercatora(Transverse Mercator) są to południk środkowy wspoacutełczynnik skalujący na południku osiowym przesunięcie w kierunkach wschodnim i poacutełnocnym
FORMAT DANYCH PLIKU ODWZOROWANIA DLA PLIKOacuteW SHAPE (PRJ)
Informacja opisująca zastosowane odwzorowanie dla danych zapisanych w formacie shape jest niezbędna dla prawidlowego ich odczytu i dalszego ich wykorzystania Plik prj nie jest plikiem wymaganym jednak bardzo często stosowanym gdyż najczęściej nie jest możliwe wywnioskowanie jedynie z samych danych jakie odwzorowanie kartograficzne zostało zastosowane Plik prj najczęściej zawiera następujące informacje
Geographic coordinate system Datum (geodesy) Spheroid Prime meridian Map projection Units used
Parametry odwzorowania kartograficznego bull Latitude of origin bull Scale factor bull Central meridian bull False northing bull False easting bull Standard parallels
DANE WEKTOROWE I DANE RASTROWE
DANE WEKTOROWE
Dane przestrzenne zostają przedstawione (reprezentowane) w formie wspoacutełrzędnych x y (z) Podstawowymi jednostkami informacji przestrzennej są punkty linie i poligony Wszystkie obiekty wektorowe składają się z ciągu jednego lub ich większej liczby punktoacutew z określonymi wspoacutełrzędnymi dla obiektoacutew liniowych jest to uporządkowany zbioacuter powiązanych punktoacutew a dla poligonu zbioacuter powiązanych linii
Przykłady danych wektorowych bull TIGER (Topologically Integrated Encoding and Referencing) bull ArcView Shapefile bull ArcInfo coverage bull DLGbull CAD format
POŁOŻENIE POSZCZEGOacuteLNYCH PUNKTOacuteW WARSTW LINIOWYCH I POLIGONOWYCH W UKŁADZIE WSPOacuteŁRZĘDNYCH
Model wektorowy
Dla większości obiektoacutew świata rzeczywistego występujących w systemach informacji przestrzennej ich reprezentacja przestrzenna może być zrealizowana tylko jednym z wymienionych elementoacutew geometrycznych Obiekty tak reprezentowane określa się jako
Punkt - uporządkowana pary wspoacutełrzędnych w układzie kartezjańskim (xy)
Linia - ciągi wspoacutełrzędnych punktoacutew tworzących linię
Wielobok - ciągi wspoacutełrzędnych punktoacutew tworzących linie ograniczające wielobok
Każdy obiekt (punkt linia wielobok) ma swoacutej identyfikator
DEFINICJA MODELU WEKTOROWEGO
Poszczegoacutelne obiekty proste reprezentują
minus obiekty punktowe reprezentują np punkty osnowy geodezyjnejminus obiekty liniowe reprezentują np ogrodzenia krawężnikiminus obiekty powierzchniowe reprezentują np działki
REPREZENTACJA OBIEKTOacuteW W MODELU WEKTOROWYM
Zależnie od wymiaru podstawowego elementu geometrycznego z jakiego tworzony jest model możemy wyroacuteżnić trzy rodzaje numerycznych modeli przestrzennychbull modele punktowe - podstawowym elementem geometrycznym jest punktbull modele liniowe (wektorowe) - podstawowym elementem jest linia reprezentowana przez ciąg punktoacutewbull modele powierzchniowe - podstawowym elementem jest obszar ktoacutere dodatkowo w zależności od rozmieszczenia i kształtu podstawowych elementoacutewdzielone są nabull modele regularnebull modele nieregularne
NUMERYCZNE MODELE PRZESTRZENNE
PODZIAŁ MODELI WEKTOROWYCH
Szczegoacutelnymi przypadkami modeli powierzchniowych są teselacje ktoacutere definiowane są jako podział części płaszczyzny na elementarne obszary będące figurami ustalonego kształtu Teselecja w przestrzeni dwuwymiarowej może być więc poroacutewnana do mozaiki ktoacuterej elementy pokrywają całkowicie dany obszar nie nakładając się na siebie W teselacjach wyroacuteżniamy teselacje regularne ktoacutere utworzone są z elementoacutew w kształcie kwadratu troacutejkąta roacutewnobocznego lub sześciokąta foremnego
Z powyższych modeli największe znaczenie mają modele wektorowe nieregularne oraz modele rastrowe (czyli teselacje o elementach kwadratowych)
MODELE POWIERZCHNIOWE
PROSTY MODEL WEKTOROWY
Model ten stanowi bezpośrednie numeryczne przedstawienie obiektoacutew świata rzeczywistego przez odpowiadające im geometryczne obiekty w modelu danych przestrzennych Obiektami prostego modelu wektorowego są obiekty1048766 punktowe1048766 liniowe1048766 powierzchniowe
Położenie obiektoacutew punktowych określa się przez wspoacutełrzędne punktu lokalizującego dany obiekt W przypadku obiektoacutew liniowych i powierzchniowych ktoacutere określane są przez większą liczbę punktoacutew oproacutecz ich wspoacutełrzędnych istotne jest ich odpowiednie uporządkowanie ktoacutere określa kształt obiektu Mając bowiem jedynie grupę punktoacutew bez informacji o ich uporządkowaniu nie jesteśmy w stanie jednoznacznie określić kształtu obiektu
PROSTY MODEL WEKTOROWY SPAGHETTI
W prostym modelu wektorowym bdquospaghettirdquo brak jest informacji o bezpośredniej wzajemnej relacji opisywanych danych W ten sposoacuteb- poszczegoacutelne segmenty mogą nie przylegać dokładnie do siebie- poligony mogą tworzyć otwarte powierzchnie- sąsiadujące poligony mogą przecinać się lub tworzyć wolne przestrzenie- linie (polilinie) mogą być utworzone z wielu oderwanych segmentoacutew
TOPOLOGICZNY MODEL WEKTOROWY
W prostym modelu wektorowym obiekty opisywane są bezpośrednio przez ciągi wspoacutełrzędnych punktoacutew Jest to opis kompletny pod względem geometrycznym ale nie dający bezpośrednio informacji o wzajemnym powiązaniu obiektoacutew między sobą Ewentualne powiązania między obiektami (np sąsiedztwo) mogą być wykrywane jedynie przez zastosowanie geometrii analitycznej Inaczej sytuacja wygląda w topologicznym modelu wektorowym ktoacutery oproacutecz informacji geometrycznych definiujących położenie I kształt obiektoacutew zawiera roacutewnież informacje o wzajemne powiązania między obiektami W topologicznym modelu wektorowym wyodrębnia się trzy rodzaje elementoacutew topologicznych
bull zerowymiarowe - punkty węzłowebull jednowymiarowe - linie granicznebull dwuwymiarowe - obszary
TOPOLOGIA
Przetwarzanie danych z wspoacutełdzieleniem geometrii (lepsza jakość obsługi)
Ograniczenie sposobu dzielenia właściwości geometrycznych-np przyległe poligony takie jak działki mają wspoacutelne krawędzie
Zdefiniowanie oraz implementacja integralności danych-między działkami nie powinno być wolnych przestrzeni
Zapewnienie możliwości wykonywania zapytań przestrzennych- szybka identyfikacja obiektoacutew spełniających zadane kryteria
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE POJĘCIA MODELU WEKTOROWEGO
bull etykieta (label polygon interior point) ndash punkt wskazujący na właściwości danej powierzchni
bull węzeł (node) ndash punkt wspoacutelny obiektoacutew najczęściej odnosi się do przecięć linii lub zakończeń tych odcinkoacutew
bull punkt odniesienia (entity point) ndash punkt lokalizujący ścisłe położenie obiektoacutew punktowych oraz liniowych i powierzchniowych posiadających reprezentację znakową typu punktowego
bull kierunek linii ndash własność odcinak linii porządkująca punkty tworzące obiekt
bull granica obszaru (border boundary) ndash odcinek linii ograniczający dany obiekt powierzchniowy
bull wyspy dziury i enklawy ndash charakterystyczne części obszaroacutew ograniczone całkowicie innymi obiektami i powierzchniowymi (ring)
REPREZENTACJA OBIEKTU LINIOWEGO W TOPOLOGICZNYM MODELU WEKTOROWYM
REPREZENTACJA OBIEKTU POWIERZCHNIOWEGO - POLIGONU W TOPOLOGICZNYM MODELU WEKTOROWYM
ZŁOŻONY MODEL TOPOLOGICZNY
Proces tworzenia złożonego modelu wektorowego jest z definicji bardziej skomplikowany i zajmuje więcej czasu jednakże posiada szereg zaletbull umożliwia zadawanie zapytań i analizę danychbull punkty reprezentują poligony o zerowym polu i długościbull linie (łuki ndash ang arcs) ndash rozpoczynają się i kończą węzłami (ang nodes)bull poligony są zbiorem połączonych linii
Określenie segmentoacutew- odcinkoacutew wspoacutelnych dla poligonoacutew zapewnia mniejszą liczbę linii w bazie danych przyległe poligony nie tworzą wolnych przestrzeni i nie przecinają się bardziej spoacutejny obraz podczas wizualizacji danych
Dane muszą zostać bdquooczyszczonerdquo i bdquozbudowanerdquo przed wykorzystaniem w systemie GIS
Po zbudowaniu modelu wektorowego wszystkie przecięcia tworzą węzły i nie ma wiszących segmentoacutew
WSPOacuteŁRZĘDNE ŁUKOacuteW - LINII
TOPOLOGIA LINII
TOPOLOGIA WĘZŁOacuteW
TOPOLOGIA POLIGONOacuteW
RODZAJE WĘZŁOacuteW
1 NORMAL NODES
W miejscu przecięcia trzech lub więcej linii granicznych
Akceptowane zawsze
2 DANGLING NODES
Na końcu linii granicznych
Akceptowane w obiektach liniowych np drogi rzeki ale nie dla poligonoacutew
3 PSEUDONODES
Między dwoma liniami
W poligonach wyspach zmianie atrybutoacutew
LINIE GRANICZNE ndash LINIE ndash ŁUKI
We wszystkich przecięciach wymagane są węzłyWiszące linie są akceptowane pod warunkiem że nie przekraczają wartości progowej tolerancji Na przykład jeżeli proacuteg tolerancji został ustalony na wartość 5 metroacutew linie o długości mniejszej niż 5 metroacutew są uznawane za linie wiszące (błąd) a linie o długości powyżej 5 metroacutew są prawidłowymi danymi
CZYSZCZENIE DANYCH ndash CLEANING
Usuwanie nieprawidłowych linii i węzłoacutewŁączenie brakujących segmentoacutew (w określonej odległości)Usuwanie zbędnych pseudowęzłoacutewDodanie węzłoacutew do wszystkich przecięćDodanie punktoacutew (Label points) centroidoacutew do poligonoacutew
BUDOWANIE TOPOLOGII ndash TOPOLOGY BUILDING
Nie zmienia położenia obiektoacutew ale polega na ich scalaniu Tworzenie tablicy atrybutoacutewPonowne tworzenie po dodawaniu ndash edycji danych w tym- dodawanie lub usuwanie linii i punktoacutew- dodawanie lub usuwanie danych atrybutoacutew
TIN ndash TRIANGULATED IRREGULAR NETWORKWĘZŁY
PROSTOKĄTY OGRANICZAJĄCE
Jedną z najprostszych metod organizacji danych sprzyjającą szybszemu dostępowi jest wprowadzenie w stosowanych do reprezentacji obiektoacutew strukturach danych pewnych dodatkowych informacji Zadaniem ich jest uproszczone w sensie przestrzennym zobrazowanie obiektoacutew ktoacutere możemy nazwać aproksymacją obiektoacutew właściwych Istotą takiej aproksymacji będzie zachowywanie przybliżonej informacji o obiekcie zapisanej w maksymalnie uproszczony sposoacuteb wygodny do wykonywania analiz
Najpowszechniejszym ze spotykanych uproszczeń jest aproksymacja obiektu minimalnym prostokątem o bokach roacutewnoległych do osi układu wspoacutełrzędnych w ktoacuterym można zmieścić cały rozpatrywanyobiekt Prostokąt taki będziemy nazywali minimalnym prostokątem ograniczającym W literaturze polskiej można się spotkać z określaniem takiego prostokąta bdquopudełkiemrdquo
STRUKTURY DANYCH WEKTOROWYCH
SIEĆ PUNKTOacuteW ndash składa się z uporządkowanego geometrycznie zbioru obiektoacutew punktowych na podstawie ich wzajemnej relacji położenia możliwe jest wnioskowanie o poprawności zapisu danych W przypadku gdy sieć punktoacutew ma postać regularnej siatki (grid) wtedy taka strutura jest roacutewnoważna modelowi rastrowemu ponieważ dziedziczy wszystkie jego własności Przykładem takiej struktury jest min Numeryczny model terenu zapisany jako prostokątna sieć punktoacutew
SIEĆ ndash struktura liniowa utworzona z odcinkoacutew o dowolnym kierunku przecinających się w węzłach Najczęściej przenoszona bezpośrednio ze Świata rzeczywistego (np sieć drogowa kolejowa telekomunikacyna itp) Uwzględnienie kierunku linii w topologicznym modelu wektorowym zapewnia Niezależnie analizę parametroacutew sieci w dwu kierunkach Tego typu struktura może być analizowana za pomocą tzw analiz sieciowych z grupy Analiz przestrzennych min Poszukiwanie optymalnej trasy pomiędzy zadanymi punktami optymalizacja lokalizacji centroacutew sieci oraz wyznaczenieZasięgu obszaru obsługi dla centroacutew w sieci i ich dostępności
DRZEWO ndash zespoacuteł skierowanych obiektoacutew liniowych łączących się w węzłach z każdego węzła może wychodzić tylko jeden obiekt Tego typu sieć Nazywana jest siecią typu hierarchicznego i może na przykład reprezentować powiązanie rzek w systemach rzecznych (rzędowość)
WYPEŁNIENIE POWIERZCHNI ndash (GT ndash poligony) ndash przyległe obszary zachowujące ściśle relacje wzajemnego położenia sąsiedztwa Najczęściej powiązane zależnościami hierarchicznymi a grupy obiektoacutew niższego rzędu tworzą pewne nadklasy o kolejnych stopniach agregacji obiektoacutew Przykładowo jednostki podziału administracyjnego kraju
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
DEFINIOWANIE UKŁADU WSPOacuteŁRZĘDNYCH
A) w przypadku wspoacutełrzędnych geograficznych (φ λ)bull elipsoida (elipsoid)bull położenie elipsoidy w przestrzeni (datum)
B) w przypadku wspoacutełrzędnych płaskich dodatkowoodwzorowanie kartograficzne (mapprojection)parametry odwzorowania zależą od typu odwzorowanianp dla odwzorowania Gaussa-Kruumlgera lub poprzecznego
odwzorowania Mercatora(Transverse Mercator) są to południk środkowy wspoacutełczynnik skalujący na południku osiowym przesunięcie w kierunkach wschodnim i poacutełnocnym
FORMAT DANYCH PLIKU ODWZOROWANIA DLA PLIKOacuteW SHAPE (PRJ)
Informacja opisująca zastosowane odwzorowanie dla danych zapisanych w formacie shape jest niezbędna dla prawidlowego ich odczytu i dalszego ich wykorzystania Plik prj nie jest plikiem wymaganym jednak bardzo często stosowanym gdyż najczęściej nie jest możliwe wywnioskowanie jedynie z samych danych jakie odwzorowanie kartograficzne zostało zastosowane Plik prj najczęściej zawiera następujące informacje
Geographic coordinate system Datum (geodesy) Spheroid Prime meridian Map projection Units used
Parametry odwzorowania kartograficznego bull Latitude of origin bull Scale factor bull Central meridian bull False northing bull False easting bull Standard parallels
DANE WEKTOROWE I DANE RASTROWE
DANE WEKTOROWE
Dane przestrzenne zostają przedstawione (reprezentowane) w formie wspoacutełrzędnych x y (z) Podstawowymi jednostkami informacji przestrzennej są punkty linie i poligony Wszystkie obiekty wektorowe składają się z ciągu jednego lub ich większej liczby punktoacutew z określonymi wspoacutełrzędnymi dla obiektoacutew liniowych jest to uporządkowany zbioacuter powiązanych punktoacutew a dla poligonu zbioacuter powiązanych linii
Przykłady danych wektorowych bull TIGER (Topologically Integrated Encoding and Referencing) bull ArcView Shapefile bull ArcInfo coverage bull DLGbull CAD format
POŁOŻENIE POSZCZEGOacuteLNYCH PUNKTOacuteW WARSTW LINIOWYCH I POLIGONOWYCH W UKŁADZIE WSPOacuteŁRZĘDNYCH
Model wektorowy
Dla większości obiektoacutew świata rzeczywistego występujących w systemach informacji przestrzennej ich reprezentacja przestrzenna może być zrealizowana tylko jednym z wymienionych elementoacutew geometrycznych Obiekty tak reprezentowane określa się jako
Punkt - uporządkowana pary wspoacutełrzędnych w układzie kartezjańskim (xy)
Linia - ciągi wspoacutełrzędnych punktoacutew tworzących linię
Wielobok - ciągi wspoacutełrzędnych punktoacutew tworzących linie ograniczające wielobok
Każdy obiekt (punkt linia wielobok) ma swoacutej identyfikator
DEFINICJA MODELU WEKTOROWEGO
Poszczegoacutelne obiekty proste reprezentują
minus obiekty punktowe reprezentują np punkty osnowy geodezyjnejminus obiekty liniowe reprezentują np ogrodzenia krawężnikiminus obiekty powierzchniowe reprezentują np działki
REPREZENTACJA OBIEKTOacuteW W MODELU WEKTOROWYM
Zależnie od wymiaru podstawowego elementu geometrycznego z jakiego tworzony jest model możemy wyroacuteżnić trzy rodzaje numerycznych modeli przestrzennychbull modele punktowe - podstawowym elementem geometrycznym jest punktbull modele liniowe (wektorowe) - podstawowym elementem jest linia reprezentowana przez ciąg punktoacutewbull modele powierzchniowe - podstawowym elementem jest obszar ktoacutere dodatkowo w zależności od rozmieszczenia i kształtu podstawowych elementoacutewdzielone są nabull modele regularnebull modele nieregularne
NUMERYCZNE MODELE PRZESTRZENNE
PODZIAŁ MODELI WEKTOROWYCH
Szczegoacutelnymi przypadkami modeli powierzchniowych są teselacje ktoacutere definiowane są jako podział części płaszczyzny na elementarne obszary będące figurami ustalonego kształtu Teselecja w przestrzeni dwuwymiarowej może być więc poroacutewnana do mozaiki ktoacuterej elementy pokrywają całkowicie dany obszar nie nakładając się na siebie W teselacjach wyroacuteżniamy teselacje regularne ktoacutere utworzone są z elementoacutew w kształcie kwadratu troacutejkąta roacutewnobocznego lub sześciokąta foremnego
Z powyższych modeli największe znaczenie mają modele wektorowe nieregularne oraz modele rastrowe (czyli teselacje o elementach kwadratowych)
MODELE POWIERZCHNIOWE
PROSTY MODEL WEKTOROWY
Model ten stanowi bezpośrednie numeryczne przedstawienie obiektoacutew świata rzeczywistego przez odpowiadające im geometryczne obiekty w modelu danych przestrzennych Obiektami prostego modelu wektorowego są obiekty1048766 punktowe1048766 liniowe1048766 powierzchniowe
Położenie obiektoacutew punktowych określa się przez wspoacutełrzędne punktu lokalizującego dany obiekt W przypadku obiektoacutew liniowych i powierzchniowych ktoacutere określane są przez większą liczbę punktoacutew oproacutecz ich wspoacutełrzędnych istotne jest ich odpowiednie uporządkowanie ktoacutere określa kształt obiektu Mając bowiem jedynie grupę punktoacutew bez informacji o ich uporządkowaniu nie jesteśmy w stanie jednoznacznie określić kształtu obiektu
PROSTY MODEL WEKTOROWY SPAGHETTI
W prostym modelu wektorowym bdquospaghettirdquo brak jest informacji o bezpośredniej wzajemnej relacji opisywanych danych W ten sposoacuteb- poszczegoacutelne segmenty mogą nie przylegać dokładnie do siebie- poligony mogą tworzyć otwarte powierzchnie- sąsiadujące poligony mogą przecinać się lub tworzyć wolne przestrzenie- linie (polilinie) mogą być utworzone z wielu oderwanych segmentoacutew
TOPOLOGICZNY MODEL WEKTOROWY
W prostym modelu wektorowym obiekty opisywane są bezpośrednio przez ciągi wspoacutełrzędnych punktoacutew Jest to opis kompletny pod względem geometrycznym ale nie dający bezpośrednio informacji o wzajemnym powiązaniu obiektoacutew między sobą Ewentualne powiązania między obiektami (np sąsiedztwo) mogą być wykrywane jedynie przez zastosowanie geometrii analitycznej Inaczej sytuacja wygląda w topologicznym modelu wektorowym ktoacutery oproacutecz informacji geometrycznych definiujących położenie I kształt obiektoacutew zawiera roacutewnież informacje o wzajemne powiązania między obiektami W topologicznym modelu wektorowym wyodrębnia się trzy rodzaje elementoacutew topologicznych
bull zerowymiarowe - punkty węzłowebull jednowymiarowe - linie granicznebull dwuwymiarowe - obszary
TOPOLOGIA
Przetwarzanie danych z wspoacutełdzieleniem geometrii (lepsza jakość obsługi)
Ograniczenie sposobu dzielenia właściwości geometrycznych-np przyległe poligony takie jak działki mają wspoacutelne krawędzie
Zdefiniowanie oraz implementacja integralności danych-między działkami nie powinno być wolnych przestrzeni
Zapewnienie możliwości wykonywania zapytań przestrzennych- szybka identyfikacja obiektoacutew spełniających zadane kryteria
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE POJĘCIA MODELU WEKTOROWEGO
bull etykieta (label polygon interior point) ndash punkt wskazujący na właściwości danej powierzchni
bull węzeł (node) ndash punkt wspoacutelny obiektoacutew najczęściej odnosi się do przecięć linii lub zakończeń tych odcinkoacutew
bull punkt odniesienia (entity point) ndash punkt lokalizujący ścisłe położenie obiektoacutew punktowych oraz liniowych i powierzchniowych posiadających reprezentację znakową typu punktowego
bull kierunek linii ndash własność odcinak linii porządkująca punkty tworzące obiekt
bull granica obszaru (border boundary) ndash odcinek linii ograniczający dany obiekt powierzchniowy
bull wyspy dziury i enklawy ndash charakterystyczne części obszaroacutew ograniczone całkowicie innymi obiektami i powierzchniowymi (ring)
REPREZENTACJA OBIEKTU LINIOWEGO W TOPOLOGICZNYM MODELU WEKTOROWYM
REPREZENTACJA OBIEKTU POWIERZCHNIOWEGO - POLIGONU W TOPOLOGICZNYM MODELU WEKTOROWYM
ZŁOŻONY MODEL TOPOLOGICZNY
Proces tworzenia złożonego modelu wektorowego jest z definicji bardziej skomplikowany i zajmuje więcej czasu jednakże posiada szereg zaletbull umożliwia zadawanie zapytań i analizę danychbull punkty reprezentują poligony o zerowym polu i długościbull linie (łuki ndash ang arcs) ndash rozpoczynają się i kończą węzłami (ang nodes)bull poligony są zbiorem połączonych linii
Określenie segmentoacutew- odcinkoacutew wspoacutelnych dla poligonoacutew zapewnia mniejszą liczbę linii w bazie danych przyległe poligony nie tworzą wolnych przestrzeni i nie przecinają się bardziej spoacutejny obraz podczas wizualizacji danych
Dane muszą zostać bdquooczyszczonerdquo i bdquozbudowanerdquo przed wykorzystaniem w systemie GIS
Po zbudowaniu modelu wektorowego wszystkie przecięcia tworzą węzły i nie ma wiszących segmentoacutew
WSPOacuteŁRZĘDNE ŁUKOacuteW - LINII
TOPOLOGIA LINII
TOPOLOGIA WĘZŁOacuteW
TOPOLOGIA POLIGONOacuteW
RODZAJE WĘZŁOacuteW
1 NORMAL NODES
W miejscu przecięcia trzech lub więcej linii granicznych
Akceptowane zawsze
2 DANGLING NODES
Na końcu linii granicznych
Akceptowane w obiektach liniowych np drogi rzeki ale nie dla poligonoacutew
3 PSEUDONODES
Między dwoma liniami
W poligonach wyspach zmianie atrybutoacutew
LINIE GRANICZNE ndash LINIE ndash ŁUKI
We wszystkich przecięciach wymagane są węzłyWiszące linie są akceptowane pod warunkiem że nie przekraczają wartości progowej tolerancji Na przykład jeżeli proacuteg tolerancji został ustalony na wartość 5 metroacutew linie o długości mniejszej niż 5 metroacutew są uznawane za linie wiszące (błąd) a linie o długości powyżej 5 metroacutew są prawidłowymi danymi
CZYSZCZENIE DANYCH ndash CLEANING
Usuwanie nieprawidłowych linii i węzłoacutewŁączenie brakujących segmentoacutew (w określonej odległości)Usuwanie zbędnych pseudowęzłoacutewDodanie węzłoacutew do wszystkich przecięćDodanie punktoacutew (Label points) centroidoacutew do poligonoacutew
BUDOWANIE TOPOLOGII ndash TOPOLOGY BUILDING
Nie zmienia położenia obiektoacutew ale polega na ich scalaniu Tworzenie tablicy atrybutoacutewPonowne tworzenie po dodawaniu ndash edycji danych w tym- dodawanie lub usuwanie linii i punktoacutew- dodawanie lub usuwanie danych atrybutoacutew
TIN ndash TRIANGULATED IRREGULAR NETWORKWĘZŁY
PROSTOKĄTY OGRANICZAJĄCE
Jedną z najprostszych metod organizacji danych sprzyjającą szybszemu dostępowi jest wprowadzenie w stosowanych do reprezentacji obiektoacutew strukturach danych pewnych dodatkowych informacji Zadaniem ich jest uproszczone w sensie przestrzennym zobrazowanie obiektoacutew ktoacutere możemy nazwać aproksymacją obiektoacutew właściwych Istotą takiej aproksymacji będzie zachowywanie przybliżonej informacji o obiekcie zapisanej w maksymalnie uproszczony sposoacuteb wygodny do wykonywania analiz
Najpowszechniejszym ze spotykanych uproszczeń jest aproksymacja obiektu minimalnym prostokątem o bokach roacutewnoległych do osi układu wspoacutełrzędnych w ktoacuterym można zmieścić cały rozpatrywanyobiekt Prostokąt taki będziemy nazywali minimalnym prostokątem ograniczającym W literaturze polskiej można się spotkać z określaniem takiego prostokąta bdquopudełkiemrdquo
STRUKTURY DANYCH WEKTOROWYCH
SIEĆ PUNKTOacuteW ndash składa się z uporządkowanego geometrycznie zbioru obiektoacutew punktowych na podstawie ich wzajemnej relacji położenia możliwe jest wnioskowanie o poprawności zapisu danych W przypadku gdy sieć punktoacutew ma postać regularnej siatki (grid) wtedy taka strutura jest roacutewnoważna modelowi rastrowemu ponieważ dziedziczy wszystkie jego własności Przykładem takiej struktury jest min Numeryczny model terenu zapisany jako prostokątna sieć punktoacutew
SIEĆ ndash struktura liniowa utworzona z odcinkoacutew o dowolnym kierunku przecinających się w węzłach Najczęściej przenoszona bezpośrednio ze Świata rzeczywistego (np sieć drogowa kolejowa telekomunikacyna itp) Uwzględnienie kierunku linii w topologicznym modelu wektorowym zapewnia Niezależnie analizę parametroacutew sieci w dwu kierunkach Tego typu struktura może być analizowana za pomocą tzw analiz sieciowych z grupy Analiz przestrzennych min Poszukiwanie optymalnej trasy pomiędzy zadanymi punktami optymalizacja lokalizacji centroacutew sieci oraz wyznaczenieZasięgu obszaru obsługi dla centroacutew w sieci i ich dostępności
DRZEWO ndash zespoacuteł skierowanych obiektoacutew liniowych łączących się w węzłach z każdego węzła może wychodzić tylko jeden obiekt Tego typu sieć Nazywana jest siecią typu hierarchicznego i może na przykład reprezentować powiązanie rzek w systemach rzecznych (rzędowość)
WYPEŁNIENIE POWIERZCHNI ndash (GT ndash poligony) ndash przyległe obszary zachowujące ściśle relacje wzajemnego położenia sąsiedztwa Najczęściej powiązane zależnościami hierarchicznymi a grupy obiektoacutew niższego rzędu tworzą pewne nadklasy o kolejnych stopniach agregacji obiektoacutew Przykładowo jednostki podziału administracyjnego kraju
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
FORMAT DANYCH PLIKU ODWZOROWANIA DLA PLIKOacuteW SHAPE (PRJ)
Informacja opisująca zastosowane odwzorowanie dla danych zapisanych w formacie shape jest niezbędna dla prawidlowego ich odczytu i dalszego ich wykorzystania Plik prj nie jest plikiem wymaganym jednak bardzo często stosowanym gdyż najczęściej nie jest możliwe wywnioskowanie jedynie z samych danych jakie odwzorowanie kartograficzne zostało zastosowane Plik prj najczęściej zawiera następujące informacje
Geographic coordinate system Datum (geodesy) Spheroid Prime meridian Map projection Units used
Parametry odwzorowania kartograficznego bull Latitude of origin bull Scale factor bull Central meridian bull False northing bull False easting bull Standard parallels
DANE WEKTOROWE I DANE RASTROWE
DANE WEKTOROWE
Dane przestrzenne zostają przedstawione (reprezentowane) w formie wspoacutełrzędnych x y (z) Podstawowymi jednostkami informacji przestrzennej są punkty linie i poligony Wszystkie obiekty wektorowe składają się z ciągu jednego lub ich większej liczby punktoacutew z określonymi wspoacutełrzędnymi dla obiektoacutew liniowych jest to uporządkowany zbioacuter powiązanych punktoacutew a dla poligonu zbioacuter powiązanych linii
Przykłady danych wektorowych bull TIGER (Topologically Integrated Encoding and Referencing) bull ArcView Shapefile bull ArcInfo coverage bull DLGbull CAD format
POŁOŻENIE POSZCZEGOacuteLNYCH PUNKTOacuteW WARSTW LINIOWYCH I POLIGONOWYCH W UKŁADZIE WSPOacuteŁRZĘDNYCH
Model wektorowy
Dla większości obiektoacutew świata rzeczywistego występujących w systemach informacji przestrzennej ich reprezentacja przestrzenna może być zrealizowana tylko jednym z wymienionych elementoacutew geometrycznych Obiekty tak reprezentowane określa się jako
Punkt - uporządkowana pary wspoacutełrzędnych w układzie kartezjańskim (xy)
Linia - ciągi wspoacutełrzędnych punktoacutew tworzących linię
Wielobok - ciągi wspoacutełrzędnych punktoacutew tworzących linie ograniczające wielobok
Każdy obiekt (punkt linia wielobok) ma swoacutej identyfikator
DEFINICJA MODELU WEKTOROWEGO
Poszczegoacutelne obiekty proste reprezentują
minus obiekty punktowe reprezentują np punkty osnowy geodezyjnejminus obiekty liniowe reprezentują np ogrodzenia krawężnikiminus obiekty powierzchniowe reprezentują np działki
REPREZENTACJA OBIEKTOacuteW W MODELU WEKTOROWYM
Zależnie od wymiaru podstawowego elementu geometrycznego z jakiego tworzony jest model możemy wyroacuteżnić trzy rodzaje numerycznych modeli przestrzennychbull modele punktowe - podstawowym elementem geometrycznym jest punktbull modele liniowe (wektorowe) - podstawowym elementem jest linia reprezentowana przez ciąg punktoacutewbull modele powierzchniowe - podstawowym elementem jest obszar ktoacutere dodatkowo w zależności od rozmieszczenia i kształtu podstawowych elementoacutewdzielone są nabull modele regularnebull modele nieregularne
NUMERYCZNE MODELE PRZESTRZENNE
PODZIAŁ MODELI WEKTOROWYCH
Szczegoacutelnymi przypadkami modeli powierzchniowych są teselacje ktoacutere definiowane są jako podział części płaszczyzny na elementarne obszary będące figurami ustalonego kształtu Teselecja w przestrzeni dwuwymiarowej może być więc poroacutewnana do mozaiki ktoacuterej elementy pokrywają całkowicie dany obszar nie nakładając się na siebie W teselacjach wyroacuteżniamy teselacje regularne ktoacutere utworzone są z elementoacutew w kształcie kwadratu troacutejkąta roacutewnobocznego lub sześciokąta foremnego
Z powyższych modeli największe znaczenie mają modele wektorowe nieregularne oraz modele rastrowe (czyli teselacje o elementach kwadratowych)
MODELE POWIERZCHNIOWE
PROSTY MODEL WEKTOROWY
Model ten stanowi bezpośrednie numeryczne przedstawienie obiektoacutew świata rzeczywistego przez odpowiadające im geometryczne obiekty w modelu danych przestrzennych Obiektami prostego modelu wektorowego są obiekty1048766 punktowe1048766 liniowe1048766 powierzchniowe
Położenie obiektoacutew punktowych określa się przez wspoacutełrzędne punktu lokalizującego dany obiekt W przypadku obiektoacutew liniowych i powierzchniowych ktoacutere określane są przez większą liczbę punktoacutew oproacutecz ich wspoacutełrzędnych istotne jest ich odpowiednie uporządkowanie ktoacutere określa kształt obiektu Mając bowiem jedynie grupę punktoacutew bez informacji o ich uporządkowaniu nie jesteśmy w stanie jednoznacznie określić kształtu obiektu
PROSTY MODEL WEKTOROWY SPAGHETTI
W prostym modelu wektorowym bdquospaghettirdquo brak jest informacji o bezpośredniej wzajemnej relacji opisywanych danych W ten sposoacuteb- poszczegoacutelne segmenty mogą nie przylegać dokładnie do siebie- poligony mogą tworzyć otwarte powierzchnie- sąsiadujące poligony mogą przecinać się lub tworzyć wolne przestrzenie- linie (polilinie) mogą być utworzone z wielu oderwanych segmentoacutew
TOPOLOGICZNY MODEL WEKTOROWY
W prostym modelu wektorowym obiekty opisywane są bezpośrednio przez ciągi wspoacutełrzędnych punktoacutew Jest to opis kompletny pod względem geometrycznym ale nie dający bezpośrednio informacji o wzajemnym powiązaniu obiektoacutew między sobą Ewentualne powiązania między obiektami (np sąsiedztwo) mogą być wykrywane jedynie przez zastosowanie geometrii analitycznej Inaczej sytuacja wygląda w topologicznym modelu wektorowym ktoacutery oproacutecz informacji geometrycznych definiujących położenie I kształt obiektoacutew zawiera roacutewnież informacje o wzajemne powiązania między obiektami W topologicznym modelu wektorowym wyodrębnia się trzy rodzaje elementoacutew topologicznych
bull zerowymiarowe - punkty węzłowebull jednowymiarowe - linie granicznebull dwuwymiarowe - obszary
TOPOLOGIA
Przetwarzanie danych z wspoacutełdzieleniem geometrii (lepsza jakość obsługi)
Ograniczenie sposobu dzielenia właściwości geometrycznych-np przyległe poligony takie jak działki mają wspoacutelne krawędzie
Zdefiniowanie oraz implementacja integralności danych-między działkami nie powinno być wolnych przestrzeni
Zapewnienie możliwości wykonywania zapytań przestrzennych- szybka identyfikacja obiektoacutew spełniających zadane kryteria
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE POJĘCIA MODELU WEKTOROWEGO
bull etykieta (label polygon interior point) ndash punkt wskazujący na właściwości danej powierzchni
bull węzeł (node) ndash punkt wspoacutelny obiektoacutew najczęściej odnosi się do przecięć linii lub zakończeń tych odcinkoacutew
bull punkt odniesienia (entity point) ndash punkt lokalizujący ścisłe położenie obiektoacutew punktowych oraz liniowych i powierzchniowych posiadających reprezentację znakową typu punktowego
bull kierunek linii ndash własność odcinak linii porządkująca punkty tworzące obiekt
bull granica obszaru (border boundary) ndash odcinek linii ograniczający dany obiekt powierzchniowy
bull wyspy dziury i enklawy ndash charakterystyczne części obszaroacutew ograniczone całkowicie innymi obiektami i powierzchniowymi (ring)
REPREZENTACJA OBIEKTU LINIOWEGO W TOPOLOGICZNYM MODELU WEKTOROWYM
REPREZENTACJA OBIEKTU POWIERZCHNIOWEGO - POLIGONU W TOPOLOGICZNYM MODELU WEKTOROWYM
ZŁOŻONY MODEL TOPOLOGICZNY
Proces tworzenia złożonego modelu wektorowego jest z definicji bardziej skomplikowany i zajmuje więcej czasu jednakże posiada szereg zaletbull umożliwia zadawanie zapytań i analizę danychbull punkty reprezentują poligony o zerowym polu i długościbull linie (łuki ndash ang arcs) ndash rozpoczynają się i kończą węzłami (ang nodes)bull poligony są zbiorem połączonych linii
Określenie segmentoacutew- odcinkoacutew wspoacutelnych dla poligonoacutew zapewnia mniejszą liczbę linii w bazie danych przyległe poligony nie tworzą wolnych przestrzeni i nie przecinają się bardziej spoacutejny obraz podczas wizualizacji danych
Dane muszą zostać bdquooczyszczonerdquo i bdquozbudowanerdquo przed wykorzystaniem w systemie GIS
Po zbudowaniu modelu wektorowego wszystkie przecięcia tworzą węzły i nie ma wiszących segmentoacutew
WSPOacuteŁRZĘDNE ŁUKOacuteW - LINII
TOPOLOGIA LINII
TOPOLOGIA WĘZŁOacuteW
TOPOLOGIA POLIGONOacuteW
RODZAJE WĘZŁOacuteW
1 NORMAL NODES
W miejscu przecięcia trzech lub więcej linii granicznych
Akceptowane zawsze
2 DANGLING NODES
Na końcu linii granicznych
Akceptowane w obiektach liniowych np drogi rzeki ale nie dla poligonoacutew
3 PSEUDONODES
Między dwoma liniami
W poligonach wyspach zmianie atrybutoacutew
LINIE GRANICZNE ndash LINIE ndash ŁUKI
We wszystkich przecięciach wymagane są węzłyWiszące linie są akceptowane pod warunkiem że nie przekraczają wartości progowej tolerancji Na przykład jeżeli proacuteg tolerancji został ustalony na wartość 5 metroacutew linie o długości mniejszej niż 5 metroacutew są uznawane za linie wiszące (błąd) a linie o długości powyżej 5 metroacutew są prawidłowymi danymi
CZYSZCZENIE DANYCH ndash CLEANING
Usuwanie nieprawidłowych linii i węzłoacutewŁączenie brakujących segmentoacutew (w określonej odległości)Usuwanie zbędnych pseudowęzłoacutewDodanie węzłoacutew do wszystkich przecięćDodanie punktoacutew (Label points) centroidoacutew do poligonoacutew
BUDOWANIE TOPOLOGII ndash TOPOLOGY BUILDING
Nie zmienia położenia obiektoacutew ale polega na ich scalaniu Tworzenie tablicy atrybutoacutewPonowne tworzenie po dodawaniu ndash edycji danych w tym- dodawanie lub usuwanie linii i punktoacutew- dodawanie lub usuwanie danych atrybutoacutew
TIN ndash TRIANGULATED IRREGULAR NETWORKWĘZŁY
PROSTOKĄTY OGRANICZAJĄCE
Jedną z najprostszych metod organizacji danych sprzyjającą szybszemu dostępowi jest wprowadzenie w stosowanych do reprezentacji obiektoacutew strukturach danych pewnych dodatkowych informacji Zadaniem ich jest uproszczone w sensie przestrzennym zobrazowanie obiektoacutew ktoacutere możemy nazwać aproksymacją obiektoacutew właściwych Istotą takiej aproksymacji będzie zachowywanie przybliżonej informacji o obiekcie zapisanej w maksymalnie uproszczony sposoacuteb wygodny do wykonywania analiz
Najpowszechniejszym ze spotykanych uproszczeń jest aproksymacja obiektu minimalnym prostokątem o bokach roacutewnoległych do osi układu wspoacutełrzędnych w ktoacuterym można zmieścić cały rozpatrywanyobiekt Prostokąt taki będziemy nazywali minimalnym prostokątem ograniczającym W literaturze polskiej można się spotkać z określaniem takiego prostokąta bdquopudełkiemrdquo
STRUKTURY DANYCH WEKTOROWYCH
SIEĆ PUNKTOacuteW ndash składa się z uporządkowanego geometrycznie zbioru obiektoacutew punktowych na podstawie ich wzajemnej relacji położenia możliwe jest wnioskowanie o poprawności zapisu danych W przypadku gdy sieć punktoacutew ma postać regularnej siatki (grid) wtedy taka strutura jest roacutewnoważna modelowi rastrowemu ponieważ dziedziczy wszystkie jego własności Przykładem takiej struktury jest min Numeryczny model terenu zapisany jako prostokątna sieć punktoacutew
SIEĆ ndash struktura liniowa utworzona z odcinkoacutew o dowolnym kierunku przecinających się w węzłach Najczęściej przenoszona bezpośrednio ze Świata rzeczywistego (np sieć drogowa kolejowa telekomunikacyna itp) Uwzględnienie kierunku linii w topologicznym modelu wektorowym zapewnia Niezależnie analizę parametroacutew sieci w dwu kierunkach Tego typu struktura może być analizowana za pomocą tzw analiz sieciowych z grupy Analiz przestrzennych min Poszukiwanie optymalnej trasy pomiędzy zadanymi punktami optymalizacja lokalizacji centroacutew sieci oraz wyznaczenieZasięgu obszaru obsługi dla centroacutew w sieci i ich dostępności
DRZEWO ndash zespoacuteł skierowanych obiektoacutew liniowych łączących się w węzłach z każdego węzła może wychodzić tylko jeden obiekt Tego typu sieć Nazywana jest siecią typu hierarchicznego i może na przykład reprezentować powiązanie rzek w systemach rzecznych (rzędowość)
WYPEŁNIENIE POWIERZCHNI ndash (GT ndash poligony) ndash przyległe obszary zachowujące ściśle relacje wzajemnego położenia sąsiedztwa Najczęściej powiązane zależnościami hierarchicznymi a grupy obiektoacutew niższego rzędu tworzą pewne nadklasy o kolejnych stopniach agregacji obiektoacutew Przykładowo jednostki podziału administracyjnego kraju
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
DANE WEKTOROWE I DANE RASTROWE
DANE WEKTOROWE
Dane przestrzenne zostają przedstawione (reprezentowane) w formie wspoacutełrzędnych x y (z) Podstawowymi jednostkami informacji przestrzennej są punkty linie i poligony Wszystkie obiekty wektorowe składają się z ciągu jednego lub ich większej liczby punktoacutew z określonymi wspoacutełrzędnymi dla obiektoacutew liniowych jest to uporządkowany zbioacuter powiązanych punktoacutew a dla poligonu zbioacuter powiązanych linii
Przykłady danych wektorowych bull TIGER (Topologically Integrated Encoding and Referencing) bull ArcView Shapefile bull ArcInfo coverage bull DLGbull CAD format
POŁOŻENIE POSZCZEGOacuteLNYCH PUNKTOacuteW WARSTW LINIOWYCH I POLIGONOWYCH W UKŁADZIE WSPOacuteŁRZĘDNYCH
Model wektorowy
Dla większości obiektoacutew świata rzeczywistego występujących w systemach informacji przestrzennej ich reprezentacja przestrzenna może być zrealizowana tylko jednym z wymienionych elementoacutew geometrycznych Obiekty tak reprezentowane określa się jako
Punkt - uporządkowana pary wspoacutełrzędnych w układzie kartezjańskim (xy)
Linia - ciągi wspoacutełrzędnych punktoacutew tworzących linię
Wielobok - ciągi wspoacutełrzędnych punktoacutew tworzących linie ograniczające wielobok
Każdy obiekt (punkt linia wielobok) ma swoacutej identyfikator
DEFINICJA MODELU WEKTOROWEGO
Poszczegoacutelne obiekty proste reprezentują
minus obiekty punktowe reprezentują np punkty osnowy geodezyjnejminus obiekty liniowe reprezentują np ogrodzenia krawężnikiminus obiekty powierzchniowe reprezentują np działki
REPREZENTACJA OBIEKTOacuteW W MODELU WEKTOROWYM
Zależnie od wymiaru podstawowego elementu geometrycznego z jakiego tworzony jest model możemy wyroacuteżnić trzy rodzaje numerycznych modeli przestrzennychbull modele punktowe - podstawowym elementem geometrycznym jest punktbull modele liniowe (wektorowe) - podstawowym elementem jest linia reprezentowana przez ciąg punktoacutewbull modele powierzchniowe - podstawowym elementem jest obszar ktoacutere dodatkowo w zależności od rozmieszczenia i kształtu podstawowych elementoacutewdzielone są nabull modele regularnebull modele nieregularne
NUMERYCZNE MODELE PRZESTRZENNE
PODZIAŁ MODELI WEKTOROWYCH
Szczegoacutelnymi przypadkami modeli powierzchniowych są teselacje ktoacutere definiowane są jako podział części płaszczyzny na elementarne obszary będące figurami ustalonego kształtu Teselecja w przestrzeni dwuwymiarowej może być więc poroacutewnana do mozaiki ktoacuterej elementy pokrywają całkowicie dany obszar nie nakładając się na siebie W teselacjach wyroacuteżniamy teselacje regularne ktoacutere utworzone są z elementoacutew w kształcie kwadratu troacutejkąta roacutewnobocznego lub sześciokąta foremnego
Z powyższych modeli największe znaczenie mają modele wektorowe nieregularne oraz modele rastrowe (czyli teselacje o elementach kwadratowych)
MODELE POWIERZCHNIOWE
PROSTY MODEL WEKTOROWY
Model ten stanowi bezpośrednie numeryczne przedstawienie obiektoacutew świata rzeczywistego przez odpowiadające im geometryczne obiekty w modelu danych przestrzennych Obiektami prostego modelu wektorowego są obiekty1048766 punktowe1048766 liniowe1048766 powierzchniowe
Położenie obiektoacutew punktowych określa się przez wspoacutełrzędne punktu lokalizującego dany obiekt W przypadku obiektoacutew liniowych i powierzchniowych ktoacutere określane są przez większą liczbę punktoacutew oproacutecz ich wspoacutełrzędnych istotne jest ich odpowiednie uporządkowanie ktoacutere określa kształt obiektu Mając bowiem jedynie grupę punktoacutew bez informacji o ich uporządkowaniu nie jesteśmy w stanie jednoznacznie określić kształtu obiektu
PROSTY MODEL WEKTOROWY SPAGHETTI
W prostym modelu wektorowym bdquospaghettirdquo brak jest informacji o bezpośredniej wzajemnej relacji opisywanych danych W ten sposoacuteb- poszczegoacutelne segmenty mogą nie przylegać dokładnie do siebie- poligony mogą tworzyć otwarte powierzchnie- sąsiadujące poligony mogą przecinać się lub tworzyć wolne przestrzenie- linie (polilinie) mogą być utworzone z wielu oderwanych segmentoacutew
TOPOLOGICZNY MODEL WEKTOROWY
W prostym modelu wektorowym obiekty opisywane są bezpośrednio przez ciągi wspoacutełrzędnych punktoacutew Jest to opis kompletny pod względem geometrycznym ale nie dający bezpośrednio informacji o wzajemnym powiązaniu obiektoacutew między sobą Ewentualne powiązania między obiektami (np sąsiedztwo) mogą być wykrywane jedynie przez zastosowanie geometrii analitycznej Inaczej sytuacja wygląda w topologicznym modelu wektorowym ktoacutery oproacutecz informacji geometrycznych definiujących położenie I kształt obiektoacutew zawiera roacutewnież informacje o wzajemne powiązania między obiektami W topologicznym modelu wektorowym wyodrębnia się trzy rodzaje elementoacutew topologicznych
bull zerowymiarowe - punkty węzłowebull jednowymiarowe - linie granicznebull dwuwymiarowe - obszary
TOPOLOGIA
Przetwarzanie danych z wspoacutełdzieleniem geometrii (lepsza jakość obsługi)
Ograniczenie sposobu dzielenia właściwości geometrycznych-np przyległe poligony takie jak działki mają wspoacutelne krawędzie
Zdefiniowanie oraz implementacja integralności danych-między działkami nie powinno być wolnych przestrzeni
Zapewnienie możliwości wykonywania zapytań przestrzennych- szybka identyfikacja obiektoacutew spełniających zadane kryteria
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE POJĘCIA MODELU WEKTOROWEGO
bull etykieta (label polygon interior point) ndash punkt wskazujący na właściwości danej powierzchni
bull węzeł (node) ndash punkt wspoacutelny obiektoacutew najczęściej odnosi się do przecięć linii lub zakończeń tych odcinkoacutew
bull punkt odniesienia (entity point) ndash punkt lokalizujący ścisłe położenie obiektoacutew punktowych oraz liniowych i powierzchniowych posiadających reprezentację znakową typu punktowego
bull kierunek linii ndash własność odcinak linii porządkująca punkty tworzące obiekt
bull granica obszaru (border boundary) ndash odcinek linii ograniczający dany obiekt powierzchniowy
bull wyspy dziury i enklawy ndash charakterystyczne części obszaroacutew ograniczone całkowicie innymi obiektami i powierzchniowymi (ring)
REPREZENTACJA OBIEKTU LINIOWEGO W TOPOLOGICZNYM MODELU WEKTOROWYM
REPREZENTACJA OBIEKTU POWIERZCHNIOWEGO - POLIGONU W TOPOLOGICZNYM MODELU WEKTOROWYM
ZŁOŻONY MODEL TOPOLOGICZNY
Proces tworzenia złożonego modelu wektorowego jest z definicji bardziej skomplikowany i zajmuje więcej czasu jednakże posiada szereg zaletbull umożliwia zadawanie zapytań i analizę danychbull punkty reprezentują poligony o zerowym polu i długościbull linie (łuki ndash ang arcs) ndash rozpoczynają się i kończą węzłami (ang nodes)bull poligony są zbiorem połączonych linii
Określenie segmentoacutew- odcinkoacutew wspoacutelnych dla poligonoacutew zapewnia mniejszą liczbę linii w bazie danych przyległe poligony nie tworzą wolnych przestrzeni i nie przecinają się bardziej spoacutejny obraz podczas wizualizacji danych
Dane muszą zostać bdquooczyszczonerdquo i bdquozbudowanerdquo przed wykorzystaniem w systemie GIS
Po zbudowaniu modelu wektorowego wszystkie przecięcia tworzą węzły i nie ma wiszących segmentoacutew
WSPOacuteŁRZĘDNE ŁUKOacuteW - LINII
TOPOLOGIA LINII
TOPOLOGIA WĘZŁOacuteW
TOPOLOGIA POLIGONOacuteW
RODZAJE WĘZŁOacuteW
1 NORMAL NODES
W miejscu przecięcia trzech lub więcej linii granicznych
Akceptowane zawsze
2 DANGLING NODES
Na końcu linii granicznych
Akceptowane w obiektach liniowych np drogi rzeki ale nie dla poligonoacutew
3 PSEUDONODES
Między dwoma liniami
W poligonach wyspach zmianie atrybutoacutew
LINIE GRANICZNE ndash LINIE ndash ŁUKI
We wszystkich przecięciach wymagane są węzłyWiszące linie są akceptowane pod warunkiem że nie przekraczają wartości progowej tolerancji Na przykład jeżeli proacuteg tolerancji został ustalony na wartość 5 metroacutew linie o długości mniejszej niż 5 metroacutew są uznawane za linie wiszące (błąd) a linie o długości powyżej 5 metroacutew są prawidłowymi danymi
CZYSZCZENIE DANYCH ndash CLEANING
Usuwanie nieprawidłowych linii i węzłoacutewŁączenie brakujących segmentoacutew (w określonej odległości)Usuwanie zbędnych pseudowęzłoacutewDodanie węzłoacutew do wszystkich przecięćDodanie punktoacutew (Label points) centroidoacutew do poligonoacutew
BUDOWANIE TOPOLOGII ndash TOPOLOGY BUILDING
Nie zmienia położenia obiektoacutew ale polega na ich scalaniu Tworzenie tablicy atrybutoacutewPonowne tworzenie po dodawaniu ndash edycji danych w tym- dodawanie lub usuwanie linii i punktoacutew- dodawanie lub usuwanie danych atrybutoacutew
TIN ndash TRIANGULATED IRREGULAR NETWORKWĘZŁY
PROSTOKĄTY OGRANICZAJĄCE
Jedną z najprostszych metod organizacji danych sprzyjającą szybszemu dostępowi jest wprowadzenie w stosowanych do reprezentacji obiektoacutew strukturach danych pewnych dodatkowych informacji Zadaniem ich jest uproszczone w sensie przestrzennym zobrazowanie obiektoacutew ktoacutere możemy nazwać aproksymacją obiektoacutew właściwych Istotą takiej aproksymacji będzie zachowywanie przybliżonej informacji o obiekcie zapisanej w maksymalnie uproszczony sposoacuteb wygodny do wykonywania analiz
Najpowszechniejszym ze spotykanych uproszczeń jest aproksymacja obiektu minimalnym prostokątem o bokach roacutewnoległych do osi układu wspoacutełrzędnych w ktoacuterym można zmieścić cały rozpatrywanyobiekt Prostokąt taki będziemy nazywali minimalnym prostokątem ograniczającym W literaturze polskiej można się spotkać z określaniem takiego prostokąta bdquopudełkiemrdquo
STRUKTURY DANYCH WEKTOROWYCH
SIEĆ PUNKTOacuteW ndash składa się z uporządkowanego geometrycznie zbioru obiektoacutew punktowych na podstawie ich wzajemnej relacji położenia możliwe jest wnioskowanie o poprawności zapisu danych W przypadku gdy sieć punktoacutew ma postać regularnej siatki (grid) wtedy taka strutura jest roacutewnoważna modelowi rastrowemu ponieważ dziedziczy wszystkie jego własności Przykładem takiej struktury jest min Numeryczny model terenu zapisany jako prostokątna sieć punktoacutew
SIEĆ ndash struktura liniowa utworzona z odcinkoacutew o dowolnym kierunku przecinających się w węzłach Najczęściej przenoszona bezpośrednio ze Świata rzeczywistego (np sieć drogowa kolejowa telekomunikacyna itp) Uwzględnienie kierunku linii w topologicznym modelu wektorowym zapewnia Niezależnie analizę parametroacutew sieci w dwu kierunkach Tego typu struktura może być analizowana za pomocą tzw analiz sieciowych z grupy Analiz przestrzennych min Poszukiwanie optymalnej trasy pomiędzy zadanymi punktami optymalizacja lokalizacji centroacutew sieci oraz wyznaczenieZasięgu obszaru obsługi dla centroacutew w sieci i ich dostępności
DRZEWO ndash zespoacuteł skierowanych obiektoacutew liniowych łączących się w węzłach z każdego węzła może wychodzić tylko jeden obiekt Tego typu sieć Nazywana jest siecią typu hierarchicznego i może na przykład reprezentować powiązanie rzek w systemach rzecznych (rzędowość)
WYPEŁNIENIE POWIERZCHNI ndash (GT ndash poligony) ndash przyległe obszary zachowujące ściśle relacje wzajemnego położenia sąsiedztwa Najczęściej powiązane zależnościami hierarchicznymi a grupy obiektoacutew niższego rzędu tworzą pewne nadklasy o kolejnych stopniach agregacji obiektoacutew Przykładowo jednostki podziału administracyjnego kraju
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
DANE WEKTOROWE
Dane przestrzenne zostają przedstawione (reprezentowane) w formie wspoacutełrzędnych x y (z) Podstawowymi jednostkami informacji przestrzennej są punkty linie i poligony Wszystkie obiekty wektorowe składają się z ciągu jednego lub ich większej liczby punktoacutew z określonymi wspoacutełrzędnymi dla obiektoacutew liniowych jest to uporządkowany zbioacuter powiązanych punktoacutew a dla poligonu zbioacuter powiązanych linii
Przykłady danych wektorowych bull TIGER (Topologically Integrated Encoding and Referencing) bull ArcView Shapefile bull ArcInfo coverage bull DLGbull CAD format
POŁOŻENIE POSZCZEGOacuteLNYCH PUNKTOacuteW WARSTW LINIOWYCH I POLIGONOWYCH W UKŁADZIE WSPOacuteŁRZĘDNYCH
Model wektorowy
Dla większości obiektoacutew świata rzeczywistego występujących w systemach informacji przestrzennej ich reprezentacja przestrzenna może być zrealizowana tylko jednym z wymienionych elementoacutew geometrycznych Obiekty tak reprezentowane określa się jako
Punkt - uporządkowana pary wspoacutełrzędnych w układzie kartezjańskim (xy)
Linia - ciągi wspoacutełrzędnych punktoacutew tworzących linię
Wielobok - ciągi wspoacutełrzędnych punktoacutew tworzących linie ograniczające wielobok
Każdy obiekt (punkt linia wielobok) ma swoacutej identyfikator
DEFINICJA MODELU WEKTOROWEGO
Poszczegoacutelne obiekty proste reprezentują
minus obiekty punktowe reprezentują np punkty osnowy geodezyjnejminus obiekty liniowe reprezentują np ogrodzenia krawężnikiminus obiekty powierzchniowe reprezentują np działki
REPREZENTACJA OBIEKTOacuteW W MODELU WEKTOROWYM
Zależnie od wymiaru podstawowego elementu geometrycznego z jakiego tworzony jest model możemy wyroacuteżnić trzy rodzaje numerycznych modeli przestrzennychbull modele punktowe - podstawowym elementem geometrycznym jest punktbull modele liniowe (wektorowe) - podstawowym elementem jest linia reprezentowana przez ciąg punktoacutewbull modele powierzchniowe - podstawowym elementem jest obszar ktoacutere dodatkowo w zależności od rozmieszczenia i kształtu podstawowych elementoacutewdzielone są nabull modele regularnebull modele nieregularne
NUMERYCZNE MODELE PRZESTRZENNE
PODZIAŁ MODELI WEKTOROWYCH
Szczegoacutelnymi przypadkami modeli powierzchniowych są teselacje ktoacutere definiowane są jako podział części płaszczyzny na elementarne obszary będące figurami ustalonego kształtu Teselecja w przestrzeni dwuwymiarowej może być więc poroacutewnana do mozaiki ktoacuterej elementy pokrywają całkowicie dany obszar nie nakładając się na siebie W teselacjach wyroacuteżniamy teselacje regularne ktoacutere utworzone są z elementoacutew w kształcie kwadratu troacutejkąta roacutewnobocznego lub sześciokąta foremnego
Z powyższych modeli największe znaczenie mają modele wektorowe nieregularne oraz modele rastrowe (czyli teselacje o elementach kwadratowych)
MODELE POWIERZCHNIOWE
PROSTY MODEL WEKTOROWY
Model ten stanowi bezpośrednie numeryczne przedstawienie obiektoacutew świata rzeczywistego przez odpowiadające im geometryczne obiekty w modelu danych przestrzennych Obiektami prostego modelu wektorowego są obiekty1048766 punktowe1048766 liniowe1048766 powierzchniowe
Położenie obiektoacutew punktowych określa się przez wspoacutełrzędne punktu lokalizującego dany obiekt W przypadku obiektoacutew liniowych i powierzchniowych ktoacutere określane są przez większą liczbę punktoacutew oproacutecz ich wspoacutełrzędnych istotne jest ich odpowiednie uporządkowanie ktoacutere określa kształt obiektu Mając bowiem jedynie grupę punktoacutew bez informacji o ich uporządkowaniu nie jesteśmy w stanie jednoznacznie określić kształtu obiektu
PROSTY MODEL WEKTOROWY SPAGHETTI
W prostym modelu wektorowym bdquospaghettirdquo brak jest informacji o bezpośredniej wzajemnej relacji opisywanych danych W ten sposoacuteb- poszczegoacutelne segmenty mogą nie przylegać dokładnie do siebie- poligony mogą tworzyć otwarte powierzchnie- sąsiadujące poligony mogą przecinać się lub tworzyć wolne przestrzenie- linie (polilinie) mogą być utworzone z wielu oderwanych segmentoacutew
TOPOLOGICZNY MODEL WEKTOROWY
W prostym modelu wektorowym obiekty opisywane są bezpośrednio przez ciągi wspoacutełrzędnych punktoacutew Jest to opis kompletny pod względem geometrycznym ale nie dający bezpośrednio informacji o wzajemnym powiązaniu obiektoacutew między sobą Ewentualne powiązania między obiektami (np sąsiedztwo) mogą być wykrywane jedynie przez zastosowanie geometrii analitycznej Inaczej sytuacja wygląda w topologicznym modelu wektorowym ktoacutery oproacutecz informacji geometrycznych definiujących położenie I kształt obiektoacutew zawiera roacutewnież informacje o wzajemne powiązania między obiektami W topologicznym modelu wektorowym wyodrębnia się trzy rodzaje elementoacutew topologicznych
bull zerowymiarowe - punkty węzłowebull jednowymiarowe - linie granicznebull dwuwymiarowe - obszary
TOPOLOGIA
Przetwarzanie danych z wspoacutełdzieleniem geometrii (lepsza jakość obsługi)
Ograniczenie sposobu dzielenia właściwości geometrycznych-np przyległe poligony takie jak działki mają wspoacutelne krawędzie
Zdefiniowanie oraz implementacja integralności danych-między działkami nie powinno być wolnych przestrzeni
Zapewnienie możliwości wykonywania zapytań przestrzennych- szybka identyfikacja obiektoacutew spełniających zadane kryteria
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE POJĘCIA MODELU WEKTOROWEGO
bull etykieta (label polygon interior point) ndash punkt wskazujący na właściwości danej powierzchni
bull węzeł (node) ndash punkt wspoacutelny obiektoacutew najczęściej odnosi się do przecięć linii lub zakończeń tych odcinkoacutew
bull punkt odniesienia (entity point) ndash punkt lokalizujący ścisłe położenie obiektoacutew punktowych oraz liniowych i powierzchniowych posiadających reprezentację znakową typu punktowego
bull kierunek linii ndash własność odcinak linii porządkująca punkty tworzące obiekt
bull granica obszaru (border boundary) ndash odcinek linii ograniczający dany obiekt powierzchniowy
bull wyspy dziury i enklawy ndash charakterystyczne części obszaroacutew ograniczone całkowicie innymi obiektami i powierzchniowymi (ring)
REPREZENTACJA OBIEKTU LINIOWEGO W TOPOLOGICZNYM MODELU WEKTOROWYM
REPREZENTACJA OBIEKTU POWIERZCHNIOWEGO - POLIGONU W TOPOLOGICZNYM MODELU WEKTOROWYM
ZŁOŻONY MODEL TOPOLOGICZNY
Proces tworzenia złożonego modelu wektorowego jest z definicji bardziej skomplikowany i zajmuje więcej czasu jednakże posiada szereg zaletbull umożliwia zadawanie zapytań i analizę danychbull punkty reprezentują poligony o zerowym polu i długościbull linie (łuki ndash ang arcs) ndash rozpoczynają się i kończą węzłami (ang nodes)bull poligony są zbiorem połączonych linii
Określenie segmentoacutew- odcinkoacutew wspoacutelnych dla poligonoacutew zapewnia mniejszą liczbę linii w bazie danych przyległe poligony nie tworzą wolnych przestrzeni i nie przecinają się bardziej spoacutejny obraz podczas wizualizacji danych
Dane muszą zostać bdquooczyszczonerdquo i bdquozbudowanerdquo przed wykorzystaniem w systemie GIS
Po zbudowaniu modelu wektorowego wszystkie przecięcia tworzą węzły i nie ma wiszących segmentoacutew
WSPOacuteŁRZĘDNE ŁUKOacuteW - LINII
TOPOLOGIA LINII
TOPOLOGIA WĘZŁOacuteW
TOPOLOGIA POLIGONOacuteW
RODZAJE WĘZŁOacuteW
1 NORMAL NODES
W miejscu przecięcia trzech lub więcej linii granicznych
Akceptowane zawsze
2 DANGLING NODES
Na końcu linii granicznych
Akceptowane w obiektach liniowych np drogi rzeki ale nie dla poligonoacutew
3 PSEUDONODES
Między dwoma liniami
W poligonach wyspach zmianie atrybutoacutew
LINIE GRANICZNE ndash LINIE ndash ŁUKI
We wszystkich przecięciach wymagane są węzłyWiszące linie są akceptowane pod warunkiem że nie przekraczają wartości progowej tolerancji Na przykład jeżeli proacuteg tolerancji został ustalony na wartość 5 metroacutew linie o długości mniejszej niż 5 metroacutew są uznawane za linie wiszące (błąd) a linie o długości powyżej 5 metroacutew są prawidłowymi danymi
CZYSZCZENIE DANYCH ndash CLEANING
Usuwanie nieprawidłowych linii i węzłoacutewŁączenie brakujących segmentoacutew (w określonej odległości)Usuwanie zbędnych pseudowęzłoacutewDodanie węzłoacutew do wszystkich przecięćDodanie punktoacutew (Label points) centroidoacutew do poligonoacutew
BUDOWANIE TOPOLOGII ndash TOPOLOGY BUILDING
Nie zmienia położenia obiektoacutew ale polega na ich scalaniu Tworzenie tablicy atrybutoacutewPonowne tworzenie po dodawaniu ndash edycji danych w tym- dodawanie lub usuwanie linii i punktoacutew- dodawanie lub usuwanie danych atrybutoacutew
TIN ndash TRIANGULATED IRREGULAR NETWORKWĘZŁY
PROSTOKĄTY OGRANICZAJĄCE
Jedną z najprostszych metod organizacji danych sprzyjającą szybszemu dostępowi jest wprowadzenie w stosowanych do reprezentacji obiektoacutew strukturach danych pewnych dodatkowych informacji Zadaniem ich jest uproszczone w sensie przestrzennym zobrazowanie obiektoacutew ktoacutere możemy nazwać aproksymacją obiektoacutew właściwych Istotą takiej aproksymacji będzie zachowywanie przybliżonej informacji o obiekcie zapisanej w maksymalnie uproszczony sposoacuteb wygodny do wykonywania analiz
Najpowszechniejszym ze spotykanych uproszczeń jest aproksymacja obiektu minimalnym prostokątem o bokach roacutewnoległych do osi układu wspoacutełrzędnych w ktoacuterym można zmieścić cały rozpatrywanyobiekt Prostokąt taki będziemy nazywali minimalnym prostokątem ograniczającym W literaturze polskiej można się spotkać z określaniem takiego prostokąta bdquopudełkiemrdquo
STRUKTURY DANYCH WEKTOROWYCH
SIEĆ PUNKTOacuteW ndash składa się z uporządkowanego geometrycznie zbioru obiektoacutew punktowych na podstawie ich wzajemnej relacji położenia możliwe jest wnioskowanie o poprawności zapisu danych W przypadku gdy sieć punktoacutew ma postać regularnej siatki (grid) wtedy taka strutura jest roacutewnoważna modelowi rastrowemu ponieważ dziedziczy wszystkie jego własności Przykładem takiej struktury jest min Numeryczny model terenu zapisany jako prostokątna sieć punktoacutew
SIEĆ ndash struktura liniowa utworzona z odcinkoacutew o dowolnym kierunku przecinających się w węzłach Najczęściej przenoszona bezpośrednio ze Świata rzeczywistego (np sieć drogowa kolejowa telekomunikacyna itp) Uwzględnienie kierunku linii w topologicznym modelu wektorowym zapewnia Niezależnie analizę parametroacutew sieci w dwu kierunkach Tego typu struktura może być analizowana za pomocą tzw analiz sieciowych z grupy Analiz przestrzennych min Poszukiwanie optymalnej trasy pomiędzy zadanymi punktami optymalizacja lokalizacji centroacutew sieci oraz wyznaczenieZasięgu obszaru obsługi dla centroacutew w sieci i ich dostępności
DRZEWO ndash zespoacuteł skierowanych obiektoacutew liniowych łączących się w węzłach z każdego węzła może wychodzić tylko jeden obiekt Tego typu sieć Nazywana jest siecią typu hierarchicznego i może na przykład reprezentować powiązanie rzek w systemach rzecznych (rzędowość)
WYPEŁNIENIE POWIERZCHNI ndash (GT ndash poligony) ndash przyległe obszary zachowujące ściśle relacje wzajemnego położenia sąsiedztwa Najczęściej powiązane zależnościami hierarchicznymi a grupy obiektoacutew niższego rzędu tworzą pewne nadklasy o kolejnych stopniach agregacji obiektoacutew Przykładowo jednostki podziału administracyjnego kraju
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
POŁOŻENIE POSZCZEGOacuteLNYCH PUNKTOacuteW WARSTW LINIOWYCH I POLIGONOWYCH W UKŁADZIE WSPOacuteŁRZĘDNYCH
Model wektorowy
Dla większości obiektoacutew świata rzeczywistego występujących w systemach informacji przestrzennej ich reprezentacja przestrzenna może być zrealizowana tylko jednym z wymienionych elementoacutew geometrycznych Obiekty tak reprezentowane określa się jako
Punkt - uporządkowana pary wspoacutełrzędnych w układzie kartezjańskim (xy)
Linia - ciągi wspoacutełrzędnych punktoacutew tworzących linię
Wielobok - ciągi wspoacutełrzędnych punktoacutew tworzących linie ograniczające wielobok
Każdy obiekt (punkt linia wielobok) ma swoacutej identyfikator
DEFINICJA MODELU WEKTOROWEGO
Poszczegoacutelne obiekty proste reprezentują
minus obiekty punktowe reprezentują np punkty osnowy geodezyjnejminus obiekty liniowe reprezentują np ogrodzenia krawężnikiminus obiekty powierzchniowe reprezentują np działki
REPREZENTACJA OBIEKTOacuteW W MODELU WEKTOROWYM
Zależnie od wymiaru podstawowego elementu geometrycznego z jakiego tworzony jest model możemy wyroacuteżnić trzy rodzaje numerycznych modeli przestrzennychbull modele punktowe - podstawowym elementem geometrycznym jest punktbull modele liniowe (wektorowe) - podstawowym elementem jest linia reprezentowana przez ciąg punktoacutewbull modele powierzchniowe - podstawowym elementem jest obszar ktoacutere dodatkowo w zależności od rozmieszczenia i kształtu podstawowych elementoacutewdzielone są nabull modele regularnebull modele nieregularne
NUMERYCZNE MODELE PRZESTRZENNE
PODZIAŁ MODELI WEKTOROWYCH
Szczegoacutelnymi przypadkami modeli powierzchniowych są teselacje ktoacutere definiowane są jako podział części płaszczyzny na elementarne obszary będące figurami ustalonego kształtu Teselecja w przestrzeni dwuwymiarowej może być więc poroacutewnana do mozaiki ktoacuterej elementy pokrywają całkowicie dany obszar nie nakładając się na siebie W teselacjach wyroacuteżniamy teselacje regularne ktoacutere utworzone są z elementoacutew w kształcie kwadratu troacutejkąta roacutewnobocznego lub sześciokąta foremnego
Z powyższych modeli największe znaczenie mają modele wektorowe nieregularne oraz modele rastrowe (czyli teselacje o elementach kwadratowych)
MODELE POWIERZCHNIOWE
PROSTY MODEL WEKTOROWY
Model ten stanowi bezpośrednie numeryczne przedstawienie obiektoacutew świata rzeczywistego przez odpowiadające im geometryczne obiekty w modelu danych przestrzennych Obiektami prostego modelu wektorowego są obiekty1048766 punktowe1048766 liniowe1048766 powierzchniowe
Położenie obiektoacutew punktowych określa się przez wspoacutełrzędne punktu lokalizującego dany obiekt W przypadku obiektoacutew liniowych i powierzchniowych ktoacutere określane są przez większą liczbę punktoacutew oproacutecz ich wspoacutełrzędnych istotne jest ich odpowiednie uporządkowanie ktoacutere określa kształt obiektu Mając bowiem jedynie grupę punktoacutew bez informacji o ich uporządkowaniu nie jesteśmy w stanie jednoznacznie określić kształtu obiektu
PROSTY MODEL WEKTOROWY SPAGHETTI
W prostym modelu wektorowym bdquospaghettirdquo brak jest informacji o bezpośredniej wzajemnej relacji opisywanych danych W ten sposoacuteb- poszczegoacutelne segmenty mogą nie przylegać dokładnie do siebie- poligony mogą tworzyć otwarte powierzchnie- sąsiadujące poligony mogą przecinać się lub tworzyć wolne przestrzenie- linie (polilinie) mogą być utworzone z wielu oderwanych segmentoacutew
TOPOLOGICZNY MODEL WEKTOROWY
W prostym modelu wektorowym obiekty opisywane są bezpośrednio przez ciągi wspoacutełrzędnych punktoacutew Jest to opis kompletny pod względem geometrycznym ale nie dający bezpośrednio informacji o wzajemnym powiązaniu obiektoacutew między sobą Ewentualne powiązania między obiektami (np sąsiedztwo) mogą być wykrywane jedynie przez zastosowanie geometrii analitycznej Inaczej sytuacja wygląda w topologicznym modelu wektorowym ktoacutery oproacutecz informacji geometrycznych definiujących położenie I kształt obiektoacutew zawiera roacutewnież informacje o wzajemne powiązania między obiektami W topologicznym modelu wektorowym wyodrębnia się trzy rodzaje elementoacutew topologicznych
bull zerowymiarowe - punkty węzłowebull jednowymiarowe - linie granicznebull dwuwymiarowe - obszary
TOPOLOGIA
Przetwarzanie danych z wspoacutełdzieleniem geometrii (lepsza jakość obsługi)
Ograniczenie sposobu dzielenia właściwości geometrycznych-np przyległe poligony takie jak działki mają wspoacutelne krawędzie
Zdefiniowanie oraz implementacja integralności danych-między działkami nie powinno być wolnych przestrzeni
Zapewnienie możliwości wykonywania zapytań przestrzennych- szybka identyfikacja obiektoacutew spełniających zadane kryteria
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE POJĘCIA MODELU WEKTOROWEGO
bull etykieta (label polygon interior point) ndash punkt wskazujący na właściwości danej powierzchni
bull węzeł (node) ndash punkt wspoacutelny obiektoacutew najczęściej odnosi się do przecięć linii lub zakończeń tych odcinkoacutew
bull punkt odniesienia (entity point) ndash punkt lokalizujący ścisłe położenie obiektoacutew punktowych oraz liniowych i powierzchniowych posiadających reprezentację znakową typu punktowego
bull kierunek linii ndash własność odcinak linii porządkująca punkty tworzące obiekt
bull granica obszaru (border boundary) ndash odcinek linii ograniczający dany obiekt powierzchniowy
bull wyspy dziury i enklawy ndash charakterystyczne części obszaroacutew ograniczone całkowicie innymi obiektami i powierzchniowymi (ring)
REPREZENTACJA OBIEKTU LINIOWEGO W TOPOLOGICZNYM MODELU WEKTOROWYM
REPREZENTACJA OBIEKTU POWIERZCHNIOWEGO - POLIGONU W TOPOLOGICZNYM MODELU WEKTOROWYM
ZŁOŻONY MODEL TOPOLOGICZNY
Proces tworzenia złożonego modelu wektorowego jest z definicji bardziej skomplikowany i zajmuje więcej czasu jednakże posiada szereg zaletbull umożliwia zadawanie zapytań i analizę danychbull punkty reprezentują poligony o zerowym polu i długościbull linie (łuki ndash ang arcs) ndash rozpoczynają się i kończą węzłami (ang nodes)bull poligony są zbiorem połączonych linii
Określenie segmentoacutew- odcinkoacutew wspoacutelnych dla poligonoacutew zapewnia mniejszą liczbę linii w bazie danych przyległe poligony nie tworzą wolnych przestrzeni i nie przecinają się bardziej spoacutejny obraz podczas wizualizacji danych
Dane muszą zostać bdquooczyszczonerdquo i bdquozbudowanerdquo przed wykorzystaniem w systemie GIS
Po zbudowaniu modelu wektorowego wszystkie przecięcia tworzą węzły i nie ma wiszących segmentoacutew
WSPOacuteŁRZĘDNE ŁUKOacuteW - LINII
TOPOLOGIA LINII
TOPOLOGIA WĘZŁOacuteW
TOPOLOGIA POLIGONOacuteW
RODZAJE WĘZŁOacuteW
1 NORMAL NODES
W miejscu przecięcia trzech lub więcej linii granicznych
Akceptowane zawsze
2 DANGLING NODES
Na końcu linii granicznych
Akceptowane w obiektach liniowych np drogi rzeki ale nie dla poligonoacutew
3 PSEUDONODES
Między dwoma liniami
W poligonach wyspach zmianie atrybutoacutew
LINIE GRANICZNE ndash LINIE ndash ŁUKI
We wszystkich przecięciach wymagane są węzłyWiszące linie są akceptowane pod warunkiem że nie przekraczają wartości progowej tolerancji Na przykład jeżeli proacuteg tolerancji został ustalony na wartość 5 metroacutew linie o długości mniejszej niż 5 metroacutew są uznawane za linie wiszące (błąd) a linie o długości powyżej 5 metroacutew są prawidłowymi danymi
CZYSZCZENIE DANYCH ndash CLEANING
Usuwanie nieprawidłowych linii i węzłoacutewŁączenie brakujących segmentoacutew (w określonej odległości)Usuwanie zbędnych pseudowęzłoacutewDodanie węzłoacutew do wszystkich przecięćDodanie punktoacutew (Label points) centroidoacutew do poligonoacutew
BUDOWANIE TOPOLOGII ndash TOPOLOGY BUILDING
Nie zmienia położenia obiektoacutew ale polega na ich scalaniu Tworzenie tablicy atrybutoacutewPonowne tworzenie po dodawaniu ndash edycji danych w tym- dodawanie lub usuwanie linii i punktoacutew- dodawanie lub usuwanie danych atrybutoacutew
TIN ndash TRIANGULATED IRREGULAR NETWORKWĘZŁY
PROSTOKĄTY OGRANICZAJĄCE
Jedną z najprostszych metod organizacji danych sprzyjającą szybszemu dostępowi jest wprowadzenie w stosowanych do reprezentacji obiektoacutew strukturach danych pewnych dodatkowych informacji Zadaniem ich jest uproszczone w sensie przestrzennym zobrazowanie obiektoacutew ktoacutere możemy nazwać aproksymacją obiektoacutew właściwych Istotą takiej aproksymacji będzie zachowywanie przybliżonej informacji o obiekcie zapisanej w maksymalnie uproszczony sposoacuteb wygodny do wykonywania analiz
Najpowszechniejszym ze spotykanych uproszczeń jest aproksymacja obiektu minimalnym prostokątem o bokach roacutewnoległych do osi układu wspoacutełrzędnych w ktoacuterym można zmieścić cały rozpatrywanyobiekt Prostokąt taki będziemy nazywali minimalnym prostokątem ograniczającym W literaturze polskiej można się spotkać z określaniem takiego prostokąta bdquopudełkiemrdquo
STRUKTURY DANYCH WEKTOROWYCH
SIEĆ PUNKTOacuteW ndash składa się z uporządkowanego geometrycznie zbioru obiektoacutew punktowych na podstawie ich wzajemnej relacji położenia możliwe jest wnioskowanie o poprawności zapisu danych W przypadku gdy sieć punktoacutew ma postać regularnej siatki (grid) wtedy taka strutura jest roacutewnoważna modelowi rastrowemu ponieważ dziedziczy wszystkie jego własności Przykładem takiej struktury jest min Numeryczny model terenu zapisany jako prostokątna sieć punktoacutew
SIEĆ ndash struktura liniowa utworzona z odcinkoacutew o dowolnym kierunku przecinających się w węzłach Najczęściej przenoszona bezpośrednio ze Świata rzeczywistego (np sieć drogowa kolejowa telekomunikacyna itp) Uwzględnienie kierunku linii w topologicznym modelu wektorowym zapewnia Niezależnie analizę parametroacutew sieci w dwu kierunkach Tego typu struktura może być analizowana za pomocą tzw analiz sieciowych z grupy Analiz przestrzennych min Poszukiwanie optymalnej trasy pomiędzy zadanymi punktami optymalizacja lokalizacji centroacutew sieci oraz wyznaczenieZasięgu obszaru obsługi dla centroacutew w sieci i ich dostępności
DRZEWO ndash zespoacuteł skierowanych obiektoacutew liniowych łączących się w węzłach z każdego węzła może wychodzić tylko jeden obiekt Tego typu sieć Nazywana jest siecią typu hierarchicznego i może na przykład reprezentować powiązanie rzek w systemach rzecznych (rzędowość)
WYPEŁNIENIE POWIERZCHNI ndash (GT ndash poligony) ndash przyległe obszary zachowujące ściśle relacje wzajemnego położenia sąsiedztwa Najczęściej powiązane zależnościami hierarchicznymi a grupy obiektoacutew niższego rzędu tworzą pewne nadklasy o kolejnych stopniach agregacji obiektoacutew Przykładowo jednostki podziału administracyjnego kraju
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
Model wektorowy
Dla większości obiektoacutew świata rzeczywistego występujących w systemach informacji przestrzennej ich reprezentacja przestrzenna może być zrealizowana tylko jednym z wymienionych elementoacutew geometrycznych Obiekty tak reprezentowane określa się jako
Punkt - uporządkowana pary wspoacutełrzędnych w układzie kartezjańskim (xy)
Linia - ciągi wspoacutełrzędnych punktoacutew tworzących linię
Wielobok - ciągi wspoacutełrzędnych punktoacutew tworzących linie ograniczające wielobok
Każdy obiekt (punkt linia wielobok) ma swoacutej identyfikator
DEFINICJA MODELU WEKTOROWEGO
Poszczegoacutelne obiekty proste reprezentują
minus obiekty punktowe reprezentują np punkty osnowy geodezyjnejminus obiekty liniowe reprezentują np ogrodzenia krawężnikiminus obiekty powierzchniowe reprezentują np działki
REPREZENTACJA OBIEKTOacuteW W MODELU WEKTOROWYM
Zależnie od wymiaru podstawowego elementu geometrycznego z jakiego tworzony jest model możemy wyroacuteżnić trzy rodzaje numerycznych modeli przestrzennychbull modele punktowe - podstawowym elementem geometrycznym jest punktbull modele liniowe (wektorowe) - podstawowym elementem jest linia reprezentowana przez ciąg punktoacutewbull modele powierzchniowe - podstawowym elementem jest obszar ktoacutere dodatkowo w zależności od rozmieszczenia i kształtu podstawowych elementoacutewdzielone są nabull modele regularnebull modele nieregularne
NUMERYCZNE MODELE PRZESTRZENNE
PODZIAŁ MODELI WEKTOROWYCH
Szczegoacutelnymi przypadkami modeli powierzchniowych są teselacje ktoacutere definiowane są jako podział części płaszczyzny na elementarne obszary będące figurami ustalonego kształtu Teselecja w przestrzeni dwuwymiarowej może być więc poroacutewnana do mozaiki ktoacuterej elementy pokrywają całkowicie dany obszar nie nakładając się na siebie W teselacjach wyroacuteżniamy teselacje regularne ktoacutere utworzone są z elementoacutew w kształcie kwadratu troacutejkąta roacutewnobocznego lub sześciokąta foremnego
Z powyższych modeli największe znaczenie mają modele wektorowe nieregularne oraz modele rastrowe (czyli teselacje o elementach kwadratowych)
MODELE POWIERZCHNIOWE
PROSTY MODEL WEKTOROWY
Model ten stanowi bezpośrednie numeryczne przedstawienie obiektoacutew świata rzeczywistego przez odpowiadające im geometryczne obiekty w modelu danych przestrzennych Obiektami prostego modelu wektorowego są obiekty1048766 punktowe1048766 liniowe1048766 powierzchniowe
Położenie obiektoacutew punktowych określa się przez wspoacutełrzędne punktu lokalizującego dany obiekt W przypadku obiektoacutew liniowych i powierzchniowych ktoacutere określane są przez większą liczbę punktoacutew oproacutecz ich wspoacutełrzędnych istotne jest ich odpowiednie uporządkowanie ktoacutere określa kształt obiektu Mając bowiem jedynie grupę punktoacutew bez informacji o ich uporządkowaniu nie jesteśmy w stanie jednoznacznie określić kształtu obiektu
PROSTY MODEL WEKTOROWY SPAGHETTI
W prostym modelu wektorowym bdquospaghettirdquo brak jest informacji o bezpośredniej wzajemnej relacji opisywanych danych W ten sposoacuteb- poszczegoacutelne segmenty mogą nie przylegać dokładnie do siebie- poligony mogą tworzyć otwarte powierzchnie- sąsiadujące poligony mogą przecinać się lub tworzyć wolne przestrzenie- linie (polilinie) mogą być utworzone z wielu oderwanych segmentoacutew
TOPOLOGICZNY MODEL WEKTOROWY
W prostym modelu wektorowym obiekty opisywane są bezpośrednio przez ciągi wspoacutełrzędnych punktoacutew Jest to opis kompletny pod względem geometrycznym ale nie dający bezpośrednio informacji o wzajemnym powiązaniu obiektoacutew między sobą Ewentualne powiązania między obiektami (np sąsiedztwo) mogą być wykrywane jedynie przez zastosowanie geometrii analitycznej Inaczej sytuacja wygląda w topologicznym modelu wektorowym ktoacutery oproacutecz informacji geometrycznych definiujących położenie I kształt obiektoacutew zawiera roacutewnież informacje o wzajemne powiązania między obiektami W topologicznym modelu wektorowym wyodrębnia się trzy rodzaje elementoacutew topologicznych
bull zerowymiarowe - punkty węzłowebull jednowymiarowe - linie granicznebull dwuwymiarowe - obszary
TOPOLOGIA
Przetwarzanie danych z wspoacutełdzieleniem geometrii (lepsza jakość obsługi)
Ograniczenie sposobu dzielenia właściwości geometrycznych-np przyległe poligony takie jak działki mają wspoacutelne krawędzie
Zdefiniowanie oraz implementacja integralności danych-między działkami nie powinno być wolnych przestrzeni
Zapewnienie możliwości wykonywania zapytań przestrzennych- szybka identyfikacja obiektoacutew spełniających zadane kryteria
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE POJĘCIA MODELU WEKTOROWEGO
bull etykieta (label polygon interior point) ndash punkt wskazujący na właściwości danej powierzchni
bull węzeł (node) ndash punkt wspoacutelny obiektoacutew najczęściej odnosi się do przecięć linii lub zakończeń tych odcinkoacutew
bull punkt odniesienia (entity point) ndash punkt lokalizujący ścisłe położenie obiektoacutew punktowych oraz liniowych i powierzchniowych posiadających reprezentację znakową typu punktowego
bull kierunek linii ndash własność odcinak linii porządkująca punkty tworzące obiekt
bull granica obszaru (border boundary) ndash odcinek linii ograniczający dany obiekt powierzchniowy
bull wyspy dziury i enklawy ndash charakterystyczne części obszaroacutew ograniczone całkowicie innymi obiektami i powierzchniowymi (ring)
REPREZENTACJA OBIEKTU LINIOWEGO W TOPOLOGICZNYM MODELU WEKTOROWYM
REPREZENTACJA OBIEKTU POWIERZCHNIOWEGO - POLIGONU W TOPOLOGICZNYM MODELU WEKTOROWYM
ZŁOŻONY MODEL TOPOLOGICZNY
Proces tworzenia złożonego modelu wektorowego jest z definicji bardziej skomplikowany i zajmuje więcej czasu jednakże posiada szereg zaletbull umożliwia zadawanie zapytań i analizę danychbull punkty reprezentują poligony o zerowym polu i długościbull linie (łuki ndash ang arcs) ndash rozpoczynają się i kończą węzłami (ang nodes)bull poligony są zbiorem połączonych linii
Określenie segmentoacutew- odcinkoacutew wspoacutelnych dla poligonoacutew zapewnia mniejszą liczbę linii w bazie danych przyległe poligony nie tworzą wolnych przestrzeni i nie przecinają się bardziej spoacutejny obraz podczas wizualizacji danych
Dane muszą zostać bdquooczyszczonerdquo i bdquozbudowanerdquo przed wykorzystaniem w systemie GIS
Po zbudowaniu modelu wektorowego wszystkie przecięcia tworzą węzły i nie ma wiszących segmentoacutew
WSPOacuteŁRZĘDNE ŁUKOacuteW - LINII
TOPOLOGIA LINII
TOPOLOGIA WĘZŁOacuteW
TOPOLOGIA POLIGONOacuteW
RODZAJE WĘZŁOacuteW
1 NORMAL NODES
W miejscu przecięcia trzech lub więcej linii granicznych
Akceptowane zawsze
2 DANGLING NODES
Na końcu linii granicznych
Akceptowane w obiektach liniowych np drogi rzeki ale nie dla poligonoacutew
3 PSEUDONODES
Między dwoma liniami
W poligonach wyspach zmianie atrybutoacutew
LINIE GRANICZNE ndash LINIE ndash ŁUKI
We wszystkich przecięciach wymagane są węzłyWiszące linie są akceptowane pod warunkiem że nie przekraczają wartości progowej tolerancji Na przykład jeżeli proacuteg tolerancji został ustalony na wartość 5 metroacutew linie o długości mniejszej niż 5 metroacutew są uznawane za linie wiszące (błąd) a linie o długości powyżej 5 metroacutew są prawidłowymi danymi
CZYSZCZENIE DANYCH ndash CLEANING
Usuwanie nieprawidłowych linii i węzłoacutewŁączenie brakujących segmentoacutew (w określonej odległości)Usuwanie zbędnych pseudowęzłoacutewDodanie węzłoacutew do wszystkich przecięćDodanie punktoacutew (Label points) centroidoacutew do poligonoacutew
BUDOWANIE TOPOLOGII ndash TOPOLOGY BUILDING
Nie zmienia położenia obiektoacutew ale polega na ich scalaniu Tworzenie tablicy atrybutoacutewPonowne tworzenie po dodawaniu ndash edycji danych w tym- dodawanie lub usuwanie linii i punktoacutew- dodawanie lub usuwanie danych atrybutoacutew
TIN ndash TRIANGULATED IRREGULAR NETWORKWĘZŁY
PROSTOKĄTY OGRANICZAJĄCE
Jedną z najprostszych metod organizacji danych sprzyjającą szybszemu dostępowi jest wprowadzenie w stosowanych do reprezentacji obiektoacutew strukturach danych pewnych dodatkowych informacji Zadaniem ich jest uproszczone w sensie przestrzennym zobrazowanie obiektoacutew ktoacutere możemy nazwać aproksymacją obiektoacutew właściwych Istotą takiej aproksymacji będzie zachowywanie przybliżonej informacji o obiekcie zapisanej w maksymalnie uproszczony sposoacuteb wygodny do wykonywania analiz
Najpowszechniejszym ze spotykanych uproszczeń jest aproksymacja obiektu minimalnym prostokątem o bokach roacutewnoległych do osi układu wspoacutełrzędnych w ktoacuterym można zmieścić cały rozpatrywanyobiekt Prostokąt taki będziemy nazywali minimalnym prostokątem ograniczającym W literaturze polskiej można się spotkać z określaniem takiego prostokąta bdquopudełkiemrdquo
STRUKTURY DANYCH WEKTOROWYCH
SIEĆ PUNKTOacuteW ndash składa się z uporządkowanego geometrycznie zbioru obiektoacutew punktowych na podstawie ich wzajemnej relacji położenia możliwe jest wnioskowanie o poprawności zapisu danych W przypadku gdy sieć punktoacutew ma postać regularnej siatki (grid) wtedy taka strutura jest roacutewnoważna modelowi rastrowemu ponieważ dziedziczy wszystkie jego własności Przykładem takiej struktury jest min Numeryczny model terenu zapisany jako prostokątna sieć punktoacutew
SIEĆ ndash struktura liniowa utworzona z odcinkoacutew o dowolnym kierunku przecinających się w węzłach Najczęściej przenoszona bezpośrednio ze Świata rzeczywistego (np sieć drogowa kolejowa telekomunikacyna itp) Uwzględnienie kierunku linii w topologicznym modelu wektorowym zapewnia Niezależnie analizę parametroacutew sieci w dwu kierunkach Tego typu struktura może być analizowana za pomocą tzw analiz sieciowych z grupy Analiz przestrzennych min Poszukiwanie optymalnej trasy pomiędzy zadanymi punktami optymalizacja lokalizacji centroacutew sieci oraz wyznaczenieZasięgu obszaru obsługi dla centroacutew w sieci i ich dostępności
DRZEWO ndash zespoacuteł skierowanych obiektoacutew liniowych łączących się w węzłach z każdego węzła może wychodzić tylko jeden obiekt Tego typu sieć Nazywana jest siecią typu hierarchicznego i może na przykład reprezentować powiązanie rzek w systemach rzecznych (rzędowość)
WYPEŁNIENIE POWIERZCHNI ndash (GT ndash poligony) ndash przyległe obszary zachowujące ściśle relacje wzajemnego położenia sąsiedztwa Najczęściej powiązane zależnościami hierarchicznymi a grupy obiektoacutew niższego rzędu tworzą pewne nadklasy o kolejnych stopniach agregacji obiektoacutew Przykładowo jednostki podziału administracyjnego kraju
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
Poszczegoacutelne obiekty proste reprezentują
minus obiekty punktowe reprezentują np punkty osnowy geodezyjnejminus obiekty liniowe reprezentują np ogrodzenia krawężnikiminus obiekty powierzchniowe reprezentują np działki
REPREZENTACJA OBIEKTOacuteW W MODELU WEKTOROWYM
Zależnie od wymiaru podstawowego elementu geometrycznego z jakiego tworzony jest model możemy wyroacuteżnić trzy rodzaje numerycznych modeli przestrzennychbull modele punktowe - podstawowym elementem geometrycznym jest punktbull modele liniowe (wektorowe) - podstawowym elementem jest linia reprezentowana przez ciąg punktoacutewbull modele powierzchniowe - podstawowym elementem jest obszar ktoacutere dodatkowo w zależności od rozmieszczenia i kształtu podstawowych elementoacutewdzielone są nabull modele regularnebull modele nieregularne
NUMERYCZNE MODELE PRZESTRZENNE
PODZIAŁ MODELI WEKTOROWYCH
Szczegoacutelnymi przypadkami modeli powierzchniowych są teselacje ktoacutere definiowane są jako podział części płaszczyzny na elementarne obszary będące figurami ustalonego kształtu Teselecja w przestrzeni dwuwymiarowej może być więc poroacutewnana do mozaiki ktoacuterej elementy pokrywają całkowicie dany obszar nie nakładając się na siebie W teselacjach wyroacuteżniamy teselacje regularne ktoacutere utworzone są z elementoacutew w kształcie kwadratu troacutejkąta roacutewnobocznego lub sześciokąta foremnego
Z powyższych modeli największe znaczenie mają modele wektorowe nieregularne oraz modele rastrowe (czyli teselacje o elementach kwadratowych)
MODELE POWIERZCHNIOWE
PROSTY MODEL WEKTOROWY
Model ten stanowi bezpośrednie numeryczne przedstawienie obiektoacutew świata rzeczywistego przez odpowiadające im geometryczne obiekty w modelu danych przestrzennych Obiektami prostego modelu wektorowego są obiekty1048766 punktowe1048766 liniowe1048766 powierzchniowe
Położenie obiektoacutew punktowych określa się przez wspoacutełrzędne punktu lokalizującego dany obiekt W przypadku obiektoacutew liniowych i powierzchniowych ktoacutere określane są przez większą liczbę punktoacutew oproacutecz ich wspoacutełrzędnych istotne jest ich odpowiednie uporządkowanie ktoacutere określa kształt obiektu Mając bowiem jedynie grupę punktoacutew bez informacji o ich uporządkowaniu nie jesteśmy w stanie jednoznacznie określić kształtu obiektu
PROSTY MODEL WEKTOROWY SPAGHETTI
W prostym modelu wektorowym bdquospaghettirdquo brak jest informacji o bezpośredniej wzajemnej relacji opisywanych danych W ten sposoacuteb- poszczegoacutelne segmenty mogą nie przylegać dokładnie do siebie- poligony mogą tworzyć otwarte powierzchnie- sąsiadujące poligony mogą przecinać się lub tworzyć wolne przestrzenie- linie (polilinie) mogą być utworzone z wielu oderwanych segmentoacutew
TOPOLOGICZNY MODEL WEKTOROWY
W prostym modelu wektorowym obiekty opisywane są bezpośrednio przez ciągi wspoacutełrzędnych punktoacutew Jest to opis kompletny pod względem geometrycznym ale nie dający bezpośrednio informacji o wzajemnym powiązaniu obiektoacutew między sobą Ewentualne powiązania między obiektami (np sąsiedztwo) mogą być wykrywane jedynie przez zastosowanie geometrii analitycznej Inaczej sytuacja wygląda w topologicznym modelu wektorowym ktoacutery oproacutecz informacji geometrycznych definiujących położenie I kształt obiektoacutew zawiera roacutewnież informacje o wzajemne powiązania między obiektami W topologicznym modelu wektorowym wyodrębnia się trzy rodzaje elementoacutew topologicznych
bull zerowymiarowe - punkty węzłowebull jednowymiarowe - linie granicznebull dwuwymiarowe - obszary
TOPOLOGIA
Przetwarzanie danych z wspoacutełdzieleniem geometrii (lepsza jakość obsługi)
Ograniczenie sposobu dzielenia właściwości geometrycznych-np przyległe poligony takie jak działki mają wspoacutelne krawędzie
Zdefiniowanie oraz implementacja integralności danych-między działkami nie powinno być wolnych przestrzeni
Zapewnienie możliwości wykonywania zapytań przestrzennych- szybka identyfikacja obiektoacutew spełniających zadane kryteria
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE POJĘCIA MODELU WEKTOROWEGO
bull etykieta (label polygon interior point) ndash punkt wskazujący na właściwości danej powierzchni
bull węzeł (node) ndash punkt wspoacutelny obiektoacutew najczęściej odnosi się do przecięć linii lub zakończeń tych odcinkoacutew
bull punkt odniesienia (entity point) ndash punkt lokalizujący ścisłe położenie obiektoacutew punktowych oraz liniowych i powierzchniowych posiadających reprezentację znakową typu punktowego
bull kierunek linii ndash własność odcinak linii porządkująca punkty tworzące obiekt
bull granica obszaru (border boundary) ndash odcinek linii ograniczający dany obiekt powierzchniowy
bull wyspy dziury i enklawy ndash charakterystyczne części obszaroacutew ograniczone całkowicie innymi obiektami i powierzchniowymi (ring)
REPREZENTACJA OBIEKTU LINIOWEGO W TOPOLOGICZNYM MODELU WEKTOROWYM
REPREZENTACJA OBIEKTU POWIERZCHNIOWEGO - POLIGONU W TOPOLOGICZNYM MODELU WEKTOROWYM
ZŁOŻONY MODEL TOPOLOGICZNY
Proces tworzenia złożonego modelu wektorowego jest z definicji bardziej skomplikowany i zajmuje więcej czasu jednakże posiada szereg zaletbull umożliwia zadawanie zapytań i analizę danychbull punkty reprezentują poligony o zerowym polu i długościbull linie (łuki ndash ang arcs) ndash rozpoczynają się i kończą węzłami (ang nodes)bull poligony są zbiorem połączonych linii
Określenie segmentoacutew- odcinkoacutew wspoacutelnych dla poligonoacutew zapewnia mniejszą liczbę linii w bazie danych przyległe poligony nie tworzą wolnych przestrzeni i nie przecinają się bardziej spoacutejny obraz podczas wizualizacji danych
Dane muszą zostać bdquooczyszczonerdquo i bdquozbudowanerdquo przed wykorzystaniem w systemie GIS
Po zbudowaniu modelu wektorowego wszystkie przecięcia tworzą węzły i nie ma wiszących segmentoacutew
WSPOacuteŁRZĘDNE ŁUKOacuteW - LINII
TOPOLOGIA LINII
TOPOLOGIA WĘZŁOacuteW
TOPOLOGIA POLIGONOacuteW
RODZAJE WĘZŁOacuteW
1 NORMAL NODES
W miejscu przecięcia trzech lub więcej linii granicznych
Akceptowane zawsze
2 DANGLING NODES
Na końcu linii granicznych
Akceptowane w obiektach liniowych np drogi rzeki ale nie dla poligonoacutew
3 PSEUDONODES
Między dwoma liniami
W poligonach wyspach zmianie atrybutoacutew
LINIE GRANICZNE ndash LINIE ndash ŁUKI
We wszystkich przecięciach wymagane są węzłyWiszące linie są akceptowane pod warunkiem że nie przekraczają wartości progowej tolerancji Na przykład jeżeli proacuteg tolerancji został ustalony na wartość 5 metroacutew linie o długości mniejszej niż 5 metroacutew są uznawane za linie wiszące (błąd) a linie o długości powyżej 5 metroacutew są prawidłowymi danymi
CZYSZCZENIE DANYCH ndash CLEANING
Usuwanie nieprawidłowych linii i węzłoacutewŁączenie brakujących segmentoacutew (w określonej odległości)Usuwanie zbędnych pseudowęzłoacutewDodanie węzłoacutew do wszystkich przecięćDodanie punktoacutew (Label points) centroidoacutew do poligonoacutew
BUDOWANIE TOPOLOGII ndash TOPOLOGY BUILDING
Nie zmienia położenia obiektoacutew ale polega na ich scalaniu Tworzenie tablicy atrybutoacutewPonowne tworzenie po dodawaniu ndash edycji danych w tym- dodawanie lub usuwanie linii i punktoacutew- dodawanie lub usuwanie danych atrybutoacutew
TIN ndash TRIANGULATED IRREGULAR NETWORKWĘZŁY
PROSTOKĄTY OGRANICZAJĄCE
Jedną z najprostszych metod organizacji danych sprzyjającą szybszemu dostępowi jest wprowadzenie w stosowanych do reprezentacji obiektoacutew strukturach danych pewnych dodatkowych informacji Zadaniem ich jest uproszczone w sensie przestrzennym zobrazowanie obiektoacutew ktoacutere możemy nazwać aproksymacją obiektoacutew właściwych Istotą takiej aproksymacji będzie zachowywanie przybliżonej informacji o obiekcie zapisanej w maksymalnie uproszczony sposoacuteb wygodny do wykonywania analiz
Najpowszechniejszym ze spotykanych uproszczeń jest aproksymacja obiektu minimalnym prostokątem o bokach roacutewnoległych do osi układu wspoacutełrzędnych w ktoacuterym można zmieścić cały rozpatrywanyobiekt Prostokąt taki będziemy nazywali minimalnym prostokątem ograniczającym W literaturze polskiej można się spotkać z określaniem takiego prostokąta bdquopudełkiemrdquo
STRUKTURY DANYCH WEKTOROWYCH
SIEĆ PUNKTOacuteW ndash składa się z uporządkowanego geometrycznie zbioru obiektoacutew punktowych na podstawie ich wzajemnej relacji położenia możliwe jest wnioskowanie o poprawności zapisu danych W przypadku gdy sieć punktoacutew ma postać regularnej siatki (grid) wtedy taka strutura jest roacutewnoważna modelowi rastrowemu ponieważ dziedziczy wszystkie jego własności Przykładem takiej struktury jest min Numeryczny model terenu zapisany jako prostokątna sieć punktoacutew
SIEĆ ndash struktura liniowa utworzona z odcinkoacutew o dowolnym kierunku przecinających się w węzłach Najczęściej przenoszona bezpośrednio ze Świata rzeczywistego (np sieć drogowa kolejowa telekomunikacyna itp) Uwzględnienie kierunku linii w topologicznym modelu wektorowym zapewnia Niezależnie analizę parametroacutew sieci w dwu kierunkach Tego typu struktura może być analizowana za pomocą tzw analiz sieciowych z grupy Analiz przestrzennych min Poszukiwanie optymalnej trasy pomiędzy zadanymi punktami optymalizacja lokalizacji centroacutew sieci oraz wyznaczenieZasięgu obszaru obsługi dla centroacutew w sieci i ich dostępności
DRZEWO ndash zespoacuteł skierowanych obiektoacutew liniowych łączących się w węzłach z każdego węzła może wychodzić tylko jeden obiekt Tego typu sieć Nazywana jest siecią typu hierarchicznego i może na przykład reprezentować powiązanie rzek w systemach rzecznych (rzędowość)
WYPEŁNIENIE POWIERZCHNI ndash (GT ndash poligony) ndash przyległe obszary zachowujące ściśle relacje wzajemnego położenia sąsiedztwa Najczęściej powiązane zależnościami hierarchicznymi a grupy obiektoacutew niższego rzędu tworzą pewne nadklasy o kolejnych stopniach agregacji obiektoacutew Przykładowo jednostki podziału administracyjnego kraju
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
Zależnie od wymiaru podstawowego elementu geometrycznego z jakiego tworzony jest model możemy wyroacuteżnić trzy rodzaje numerycznych modeli przestrzennychbull modele punktowe - podstawowym elementem geometrycznym jest punktbull modele liniowe (wektorowe) - podstawowym elementem jest linia reprezentowana przez ciąg punktoacutewbull modele powierzchniowe - podstawowym elementem jest obszar ktoacutere dodatkowo w zależności od rozmieszczenia i kształtu podstawowych elementoacutewdzielone są nabull modele regularnebull modele nieregularne
NUMERYCZNE MODELE PRZESTRZENNE
PODZIAŁ MODELI WEKTOROWYCH
Szczegoacutelnymi przypadkami modeli powierzchniowych są teselacje ktoacutere definiowane są jako podział części płaszczyzny na elementarne obszary będące figurami ustalonego kształtu Teselecja w przestrzeni dwuwymiarowej może być więc poroacutewnana do mozaiki ktoacuterej elementy pokrywają całkowicie dany obszar nie nakładając się na siebie W teselacjach wyroacuteżniamy teselacje regularne ktoacutere utworzone są z elementoacutew w kształcie kwadratu troacutejkąta roacutewnobocznego lub sześciokąta foremnego
Z powyższych modeli największe znaczenie mają modele wektorowe nieregularne oraz modele rastrowe (czyli teselacje o elementach kwadratowych)
MODELE POWIERZCHNIOWE
PROSTY MODEL WEKTOROWY
Model ten stanowi bezpośrednie numeryczne przedstawienie obiektoacutew świata rzeczywistego przez odpowiadające im geometryczne obiekty w modelu danych przestrzennych Obiektami prostego modelu wektorowego są obiekty1048766 punktowe1048766 liniowe1048766 powierzchniowe
Położenie obiektoacutew punktowych określa się przez wspoacutełrzędne punktu lokalizującego dany obiekt W przypadku obiektoacutew liniowych i powierzchniowych ktoacutere określane są przez większą liczbę punktoacutew oproacutecz ich wspoacutełrzędnych istotne jest ich odpowiednie uporządkowanie ktoacutere określa kształt obiektu Mając bowiem jedynie grupę punktoacutew bez informacji o ich uporządkowaniu nie jesteśmy w stanie jednoznacznie określić kształtu obiektu
PROSTY MODEL WEKTOROWY SPAGHETTI
W prostym modelu wektorowym bdquospaghettirdquo brak jest informacji o bezpośredniej wzajemnej relacji opisywanych danych W ten sposoacuteb- poszczegoacutelne segmenty mogą nie przylegać dokładnie do siebie- poligony mogą tworzyć otwarte powierzchnie- sąsiadujące poligony mogą przecinać się lub tworzyć wolne przestrzenie- linie (polilinie) mogą być utworzone z wielu oderwanych segmentoacutew
TOPOLOGICZNY MODEL WEKTOROWY
W prostym modelu wektorowym obiekty opisywane są bezpośrednio przez ciągi wspoacutełrzędnych punktoacutew Jest to opis kompletny pod względem geometrycznym ale nie dający bezpośrednio informacji o wzajemnym powiązaniu obiektoacutew między sobą Ewentualne powiązania między obiektami (np sąsiedztwo) mogą być wykrywane jedynie przez zastosowanie geometrii analitycznej Inaczej sytuacja wygląda w topologicznym modelu wektorowym ktoacutery oproacutecz informacji geometrycznych definiujących położenie I kształt obiektoacutew zawiera roacutewnież informacje o wzajemne powiązania między obiektami W topologicznym modelu wektorowym wyodrębnia się trzy rodzaje elementoacutew topologicznych
bull zerowymiarowe - punkty węzłowebull jednowymiarowe - linie granicznebull dwuwymiarowe - obszary
TOPOLOGIA
Przetwarzanie danych z wspoacutełdzieleniem geometrii (lepsza jakość obsługi)
Ograniczenie sposobu dzielenia właściwości geometrycznych-np przyległe poligony takie jak działki mają wspoacutelne krawędzie
Zdefiniowanie oraz implementacja integralności danych-między działkami nie powinno być wolnych przestrzeni
Zapewnienie możliwości wykonywania zapytań przestrzennych- szybka identyfikacja obiektoacutew spełniających zadane kryteria
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE POJĘCIA MODELU WEKTOROWEGO
bull etykieta (label polygon interior point) ndash punkt wskazujący na właściwości danej powierzchni
bull węzeł (node) ndash punkt wspoacutelny obiektoacutew najczęściej odnosi się do przecięć linii lub zakończeń tych odcinkoacutew
bull punkt odniesienia (entity point) ndash punkt lokalizujący ścisłe położenie obiektoacutew punktowych oraz liniowych i powierzchniowych posiadających reprezentację znakową typu punktowego
bull kierunek linii ndash własność odcinak linii porządkująca punkty tworzące obiekt
bull granica obszaru (border boundary) ndash odcinek linii ograniczający dany obiekt powierzchniowy
bull wyspy dziury i enklawy ndash charakterystyczne części obszaroacutew ograniczone całkowicie innymi obiektami i powierzchniowymi (ring)
REPREZENTACJA OBIEKTU LINIOWEGO W TOPOLOGICZNYM MODELU WEKTOROWYM
REPREZENTACJA OBIEKTU POWIERZCHNIOWEGO - POLIGONU W TOPOLOGICZNYM MODELU WEKTOROWYM
ZŁOŻONY MODEL TOPOLOGICZNY
Proces tworzenia złożonego modelu wektorowego jest z definicji bardziej skomplikowany i zajmuje więcej czasu jednakże posiada szereg zaletbull umożliwia zadawanie zapytań i analizę danychbull punkty reprezentują poligony o zerowym polu i długościbull linie (łuki ndash ang arcs) ndash rozpoczynają się i kończą węzłami (ang nodes)bull poligony są zbiorem połączonych linii
Określenie segmentoacutew- odcinkoacutew wspoacutelnych dla poligonoacutew zapewnia mniejszą liczbę linii w bazie danych przyległe poligony nie tworzą wolnych przestrzeni i nie przecinają się bardziej spoacutejny obraz podczas wizualizacji danych
Dane muszą zostać bdquooczyszczonerdquo i bdquozbudowanerdquo przed wykorzystaniem w systemie GIS
Po zbudowaniu modelu wektorowego wszystkie przecięcia tworzą węzły i nie ma wiszących segmentoacutew
WSPOacuteŁRZĘDNE ŁUKOacuteW - LINII
TOPOLOGIA LINII
TOPOLOGIA WĘZŁOacuteW
TOPOLOGIA POLIGONOacuteW
RODZAJE WĘZŁOacuteW
1 NORMAL NODES
W miejscu przecięcia trzech lub więcej linii granicznych
Akceptowane zawsze
2 DANGLING NODES
Na końcu linii granicznych
Akceptowane w obiektach liniowych np drogi rzeki ale nie dla poligonoacutew
3 PSEUDONODES
Między dwoma liniami
W poligonach wyspach zmianie atrybutoacutew
LINIE GRANICZNE ndash LINIE ndash ŁUKI
We wszystkich przecięciach wymagane są węzłyWiszące linie są akceptowane pod warunkiem że nie przekraczają wartości progowej tolerancji Na przykład jeżeli proacuteg tolerancji został ustalony na wartość 5 metroacutew linie o długości mniejszej niż 5 metroacutew są uznawane za linie wiszące (błąd) a linie o długości powyżej 5 metroacutew są prawidłowymi danymi
CZYSZCZENIE DANYCH ndash CLEANING
Usuwanie nieprawidłowych linii i węzłoacutewŁączenie brakujących segmentoacutew (w określonej odległości)Usuwanie zbędnych pseudowęzłoacutewDodanie węzłoacutew do wszystkich przecięćDodanie punktoacutew (Label points) centroidoacutew do poligonoacutew
BUDOWANIE TOPOLOGII ndash TOPOLOGY BUILDING
Nie zmienia położenia obiektoacutew ale polega na ich scalaniu Tworzenie tablicy atrybutoacutewPonowne tworzenie po dodawaniu ndash edycji danych w tym- dodawanie lub usuwanie linii i punktoacutew- dodawanie lub usuwanie danych atrybutoacutew
TIN ndash TRIANGULATED IRREGULAR NETWORKWĘZŁY
PROSTOKĄTY OGRANICZAJĄCE
Jedną z najprostszych metod organizacji danych sprzyjającą szybszemu dostępowi jest wprowadzenie w stosowanych do reprezentacji obiektoacutew strukturach danych pewnych dodatkowych informacji Zadaniem ich jest uproszczone w sensie przestrzennym zobrazowanie obiektoacutew ktoacutere możemy nazwać aproksymacją obiektoacutew właściwych Istotą takiej aproksymacji będzie zachowywanie przybliżonej informacji o obiekcie zapisanej w maksymalnie uproszczony sposoacuteb wygodny do wykonywania analiz
Najpowszechniejszym ze spotykanych uproszczeń jest aproksymacja obiektu minimalnym prostokątem o bokach roacutewnoległych do osi układu wspoacutełrzędnych w ktoacuterym można zmieścić cały rozpatrywanyobiekt Prostokąt taki będziemy nazywali minimalnym prostokątem ograniczającym W literaturze polskiej można się spotkać z określaniem takiego prostokąta bdquopudełkiemrdquo
STRUKTURY DANYCH WEKTOROWYCH
SIEĆ PUNKTOacuteW ndash składa się z uporządkowanego geometrycznie zbioru obiektoacutew punktowych na podstawie ich wzajemnej relacji położenia możliwe jest wnioskowanie o poprawności zapisu danych W przypadku gdy sieć punktoacutew ma postać regularnej siatki (grid) wtedy taka strutura jest roacutewnoważna modelowi rastrowemu ponieważ dziedziczy wszystkie jego własności Przykładem takiej struktury jest min Numeryczny model terenu zapisany jako prostokątna sieć punktoacutew
SIEĆ ndash struktura liniowa utworzona z odcinkoacutew o dowolnym kierunku przecinających się w węzłach Najczęściej przenoszona bezpośrednio ze Świata rzeczywistego (np sieć drogowa kolejowa telekomunikacyna itp) Uwzględnienie kierunku linii w topologicznym modelu wektorowym zapewnia Niezależnie analizę parametroacutew sieci w dwu kierunkach Tego typu struktura może być analizowana za pomocą tzw analiz sieciowych z grupy Analiz przestrzennych min Poszukiwanie optymalnej trasy pomiędzy zadanymi punktami optymalizacja lokalizacji centroacutew sieci oraz wyznaczenieZasięgu obszaru obsługi dla centroacutew w sieci i ich dostępności
DRZEWO ndash zespoacuteł skierowanych obiektoacutew liniowych łączących się w węzłach z każdego węzła może wychodzić tylko jeden obiekt Tego typu sieć Nazywana jest siecią typu hierarchicznego i może na przykład reprezentować powiązanie rzek w systemach rzecznych (rzędowość)
WYPEŁNIENIE POWIERZCHNI ndash (GT ndash poligony) ndash przyległe obszary zachowujące ściśle relacje wzajemnego położenia sąsiedztwa Najczęściej powiązane zależnościami hierarchicznymi a grupy obiektoacutew niższego rzędu tworzą pewne nadklasy o kolejnych stopniach agregacji obiektoacutew Przykładowo jednostki podziału administracyjnego kraju
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
PODZIAŁ MODELI WEKTOROWYCH
Szczegoacutelnymi przypadkami modeli powierzchniowych są teselacje ktoacutere definiowane są jako podział części płaszczyzny na elementarne obszary będące figurami ustalonego kształtu Teselecja w przestrzeni dwuwymiarowej może być więc poroacutewnana do mozaiki ktoacuterej elementy pokrywają całkowicie dany obszar nie nakładając się na siebie W teselacjach wyroacuteżniamy teselacje regularne ktoacutere utworzone są z elementoacutew w kształcie kwadratu troacutejkąta roacutewnobocznego lub sześciokąta foremnego
Z powyższych modeli największe znaczenie mają modele wektorowe nieregularne oraz modele rastrowe (czyli teselacje o elementach kwadratowych)
MODELE POWIERZCHNIOWE
PROSTY MODEL WEKTOROWY
Model ten stanowi bezpośrednie numeryczne przedstawienie obiektoacutew świata rzeczywistego przez odpowiadające im geometryczne obiekty w modelu danych przestrzennych Obiektami prostego modelu wektorowego są obiekty1048766 punktowe1048766 liniowe1048766 powierzchniowe
Położenie obiektoacutew punktowych określa się przez wspoacutełrzędne punktu lokalizującego dany obiekt W przypadku obiektoacutew liniowych i powierzchniowych ktoacutere określane są przez większą liczbę punktoacutew oproacutecz ich wspoacutełrzędnych istotne jest ich odpowiednie uporządkowanie ktoacutere określa kształt obiektu Mając bowiem jedynie grupę punktoacutew bez informacji o ich uporządkowaniu nie jesteśmy w stanie jednoznacznie określić kształtu obiektu
PROSTY MODEL WEKTOROWY SPAGHETTI
W prostym modelu wektorowym bdquospaghettirdquo brak jest informacji o bezpośredniej wzajemnej relacji opisywanych danych W ten sposoacuteb- poszczegoacutelne segmenty mogą nie przylegać dokładnie do siebie- poligony mogą tworzyć otwarte powierzchnie- sąsiadujące poligony mogą przecinać się lub tworzyć wolne przestrzenie- linie (polilinie) mogą być utworzone z wielu oderwanych segmentoacutew
TOPOLOGICZNY MODEL WEKTOROWY
W prostym modelu wektorowym obiekty opisywane są bezpośrednio przez ciągi wspoacutełrzędnych punktoacutew Jest to opis kompletny pod względem geometrycznym ale nie dający bezpośrednio informacji o wzajemnym powiązaniu obiektoacutew między sobą Ewentualne powiązania między obiektami (np sąsiedztwo) mogą być wykrywane jedynie przez zastosowanie geometrii analitycznej Inaczej sytuacja wygląda w topologicznym modelu wektorowym ktoacutery oproacutecz informacji geometrycznych definiujących położenie I kształt obiektoacutew zawiera roacutewnież informacje o wzajemne powiązania między obiektami W topologicznym modelu wektorowym wyodrębnia się trzy rodzaje elementoacutew topologicznych
bull zerowymiarowe - punkty węzłowebull jednowymiarowe - linie granicznebull dwuwymiarowe - obszary
TOPOLOGIA
Przetwarzanie danych z wspoacutełdzieleniem geometrii (lepsza jakość obsługi)
Ograniczenie sposobu dzielenia właściwości geometrycznych-np przyległe poligony takie jak działki mają wspoacutelne krawędzie
Zdefiniowanie oraz implementacja integralności danych-między działkami nie powinno być wolnych przestrzeni
Zapewnienie możliwości wykonywania zapytań przestrzennych- szybka identyfikacja obiektoacutew spełniających zadane kryteria
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE POJĘCIA MODELU WEKTOROWEGO
bull etykieta (label polygon interior point) ndash punkt wskazujący na właściwości danej powierzchni
bull węzeł (node) ndash punkt wspoacutelny obiektoacutew najczęściej odnosi się do przecięć linii lub zakończeń tych odcinkoacutew
bull punkt odniesienia (entity point) ndash punkt lokalizujący ścisłe położenie obiektoacutew punktowych oraz liniowych i powierzchniowych posiadających reprezentację znakową typu punktowego
bull kierunek linii ndash własność odcinak linii porządkująca punkty tworzące obiekt
bull granica obszaru (border boundary) ndash odcinek linii ograniczający dany obiekt powierzchniowy
bull wyspy dziury i enklawy ndash charakterystyczne części obszaroacutew ograniczone całkowicie innymi obiektami i powierzchniowymi (ring)
REPREZENTACJA OBIEKTU LINIOWEGO W TOPOLOGICZNYM MODELU WEKTOROWYM
REPREZENTACJA OBIEKTU POWIERZCHNIOWEGO - POLIGONU W TOPOLOGICZNYM MODELU WEKTOROWYM
ZŁOŻONY MODEL TOPOLOGICZNY
Proces tworzenia złożonego modelu wektorowego jest z definicji bardziej skomplikowany i zajmuje więcej czasu jednakże posiada szereg zaletbull umożliwia zadawanie zapytań i analizę danychbull punkty reprezentują poligony o zerowym polu i długościbull linie (łuki ndash ang arcs) ndash rozpoczynają się i kończą węzłami (ang nodes)bull poligony są zbiorem połączonych linii
Określenie segmentoacutew- odcinkoacutew wspoacutelnych dla poligonoacutew zapewnia mniejszą liczbę linii w bazie danych przyległe poligony nie tworzą wolnych przestrzeni i nie przecinają się bardziej spoacutejny obraz podczas wizualizacji danych
Dane muszą zostać bdquooczyszczonerdquo i bdquozbudowanerdquo przed wykorzystaniem w systemie GIS
Po zbudowaniu modelu wektorowego wszystkie przecięcia tworzą węzły i nie ma wiszących segmentoacutew
WSPOacuteŁRZĘDNE ŁUKOacuteW - LINII
TOPOLOGIA LINII
TOPOLOGIA WĘZŁOacuteW
TOPOLOGIA POLIGONOacuteW
RODZAJE WĘZŁOacuteW
1 NORMAL NODES
W miejscu przecięcia trzech lub więcej linii granicznych
Akceptowane zawsze
2 DANGLING NODES
Na końcu linii granicznych
Akceptowane w obiektach liniowych np drogi rzeki ale nie dla poligonoacutew
3 PSEUDONODES
Między dwoma liniami
W poligonach wyspach zmianie atrybutoacutew
LINIE GRANICZNE ndash LINIE ndash ŁUKI
We wszystkich przecięciach wymagane są węzłyWiszące linie są akceptowane pod warunkiem że nie przekraczają wartości progowej tolerancji Na przykład jeżeli proacuteg tolerancji został ustalony na wartość 5 metroacutew linie o długości mniejszej niż 5 metroacutew są uznawane za linie wiszące (błąd) a linie o długości powyżej 5 metroacutew są prawidłowymi danymi
CZYSZCZENIE DANYCH ndash CLEANING
Usuwanie nieprawidłowych linii i węzłoacutewŁączenie brakujących segmentoacutew (w określonej odległości)Usuwanie zbędnych pseudowęzłoacutewDodanie węzłoacutew do wszystkich przecięćDodanie punktoacutew (Label points) centroidoacutew do poligonoacutew
BUDOWANIE TOPOLOGII ndash TOPOLOGY BUILDING
Nie zmienia położenia obiektoacutew ale polega na ich scalaniu Tworzenie tablicy atrybutoacutewPonowne tworzenie po dodawaniu ndash edycji danych w tym- dodawanie lub usuwanie linii i punktoacutew- dodawanie lub usuwanie danych atrybutoacutew
TIN ndash TRIANGULATED IRREGULAR NETWORKWĘZŁY
PROSTOKĄTY OGRANICZAJĄCE
Jedną z najprostszych metod organizacji danych sprzyjającą szybszemu dostępowi jest wprowadzenie w stosowanych do reprezentacji obiektoacutew strukturach danych pewnych dodatkowych informacji Zadaniem ich jest uproszczone w sensie przestrzennym zobrazowanie obiektoacutew ktoacutere możemy nazwać aproksymacją obiektoacutew właściwych Istotą takiej aproksymacji będzie zachowywanie przybliżonej informacji o obiekcie zapisanej w maksymalnie uproszczony sposoacuteb wygodny do wykonywania analiz
Najpowszechniejszym ze spotykanych uproszczeń jest aproksymacja obiektu minimalnym prostokątem o bokach roacutewnoległych do osi układu wspoacutełrzędnych w ktoacuterym można zmieścić cały rozpatrywanyobiekt Prostokąt taki będziemy nazywali minimalnym prostokątem ograniczającym W literaturze polskiej można się spotkać z określaniem takiego prostokąta bdquopudełkiemrdquo
STRUKTURY DANYCH WEKTOROWYCH
SIEĆ PUNKTOacuteW ndash składa się z uporządkowanego geometrycznie zbioru obiektoacutew punktowych na podstawie ich wzajemnej relacji położenia możliwe jest wnioskowanie o poprawności zapisu danych W przypadku gdy sieć punktoacutew ma postać regularnej siatki (grid) wtedy taka strutura jest roacutewnoważna modelowi rastrowemu ponieważ dziedziczy wszystkie jego własności Przykładem takiej struktury jest min Numeryczny model terenu zapisany jako prostokątna sieć punktoacutew
SIEĆ ndash struktura liniowa utworzona z odcinkoacutew o dowolnym kierunku przecinających się w węzłach Najczęściej przenoszona bezpośrednio ze Świata rzeczywistego (np sieć drogowa kolejowa telekomunikacyna itp) Uwzględnienie kierunku linii w topologicznym modelu wektorowym zapewnia Niezależnie analizę parametroacutew sieci w dwu kierunkach Tego typu struktura może być analizowana za pomocą tzw analiz sieciowych z grupy Analiz przestrzennych min Poszukiwanie optymalnej trasy pomiędzy zadanymi punktami optymalizacja lokalizacji centroacutew sieci oraz wyznaczenieZasięgu obszaru obsługi dla centroacutew w sieci i ich dostępności
DRZEWO ndash zespoacuteł skierowanych obiektoacutew liniowych łączących się w węzłach z każdego węzła może wychodzić tylko jeden obiekt Tego typu sieć Nazywana jest siecią typu hierarchicznego i może na przykład reprezentować powiązanie rzek w systemach rzecznych (rzędowość)
WYPEŁNIENIE POWIERZCHNI ndash (GT ndash poligony) ndash przyległe obszary zachowujące ściśle relacje wzajemnego położenia sąsiedztwa Najczęściej powiązane zależnościami hierarchicznymi a grupy obiektoacutew niższego rzędu tworzą pewne nadklasy o kolejnych stopniach agregacji obiektoacutew Przykładowo jednostki podziału administracyjnego kraju
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
Szczegoacutelnymi przypadkami modeli powierzchniowych są teselacje ktoacutere definiowane są jako podział części płaszczyzny na elementarne obszary będące figurami ustalonego kształtu Teselecja w przestrzeni dwuwymiarowej może być więc poroacutewnana do mozaiki ktoacuterej elementy pokrywają całkowicie dany obszar nie nakładając się na siebie W teselacjach wyroacuteżniamy teselacje regularne ktoacutere utworzone są z elementoacutew w kształcie kwadratu troacutejkąta roacutewnobocznego lub sześciokąta foremnego
Z powyższych modeli największe znaczenie mają modele wektorowe nieregularne oraz modele rastrowe (czyli teselacje o elementach kwadratowych)
MODELE POWIERZCHNIOWE
PROSTY MODEL WEKTOROWY
Model ten stanowi bezpośrednie numeryczne przedstawienie obiektoacutew świata rzeczywistego przez odpowiadające im geometryczne obiekty w modelu danych przestrzennych Obiektami prostego modelu wektorowego są obiekty1048766 punktowe1048766 liniowe1048766 powierzchniowe
Położenie obiektoacutew punktowych określa się przez wspoacutełrzędne punktu lokalizującego dany obiekt W przypadku obiektoacutew liniowych i powierzchniowych ktoacutere określane są przez większą liczbę punktoacutew oproacutecz ich wspoacutełrzędnych istotne jest ich odpowiednie uporządkowanie ktoacutere określa kształt obiektu Mając bowiem jedynie grupę punktoacutew bez informacji o ich uporządkowaniu nie jesteśmy w stanie jednoznacznie określić kształtu obiektu
PROSTY MODEL WEKTOROWY SPAGHETTI
W prostym modelu wektorowym bdquospaghettirdquo brak jest informacji o bezpośredniej wzajemnej relacji opisywanych danych W ten sposoacuteb- poszczegoacutelne segmenty mogą nie przylegać dokładnie do siebie- poligony mogą tworzyć otwarte powierzchnie- sąsiadujące poligony mogą przecinać się lub tworzyć wolne przestrzenie- linie (polilinie) mogą być utworzone z wielu oderwanych segmentoacutew
TOPOLOGICZNY MODEL WEKTOROWY
W prostym modelu wektorowym obiekty opisywane są bezpośrednio przez ciągi wspoacutełrzędnych punktoacutew Jest to opis kompletny pod względem geometrycznym ale nie dający bezpośrednio informacji o wzajemnym powiązaniu obiektoacutew między sobą Ewentualne powiązania między obiektami (np sąsiedztwo) mogą być wykrywane jedynie przez zastosowanie geometrii analitycznej Inaczej sytuacja wygląda w topologicznym modelu wektorowym ktoacutery oproacutecz informacji geometrycznych definiujących położenie I kształt obiektoacutew zawiera roacutewnież informacje o wzajemne powiązania między obiektami W topologicznym modelu wektorowym wyodrębnia się trzy rodzaje elementoacutew topologicznych
bull zerowymiarowe - punkty węzłowebull jednowymiarowe - linie granicznebull dwuwymiarowe - obszary
TOPOLOGIA
Przetwarzanie danych z wspoacutełdzieleniem geometrii (lepsza jakość obsługi)
Ograniczenie sposobu dzielenia właściwości geometrycznych-np przyległe poligony takie jak działki mają wspoacutelne krawędzie
Zdefiniowanie oraz implementacja integralności danych-między działkami nie powinno być wolnych przestrzeni
Zapewnienie możliwości wykonywania zapytań przestrzennych- szybka identyfikacja obiektoacutew spełniających zadane kryteria
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE POJĘCIA MODELU WEKTOROWEGO
bull etykieta (label polygon interior point) ndash punkt wskazujący na właściwości danej powierzchni
bull węzeł (node) ndash punkt wspoacutelny obiektoacutew najczęściej odnosi się do przecięć linii lub zakończeń tych odcinkoacutew
bull punkt odniesienia (entity point) ndash punkt lokalizujący ścisłe położenie obiektoacutew punktowych oraz liniowych i powierzchniowych posiadających reprezentację znakową typu punktowego
bull kierunek linii ndash własność odcinak linii porządkująca punkty tworzące obiekt
bull granica obszaru (border boundary) ndash odcinek linii ograniczający dany obiekt powierzchniowy
bull wyspy dziury i enklawy ndash charakterystyczne części obszaroacutew ograniczone całkowicie innymi obiektami i powierzchniowymi (ring)
REPREZENTACJA OBIEKTU LINIOWEGO W TOPOLOGICZNYM MODELU WEKTOROWYM
REPREZENTACJA OBIEKTU POWIERZCHNIOWEGO - POLIGONU W TOPOLOGICZNYM MODELU WEKTOROWYM
ZŁOŻONY MODEL TOPOLOGICZNY
Proces tworzenia złożonego modelu wektorowego jest z definicji bardziej skomplikowany i zajmuje więcej czasu jednakże posiada szereg zaletbull umożliwia zadawanie zapytań i analizę danychbull punkty reprezentują poligony o zerowym polu i długościbull linie (łuki ndash ang arcs) ndash rozpoczynają się i kończą węzłami (ang nodes)bull poligony są zbiorem połączonych linii
Określenie segmentoacutew- odcinkoacutew wspoacutelnych dla poligonoacutew zapewnia mniejszą liczbę linii w bazie danych przyległe poligony nie tworzą wolnych przestrzeni i nie przecinają się bardziej spoacutejny obraz podczas wizualizacji danych
Dane muszą zostać bdquooczyszczonerdquo i bdquozbudowanerdquo przed wykorzystaniem w systemie GIS
Po zbudowaniu modelu wektorowego wszystkie przecięcia tworzą węzły i nie ma wiszących segmentoacutew
WSPOacuteŁRZĘDNE ŁUKOacuteW - LINII
TOPOLOGIA LINII
TOPOLOGIA WĘZŁOacuteW
TOPOLOGIA POLIGONOacuteW
RODZAJE WĘZŁOacuteW
1 NORMAL NODES
W miejscu przecięcia trzech lub więcej linii granicznych
Akceptowane zawsze
2 DANGLING NODES
Na końcu linii granicznych
Akceptowane w obiektach liniowych np drogi rzeki ale nie dla poligonoacutew
3 PSEUDONODES
Między dwoma liniami
W poligonach wyspach zmianie atrybutoacutew
LINIE GRANICZNE ndash LINIE ndash ŁUKI
We wszystkich przecięciach wymagane są węzłyWiszące linie są akceptowane pod warunkiem że nie przekraczają wartości progowej tolerancji Na przykład jeżeli proacuteg tolerancji został ustalony na wartość 5 metroacutew linie o długości mniejszej niż 5 metroacutew są uznawane za linie wiszące (błąd) a linie o długości powyżej 5 metroacutew są prawidłowymi danymi
CZYSZCZENIE DANYCH ndash CLEANING
Usuwanie nieprawidłowych linii i węzłoacutewŁączenie brakujących segmentoacutew (w określonej odległości)Usuwanie zbędnych pseudowęzłoacutewDodanie węzłoacutew do wszystkich przecięćDodanie punktoacutew (Label points) centroidoacutew do poligonoacutew
BUDOWANIE TOPOLOGII ndash TOPOLOGY BUILDING
Nie zmienia położenia obiektoacutew ale polega na ich scalaniu Tworzenie tablicy atrybutoacutewPonowne tworzenie po dodawaniu ndash edycji danych w tym- dodawanie lub usuwanie linii i punktoacutew- dodawanie lub usuwanie danych atrybutoacutew
TIN ndash TRIANGULATED IRREGULAR NETWORKWĘZŁY
PROSTOKĄTY OGRANICZAJĄCE
Jedną z najprostszych metod organizacji danych sprzyjającą szybszemu dostępowi jest wprowadzenie w stosowanych do reprezentacji obiektoacutew strukturach danych pewnych dodatkowych informacji Zadaniem ich jest uproszczone w sensie przestrzennym zobrazowanie obiektoacutew ktoacutere możemy nazwać aproksymacją obiektoacutew właściwych Istotą takiej aproksymacji będzie zachowywanie przybliżonej informacji o obiekcie zapisanej w maksymalnie uproszczony sposoacuteb wygodny do wykonywania analiz
Najpowszechniejszym ze spotykanych uproszczeń jest aproksymacja obiektu minimalnym prostokątem o bokach roacutewnoległych do osi układu wspoacutełrzędnych w ktoacuterym można zmieścić cały rozpatrywanyobiekt Prostokąt taki będziemy nazywali minimalnym prostokątem ograniczającym W literaturze polskiej można się spotkać z określaniem takiego prostokąta bdquopudełkiemrdquo
STRUKTURY DANYCH WEKTOROWYCH
SIEĆ PUNKTOacuteW ndash składa się z uporządkowanego geometrycznie zbioru obiektoacutew punktowych na podstawie ich wzajemnej relacji położenia możliwe jest wnioskowanie o poprawności zapisu danych W przypadku gdy sieć punktoacutew ma postać regularnej siatki (grid) wtedy taka strutura jest roacutewnoważna modelowi rastrowemu ponieważ dziedziczy wszystkie jego własności Przykładem takiej struktury jest min Numeryczny model terenu zapisany jako prostokątna sieć punktoacutew
SIEĆ ndash struktura liniowa utworzona z odcinkoacutew o dowolnym kierunku przecinających się w węzłach Najczęściej przenoszona bezpośrednio ze Świata rzeczywistego (np sieć drogowa kolejowa telekomunikacyna itp) Uwzględnienie kierunku linii w topologicznym modelu wektorowym zapewnia Niezależnie analizę parametroacutew sieci w dwu kierunkach Tego typu struktura może być analizowana za pomocą tzw analiz sieciowych z grupy Analiz przestrzennych min Poszukiwanie optymalnej trasy pomiędzy zadanymi punktami optymalizacja lokalizacji centroacutew sieci oraz wyznaczenieZasięgu obszaru obsługi dla centroacutew w sieci i ich dostępności
DRZEWO ndash zespoacuteł skierowanych obiektoacutew liniowych łączących się w węzłach z każdego węzła może wychodzić tylko jeden obiekt Tego typu sieć Nazywana jest siecią typu hierarchicznego i może na przykład reprezentować powiązanie rzek w systemach rzecznych (rzędowość)
WYPEŁNIENIE POWIERZCHNI ndash (GT ndash poligony) ndash przyległe obszary zachowujące ściśle relacje wzajemnego położenia sąsiedztwa Najczęściej powiązane zależnościami hierarchicznymi a grupy obiektoacutew niższego rzędu tworzą pewne nadklasy o kolejnych stopniach agregacji obiektoacutew Przykładowo jednostki podziału administracyjnego kraju
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
PROSTY MODEL WEKTOROWY
Model ten stanowi bezpośrednie numeryczne przedstawienie obiektoacutew świata rzeczywistego przez odpowiadające im geometryczne obiekty w modelu danych przestrzennych Obiektami prostego modelu wektorowego są obiekty1048766 punktowe1048766 liniowe1048766 powierzchniowe
Położenie obiektoacutew punktowych określa się przez wspoacutełrzędne punktu lokalizującego dany obiekt W przypadku obiektoacutew liniowych i powierzchniowych ktoacutere określane są przez większą liczbę punktoacutew oproacutecz ich wspoacutełrzędnych istotne jest ich odpowiednie uporządkowanie ktoacutere określa kształt obiektu Mając bowiem jedynie grupę punktoacutew bez informacji o ich uporządkowaniu nie jesteśmy w stanie jednoznacznie określić kształtu obiektu
PROSTY MODEL WEKTOROWY SPAGHETTI
W prostym modelu wektorowym bdquospaghettirdquo brak jest informacji o bezpośredniej wzajemnej relacji opisywanych danych W ten sposoacuteb- poszczegoacutelne segmenty mogą nie przylegać dokładnie do siebie- poligony mogą tworzyć otwarte powierzchnie- sąsiadujące poligony mogą przecinać się lub tworzyć wolne przestrzenie- linie (polilinie) mogą być utworzone z wielu oderwanych segmentoacutew
TOPOLOGICZNY MODEL WEKTOROWY
W prostym modelu wektorowym obiekty opisywane są bezpośrednio przez ciągi wspoacutełrzędnych punktoacutew Jest to opis kompletny pod względem geometrycznym ale nie dający bezpośrednio informacji o wzajemnym powiązaniu obiektoacutew między sobą Ewentualne powiązania między obiektami (np sąsiedztwo) mogą być wykrywane jedynie przez zastosowanie geometrii analitycznej Inaczej sytuacja wygląda w topologicznym modelu wektorowym ktoacutery oproacutecz informacji geometrycznych definiujących położenie I kształt obiektoacutew zawiera roacutewnież informacje o wzajemne powiązania między obiektami W topologicznym modelu wektorowym wyodrębnia się trzy rodzaje elementoacutew topologicznych
bull zerowymiarowe - punkty węzłowebull jednowymiarowe - linie granicznebull dwuwymiarowe - obszary
TOPOLOGIA
Przetwarzanie danych z wspoacutełdzieleniem geometrii (lepsza jakość obsługi)
Ograniczenie sposobu dzielenia właściwości geometrycznych-np przyległe poligony takie jak działki mają wspoacutelne krawędzie
Zdefiniowanie oraz implementacja integralności danych-między działkami nie powinno być wolnych przestrzeni
Zapewnienie możliwości wykonywania zapytań przestrzennych- szybka identyfikacja obiektoacutew spełniających zadane kryteria
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE POJĘCIA MODELU WEKTOROWEGO
bull etykieta (label polygon interior point) ndash punkt wskazujący na właściwości danej powierzchni
bull węzeł (node) ndash punkt wspoacutelny obiektoacutew najczęściej odnosi się do przecięć linii lub zakończeń tych odcinkoacutew
bull punkt odniesienia (entity point) ndash punkt lokalizujący ścisłe położenie obiektoacutew punktowych oraz liniowych i powierzchniowych posiadających reprezentację znakową typu punktowego
bull kierunek linii ndash własność odcinak linii porządkująca punkty tworzące obiekt
bull granica obszaru (border boundary) ndash odcinek linii ograniczający dany obiekt powierzchniowy
bull wyspy dziury i enklawy ndash charakterystyczne części obszaroacutew ograniczone całkowicie innymi obiektami i powierzchniowymi (ring)
REPREZENTACJA OBIEKTU LINIOWEGO W TOPOLOGICZNYM MODELU WEKTOROWYM
REPREZENTACJA OBIEKTU POWIERZCHNIOWEGO - POLIGONU W TOPOLOGICZNYM MODELU WEKTOROWYM
ZŁOŻONY MODEL TOPOLOGICZNY
Proces tworzenia złożonego modelu wektorowego jest z definicji bardziej skomplikowany i zajmuje więcej czasu jednakże posiada szereg zaletbull umożliwia zadawanie zapytań i analizę danychbull punkty reprezentują poligony o zerowym polu i długościbull linie (łuki ndash ang arcs) ndash rozpoczynają się i kończą węzłami (ang nodes)bull poligony są zbiorem połączonych linii
Określenie segmentoacutew- odcinkoacutew wspoacutelnych dla poligonoacutew zapewnia mniejszą liczbę linii w bazie danych przyległe poligony nie tworzą wolnych przestrzeni i nie przecinają się bardziej spoacutejny obraz podczas wizualizacji danych
Dane muszą zostać bdquooczyszczonerdquo i bdquozbudowanerdquo przed wykorzystaniem w systemie GIS
Po zbudowaniu modelu wektorowego wszystkie przecięcia tworzą węzły i nie ma wiszących segmentoacutew
WSPOacuteŁRZĘDNE ŁUKOacuteW - LINII
TOPOLOGIA LINII
TOPOLOGIA WĘZŁOacuteW
TOPOLOGIA POLIGONOacuteW
RODZAJE WĘZŁOacuteW
1 NORMAL NODES
W miejscu przecięcia trzech lub więcej linii granicznych
Akceptowane zawsze
2 DANGLING NODES
Na końcu linii granicznych
Akceptowane w obiektach liniowych np drogi rzeki ale nie dla poligonoacutew
3 PSEUDONODES
Między dwoma liniami
W poligonach wyspach zmianie atrybutoacutew
LINIE GRANICZNE ndash LINIE ndash ŁUKI
We wszystkich przecięciach wymagane są węzłyWiszące linie są akceptowane pod warunkiem że nie przekraczają wartości progowej tolerancji Na przykład jeżeli proacuteg tolerancji został ustalony na wartość 5 metroacutew linie o długości mniejszej niż 5 metroacutew są uznawane za linie wiszące (błąd) a linie o długości powyżej 5 metroacutew są prawidłowymi danymi
CZYSZCZENIE DANYCH ndash CLEANING
Usuwanie nieprawidłowych linii i węzłoacutewŁączenie brakujących segmentoacutew (w określonej odległości)Usuwanie zbędnych pseudowęzłoacutewDodanie węzłoacutew do wszystkich przecięćDodanie punktoacutew (Label points) centroidoacutew do poligonoacutew
BUDOWANIE TOPOLOGII ndash TOPOLOGY BUILDING
Nie zmienia położenia obiektoacutew ale polega na ich scalaniu Tworzenie tablicy atrybutoacutewPonowne tworzenie po dodawaniu ndash edycji danych w tym- dodawanie lub usuwanie linii i punktoacutew- dodawanie lub usuwanie danych atrybutoacutew
TIN ndash TRIANGULATED IRREGULAR NETWORKWĘZŁY
PROSTOKĄTY OGRANICZAJĄCE
Jedną z najprostszych metod organizacji danych sprzyjającą szybszemu dostępowi jest wprowadzenie w stosowanych do reprezentacji obiektoacutew strukturach danych pewnych dodatkowych informacji Zadaniem ich jest uproszczone w sensie przestrzennym zobrazowanie obiektoacutew ktoacutere możemy nazwać aproksymacją obiektoacutew właściwych Istotą takiej aproksymacji będzie zachowywanie przybliżonej informacji o obiekcie zapisanej w maksymalnie uproszczony sposoacuteb wygodny do wykonywania analiz
Najpowszechniejszym ze spotykanych uproszczeń jest aproksymacja obiektu minimalnym prostokątem o bokach roacutewnoległych do osi układu wspoacutełrzędnych w ktoacuterym można zmieścić cały rozpatrywanyobiekt Prostokąt taki będziemy nazywali minimalnym prostokątem ograniczającym W literaturze polskiej można się spotkać z określaniem takiego prostokąta bdquopudełkiemrdquo
STRUKTURY DANYCH WEKTOROWYCH
SIEĆ PUNKTOacuteW ndash składa się z uporządkowanego geometrycznie zbioru obiektoacutew punktowych na podstawie ich wzajemnej relacji położenia możliwe jest wnioskowanie o poprawności zapisu danych W przypadku gdy sieć punktoacutew ma postać regularnej siatki (grid) wtedy taka strutura jest roacutewnoważna modelowi rastrowemu ponieważ dziedziczy wszystkie jego własności Przykładem takiej struktury jest min Numeryczny model terenu zapisany jako prostokątna sieć punktoacutew
SIEĆ ndash struktura liniowa utworzona z odcinkoacutew o dowolnym kierunku przecinających się w węzłach Najczęściej przenoszona bezpośrednio ze Świata rzeczywistego (np sieć drogowa kolejowa telekomunikacyna itp) Uwzględnienie kierunku linii w topologicznym modelu wektorowym zapewnia Niezależnie analizę parametroacutew sieci w dwu kierunkach Tego typu struktura może być analizowana za pomocą tzw analiz sieciowych z grupy Analiz przestrzennych min Poszukiwanie optymalnej trasy pomiędzy zadanymi punktami optymalizacja lokalizacji centroacutew sieci oraz wyznaczenieZasięgu obszaru obsługi dla centroacutew w sieci i ich dostępności
DRZEWO ndash zespoacuteł skierowanych obiektoacutew liniowych łączących się w węzłach z każdego węzła może wychodzić tylko jeden obiekt Tego typu sieć Nazywana jest siecią typu hierarchicznego i może na przykład reprezentować powiązanie rzek w systemach rzecznych (rzędowość)
WYPEŁNIENIE POWIERZCHNI ndash (GT ndash poligony) ndash przyległe obszary zachowujące ściśle relacje wzajemnego położenia sąsiedztwa Najczęściej powiązane zależnościami hierarchicznymi a grupy obiektoacutew niższego rzędu tworzą pewne nadklasy o kolejnych stopniach agregacji obiektoacutew Przykładowo jednostki podziału administracyjnego kraju
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
PROSTY MODEL WEKTOROWY SPAGHETTI
W prostym modelu wektorowym bdquospaghettirdquo brak jest informacji o bezpośredniej wzajemnej relacji opisywanych danych W ten sposoacuteb- poszczegoacutelne segmenty mogą nie przylegać dokładnie do siebie- poligony mogą tworzyć otwarte powierzchnie- sąsiadujące poligony mogą przecinać się lub tworzyć wolne przestrzenie- linie (polilinie) mogą być utworzone z wielu oderwanych segmentoacutew
TOPOLOGICZNY MODEL WEKTOROWY
W prostym modelu wektorowym obiekty opisywane są bezpośrednio przez ciągi wspoacutełrzędnych punktoacutew Jest to opis kompletny pod względem geometrycznym ale nie dający bezpośrednio informacji o wzajemnym powiązaniu obiektoacutew między sobą Ewentualne powiązania między obiektami (np sąsiedztwo) mogą być wykrywane jedynie przez zastosowanie geometrii analitycznej Inaczej sytuacja wygląda w topologicznym modelu wektorowym ktoacutery oproacutecz informacji geometrycznych definiujących położenie I kształt obiektoacutew zawiera roacutewnież informacje o wzajemne powiązania między obiektami W topologicznym modelu wektorowym wyodrębnia się trzy rodzaje elementoacutew topologicznych
bull zerowymiarowe - punkty węzłowebull jednowymiarowe - linie granicznebull dwuwymiarowe - obszary
TOPOLOGIA
Przetwarzanie danych z wspoacutełdzieleniem geometrii (lepsza jakość obsługi)
Ograniczenie sposobu dzielenia właściwości geometrycznych-np przyległe poligony takie jak działki mają wspoacutelne krawędzie
Zdefiniowanie oraz implementacja integralności danych-między działkami nie powinno być wolnych przestrzeni
Zapewnienie możliwości wykonywania zapytań przestrzennych- szybka identyfikacja obiektoacutew spełniających zadane kryteria
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE POJĘCIA MODELU WEKTOROWEGO
bull etykieta (label polygon interior point) ndash punkt wskazujący na właściwości danej powierzchni
bull węzeł (node) ndash punkt wspoacutelny obiektoacutew najczęściej odnosi się do przecięć linii lub zakończeń tych odcinkoacutew
bull punkt odniesienia (entity point) ndash punkt lokalizujący ścisłe położenie obiektoacutew punktowych oraz liniowych i powierzchniowych posiadających reprezentację znakową typu punktowego
bull kierunek linii ndash własność odcinak linii porządkująca punkty tworzące obiekt
bull granica obszaru (border boundary) ndash odcinek linii ograniczający dany obiekt powierzchniowy
bull wyspy dziury i enklawy ndash charakterystyczne części obszaroacutew ograniczone całkowicie innymi obiektami i powierzchniowymi (ring)
REPREZENTACJA OBIEKTU LINIOWEGO W TOPOLOGICZNYM MODELU WEKTOROWYM
REPREZENTACJA OBIEKTU POWIERZCHNIOWEGO - POLIGONU W TOPOLOGICZNYM MODELU WEKTOROWYM
ZŁOŻONY MODEL TOPOLOGICZNY
Proces tworzenia złożonego modelu wektorowego jest z definicji bardziej skomplikowany i zajmuje więcej czasu jednakże posiada szereg zaletbull umożliwia zadawanie zapytań i analizę danychbull punkty reprezentują poligony o zerowym polu i długościbull linie (łuki ndash ang arcs) ndash rozpoczynają się i kończą węzłami (ang nodes)bull poligony są zbiorem połączonych linii
Określenie segmentoacutew- odcinkoacutew wspoacutelnych dla poligonoacutew zapewnia mniejszą liczbę linii w bazie danych przyległe poligony nie tworzą wolnych przestrzeni i nie przecinają się bardziej spoacutejny obraz podczas wizualizacji danych
Dane muszą zostać bdquooczyszczonerdquo i bdquozbudowanerdquo przed wykorzystaniem w systemie GIS
Po zbudowaniu modelu wektorowego wszystkie przecięcia tworzą węzły i nie ma wiszących segmentoacutew
WSPOacuteŁRZĘDNE ŁUKOacuteW - LINII
TOPOLOGIA LINII
TOPOLOGIA WĘZŁOacuteW
TOPOLOGIA POLIGONOacuteW
RODZAJE WĘZŁOacuteW
1 NORMAL NODES
W miejscu przecięcia trzech lub więcej linii granicznych
Akceptowane zawsze
2 DANGLING NODES
Na końcu linii granicznych
Akceptowane w obiektach liniowych np drogi rzeki ale nie dla poligonoacutew
3 PSEUDONODES
Między dwoma liniami
W poligonach wyspach zmianie atrybutoacutew
LINIE GRANICZNE ndash LINIE ndash ŁUKI
We wszystkich przecięciach wymagane są węzłyWiszące linie są akceptowane pod warunkiem że nie przekraczają wartości progowej tolerancji Na przykład jeżeli proacuteg tolerancji został ustalony na wartość 5 metroacutew linie o długości mniejszej niż 5 metroacutew są uznawane za linie wiszące (błąd) a linie o długości powyżej 5 metroacutew są prawidłowymi danymi
CZYSZCZENIE DANYCH ndash CLEANING
Usuwanie nieprawidłowych linii i węzłoacutewŁączenie brakujących segmentoacutew (w określonej odległości)Usuwanie zbędnych pseudowęzłoacutewDodanie węzłoacutew do wszystkich przecięćDodanie punktoacutew (Label points) centroidoacutew do poligonoacutew
BUDOWANIE TOPOLOGII ndash TOPOLOGY BUILDING
Nie zmienia położenia obiektoacutew ale polega na ich scalaniu Tworzenie tablicy atrybutoacutewPonowne tworzenie po dodawaniu ndash edycji danych w tym- dodawanie lub usuwanie linii i punktoacutew- dodawanie lub usuwanie danych atrybutoacutew
TIN ndash TRIANGULATED IRREGULAR NETWORKWĘZŁY
PROSTOKĄTY OGRANICZAJĄCE
Jedną z najprostszych metod organizacji danych sprzyjającą szybszemu dostępowi jest wprowadzenie w stosowanych do reprezentacji obiektoacutew strukturach danych pewnych dodatkowych informacji Zadaniem ich jest uproszczone w sensie przestrzennym zobrazowanie obiektoacutew ktoacutere możemy nazwać aproksymacją obiektoacutew właściwych Istotą takiej aproksymacji będzie zachowywanie przybliżonej informacji o obiekcie zapisanej w maksymalnie uproszczony sposoacuteb wygodny do wykonywania analiz
Najpowszechniejszym ze spotykanych uproszczeń jest aproksymacja obiektu minimalnym prostokątem o bokach roacutewnoległych do osi układu wspoacutełrzędnych w ktoacuterym można zmieścić cały rozpatrywanyobiekt Prostokąt taki będziemy nazywali minimalnym prostokątem ograniczającym W literaturze polskiej można się spotkać z określaniem takiego prostokąta bdquopudełkiemrdquo
STRUKTURY DANYCH WEKTOROWYCH
SIEĆ PUNKTOacuteW ndash składa się z uporządkowanego geometrycznie zbioru obiektoacutew punktowych na podstawie ich wzajemnej relacji położenia możliwe jest wnioskowanie o poprawności zapisu danych W przypadku gdy sieć punktoacutew ma postać regularnej siatki (grid) wtedy taka strutura jest roacutewnoważna modelowi rastrowemu ponieważ dziedziczy wszystkie jego własności Przykładem takiej struktury jest min Numeryczny model terenu zapisany jako prostokątna sieć punktoacutew
SIEĆ ndash struktura liniowa utworzona z odcinkoacutew o dowolnym kierunku przecinających się w węzłach Najczęściej przenoszona bezpośrednio ze Świata rzeczywistego (np sieć drogowa kolejowa telekomunikacyna itp) Uwzględnienie kierunku linii w topologicznym modelu wektorowym zapewnia Niezależnie analizę parametroacutew sieci w dwu kierunkach Tego typu struktura może być analizowana za pomocą tzw analiz sieciowych z grupy Analiz przestrzennych min Poszukiwanie optymalnej trasy pomiędzy zadanymi punktami optymalizacja lokalizacji centroacutew sieci oraz wyznaczenieZasięgu obszaru obsługi dla centroacutew w sieci i ich dostępności
DRZEWO ndash zespoacuteł skierowanych obiektoacutew liniowych łączących się w węzłach z każdego węzła może wychodzić tylko jeden obiekt Tego typu sieć Nazywana jest siecią typu hierarchicznego i może na przykład reprezentować powiązanie rzek w systemach rzecznych (rzędowość)
WYPEŁNIENIE POWIERZCHNI ndash (GT ndash poligony) ndash przyległe obszary zachowujące ściśle relacje wzajemnego położenia sąsiedztwa Najczęściej powiązane zależnościami hierarchicznymi a grupy obiektoacutew niższego rzędu tworzą pewne nadklasy o kolejnych stopniach agregacji obiektoacutew Przykładowo jednostki podziału administracyjnego kraju
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
TOPOLOGICZNY MODEL WEKTOROWY
W prostym modelu wektorowym obiekty opisywane są bezpośrednio przez ciągi wspoacutełrzędnych punktoacutew Jest to opis kompletny pod względem geometrycznym ale nie dający bezpośrednio informacji o wzajemnym powiązaniu obiektoacutew między sobą Ewentualne powiązania między obiektami (np sąsiedztwo) mogą być wykrywane jedynie przez zastosowanie geometrii analitycznej Inaczej sytuacja wygląda w topologicznym modelu wektorowym ktoacutery oproacutecz informacji geometrycznych definiujących położenie I kształt obiektoacutew zawiera roacutewnież informacje o wzajemne powiązania między obiektami W topologicznym modelu wektorowym wyodrębnia się trzy rodzaje elementoacutew topologicznych
bull zerowymiarowe - punkty węzłowebull jednowymiarowe - linie granicznebull dwuwymiarowe - obszary
TOPOLOGIA
Przetwarzanie danych z wspoacutełdzieleniem geometrii (lepsza jakość obsługi)
Ograniczenie sposobu dzielenia właściwości geometrycznych-np przyległe poligony takie jak działki mają wspoacutelne krawędzie
Zdefiniowanie oraz implementacja integralności danych-między działkami nie powinno być wolnych przestrzeni
Zapewnienie możliwości wykonywania zapytań przestrzennych- szybka identyfikacja obiektoacutew spełniających zadane kryteria
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE POJĘCIA MODELU WEKTOROWEGO
bull etykieta (label polygon interior point) ndash punkt wskazujący na właściwości danej powierzchni
bull węzeł (node) ndash punkt wspoacutelny obiektoacutew najczęściej odnosi się do przecięć linii lub zakończeń tych odcinkoacutew
bull punkt odniesienia (entity point) ndash punkt lokalizujący ścisłe położenie obiektoacutew punktowych oraz liniowych i powierzchniowych posiadających reprezentację znakową typu punktowego
bull kierunek linii ndash własność odcinak linii porządkująca punkty tworzące obiekt
bull granica obszaru (border boundary) ndash odcinek linii ograniczający dany obiekt powierzchniowy
bull wyspy dziury i enklawy ndash charakterystyczne części obszaroacutew ograniczone całkowicie innymi obiektami i powierzchniowymi (ring)
REPREZENTACJA OBIEKTU LINIOWEGO W TOPOLOGICZNYM MODELU WEKTOROWYM
REPREZENTACJA OBIEKTU POWIERZCHNIOWEGO - POLIGONU W TOPOLOGICZNYM MODELU WEKTOROWYM
ZŁOŻONY MODEL TOPOLOGICZNY
Proces tworzenia złożonego modelu wektorowego jest z definicji bardziej skomplikowany i zajmuje więcej czasu jednakże posiada szereg zaletbull umożliwia zadawanie zapytań i analizę danychbull punkty reprezentują poligony o zerowym polu i długościbull linie (łuki ndash ang arcs) ndash rozpoczynają się i kończą węzłami (ang nodes)bull poligony są zbiorem połączonych linii
Określenie segmentoacutew- odcinkoacutew wspoacutelnych dla poligonoacutew zapewnia mniejszą liczbę linii w bazie danych przyległe poligony nie tworzą wolnych przestrzeni i nie przecinają się bardziej spoacutejny obraz podczas wizualizacji danych
Dane muszą zostać bdquooczyszczonerdquo i bdquozbudowanerdquo przed wykorzystaniem w systemie GIS
Po zbudowaniu modelu wektorowego wszystkie przecięcia tworzą węzły i nie ma wiszących segmentoacutew
WSPOacuteŁRZĘDNE ŁUKOacuteW - LINII
TOPOLOGIA LINII
TOPOLOGIA WĘZŁOacuteW
TOPOLOGIA POLIGONOacuteW
RODZAJE WĘZŁOacuteW
1 NORMAL NODES
W miejscu przecięcia trzech lub więcej linii granicznych
Akceptowane zawsze
2 DANGLING NODES
Na końcu linii granicznych
Akceptowane w obiektach liniowych np drogi rzeki ale nie dla poligonoacutew
3 PSEUDONODES
Między dwoma liniami
W poligonach wyspach zmianie atrybutoacutew
LINIE GRANICZNE ndash LINIE ndash ŁUKI
We wszystkich przecięciach wymagane są węzłyWiszące linie są akceptowane pod warunkiem że nie przekraczają wartości progowej tolerancji Na przykład jeżeli proacuteg tolerancji został ustalony na wartość 5 metroacutew linie o długości mniejszej niż 5 metroacutew są uznawane za linie wiszące (błąd) a linie o długości powyżej 5 metroacutew są prawidłowymi danymi
CZYSZCZENIE DANYCH ndash CLEANING
Usuwanie nieprawidłowych linii i węzłoacutewŁączenie brakujących segmentoacutew (w określonej odległości)Usuwanie zbędnych pseudowęzłoacutewDodanie węzłoacutew do wszystkich przecięćDodanie punktoacutew (Label points) centroidoacutew do poligonoacutew
BUDOWANIE TOPOLOGII ndash TOPOLOGY BUILDING
Nie zmienia położenia obiektoacutew ale polega na ich scalaniu Tworzenie tablicy atrybutoacutewPonowne tworzenie po dodawaniu ndash edycji danych w tym- dodawanie lub usuwanie linii i punktoacutew- dodawanie lub usuwanie danych atrybutoacutew
TIN ndash TRIANGULATED IRREGULAR NETWORKWĘZŁY
PROSTOKĄTY OGRANICZAJĄCE
Jedną z najprostszych metod organizacji danych sprzyjającą szybszemu dostępowi jest wprowadzenie w stosowanych do reprezentacji obiektoacutew strukturach danych pewnych dodatkowych informacji Zadaniem ich jest uproszczone w sensie przestrzennym zobrazowanie obiektoacutew ktoacutere możemy nazwać aproksymacją obiektoacutew właściwych Istotą takiej aproksymacji będzie zachowywanie przybliżonej informacji o obiekcie zapisanej w maksymalnie uproszczony sposoacuteb wygodny do wykonywania analiz
Najpowszechniejszym ze spotykanych uproszczeń jest aproksymacja obiektu minimalnym prostokątem o bokach roacutewnoległych do osi układu wspoacutełrzędnych w ktoacuterym można zmieścić cały rozpatrywanyobiekt Prostokąt taki będziemy nazywali minimalnym prostokątem ograniczającym W literaturze polskiej można się spotkać z określaniem takiego prostokąta bdquopudełkiemrdquo
STRUKTURY DANYCH WEKTOROWYCH
SIEĆ PUNKTOacuteW ndash składa się z uporządkowanego geometrycznie zbioru obiektoacutew punktowych na podstawie ich wzajemnej relacji położenia możliwe jest wnioskowanie o poprawności zapisu danych W przypadku gdy sieć punktoacutew ma postać regularnej siatki (grid) wtedy taka strutura jest roacutewnoważna modelowi rastrowemu ponieważ dziedziczy wszystkie jego własności Przykładem takiej struktury jest min Numeryczny model terenu zapisany jako prostokątna sieć punktoacutew
SIEĆ ndash struktura liniowa utworzona z odcinkoacutew o dowolnym kierunku przecinających się w węzłach Najczęściej przenoszona bezpośrednio ze Świata rzeczywistego (np sieć drogowa kolejowa telekomunikacyna itp) Uwzględnienie kierunku linii w topologicznym modelu wektorowym zapewnia Niezależnie analizę parametroacutew sieci w dwu kierunkach Tego typu struktura może być analizowana za pomocą tzw analiz sieciowych z grupy Analiz przestrzennych min Poszukiwanie optymalnej trasy pomiędzy zadanymi punktami optymalizacja lokalizacji centroacutew sieci oraz wyznaczenieZasięgu obszaru obsługi dla centroacutew w sieci i ich dostępności
DRZEWO ndash zespoacuteł skierowanych obiektoacutew liniowych łączących się w węzłach z każdego węzła może wychodzić tylko jeden obiekt Tego typu sieć Nazywana jest siecią typu hierarchicznego i może na przykład reprezentować powiązanie rzek w systemach rzecznych (rzędowość)
WYPEŁNIENIE POWIERZCHNI ndash (GT ndash poligony) ndash przyległe obszary zachowujące ściśle relacje wzajemnego położenia sąsiedztwa Najczęściej powiązane zależnościami hierarchicznymi a grupy obiektoacutew niższego rzędu tworzą pewne nadklasy o kolejnych stopniach agregacji obiektoacutew Przykładowo jednostki podziału administracyjnego kraju
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
TOPOLOGIA
Przetwarzanie danych z wspoacutełdzieleniem geometrii (lepsza jakość obsługi)
Ograniczenie sposobu dzielenia właściwości geometrycznych-np przyległe poligony takie jak działki mają wspoacutelne krawędzie
Zdefiniowanie oraz implementacja integralności danych-między działkami nie powinno być wolnych przestrzeni
Zapewnienie możliwości wykonywania zapytań przestrzennych- szybka identyfikacja obiektoacutew spełniających zadane kryteria
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE POJĘCIA MODELU WEKTOROWEGO
bull etykieta (label polygon interior point) ndash punkt wskazujący na właściwości danej powierzchni
bull węzeł (node) ndash punkt wspoacutelny obiektoacutew najczęściej odnosi się do przecięć linii lub zakończeń tych odcinkoacutew
bull punkt odniesienia (entity point) ndash punkt lokalizujący ścisłe położenie obiektoacutew punktowych oraz liniowych i powierzchniowych posiadających reprezentację znakową typu punktowego
bull kierunek linii ndash własność odcinak linii porządkująca punkty tworzące obiekt
bull granica obszaru (border boundary) ndash odcinek linii ograniczający dany obiekt powierzchniowy
bull wyspy dziury i enklawy ndash charakterystyczne części obszaroacutew ograniczone całkowicie innymi obiektami i powierzchniowymi (ring)
REPREZENTACJA OBIEKTU LINIOWEGO W TOPOLOGICZNYM MODELU WEKTOROWYM
REPREZENTACJA OBIEKTU POWIERZCHNIOWEGO - POLIGONU W TOPOLOGICZNYM MODELU WEKTOROWYM
ZŁOŻONY MODEL TOPOLOGICZNY
Proces tworzenia złożonego modelu wektorowego jest z definicji bardziej skomplikowany i zajmuje więcej czasu jednakże posiada szereg zaletbull umożliwia zadawanie zapytań i analizę danychbull punkty reprezentują poligony o zerowym polu i długościbull linie (łuki ndash ang arcs) ndash rozpoczynają się i kończą węzłami (ang nodes)bull poligony są zbiorem połączonych linii
Określenie segmentoacutew- odcinkoacutew wspoacutelnych dla poligonoacutew zapewnia mniejszą liczbę linii w bazie danych przyległe poligony nie tworzą wolnych przestrzeni i nie przecinają się bardziej spoacutejny obraz podczas wizualizacji danych
Dane muszą zostać bdquooczyszczonerdquo i bdquozbudowanerdquo przed wykorzystaniem w systemie GIS
Po zbudowaniu modelu wektorowego wszystkie przecięcia tworzą węzły i nie ma wiszących segmentoacutew
WSPOacuteŁRZĘDNE ŁUKOacuteW - LINII
TOPOLOGIA LINII
TOPOLOGIA WĘZŁOacuteW
TOPOLOGIA POLIGONOacuteW
RODZAJE WĘZŁOacuteW
1 NORMAL NODES
W miejscu przecięcia trzech lub więcej linii granicznych
Akceptowane zawsze
2 DANGLING NODES
Na końcu linii granicznych
Akceptowane w obiektach liniowych np drogi rzeki ale nie dla poligonoacutew
3 PSEUDONODES
Między dwoma liniami
W poligonach wyspach zmianie atrybutoacutew
LINIE GRANICZNE ndash LINIE ndash ŁUKI
We wszystkich przecięciach wymagane są węzłyWiszące linie są akceptowane pod warunkiem że nie przekraczają wartości progowej tolerancji Na przykład jeżeli proacuteg tolerancji został ustalony na wartość 5 metroacutew linie o długości mniejszej niż 5 metroacutew są uznawane za linie wiszące (błąd) a linie o długości powyżej 5 metroacutew są prawidłowymi danymi
CZYSZCZENIE DANYCH ndash CLEANING
Usuwanie nieprawidłowych linii i węzłoacutewŁączenie brakujących segmentoacutew (w określonej odległości)Usuwanie zbędnych pseudowęzłoacutewDodanie węzłoacutew do wszystkich przecięćDodanie punktoacutew (Label points) centroidoacutew do poligonoacutew
BUDOWANIE TOPOLOGII ndash TOPOLOGY BUILDING
Nie zmienia położenia obiektoacutew ale polega na ich scalaniu Tworzenie tablicy atrybutoacutewPonowne tworzenie po dodawaniu ndash edycji danych w tym- dodawanie lub usuwanie linii i punktoacutew- dodawanie lub usuwanie danych atrybutoacutew
TIN ndash TRIANGULATED IRREGULAR NETWORKWĘZŁY
PROSTOKĄTY OGRANICZAJĄCE
Jedną z najprostszych metod organizacji danych sprzyjającą szybszemu dostępowi jest wprowadzenie w stosowanych do reprezentacji obiektoacutew strukturach danych pewnych dodatkowych informacji Zadaniem ich jest uproszczone w sensie przestrzennym zobrazowanie obiektoacutew ktoacutere możemy nazwać aproksymacją obiektoacutew właściwych Istotą takiej aproksymacji będzie zachowywanie przybliżonej informacji o obiekcie zapisanej w maksymalnie uproszczony sposoacuteb wygodny do wykonywania analiz
Najpowszechniejszym ze spotykanych uproszczeń jest aproksymacja obiektu minimalnym prostokątem o bokach roacutewnoległych do osi układu wspoacutełrzędnych w ktoacuterym można zmieścić cały rozpatrywanyobiekt Prostokąt taki będziemy nazywali minimalnym prostokątem ograniczającym W literaturze polskiej można się spotkać z określaniem takiego prostokąta bdquopudełkiemrdquo
STRUKTURY DANYCH WEKTOROWYCH
SIEĆ PUNKTOacuteW ndash składa się z uporządkowanego geometrycznie zbioru obiektoacutew punktowych na podstawie ich wzajemnej relacji położenia możliwe jest wnioskowanie o poprawności zapisu danych W przypadku gdy sieć punktoacutew ma postać regularnej siatki (grid) wtedy taka strutura jest roacutewnoważna modelowi rastrowemu ponieważ dziedziczy wszystkie jego własności Przykładem takiej struktury jest min Numeryczny model terenu zapisany jako prostokątna sieć punktoacutew
SIEĆ ndash struktura liniowa utworzona z odcinkoacutew o dowolnym kierunku przecinających się w węzłach Najczęściej przenoszona bezpośrednio ze Świata rzeczywistego (np sieć drogowa kolejowa telekomunikacyna itp) Uwzględnienie kierunku linii w topologicznym modelu wektorowym zapewnia Niezależnie analizę parametroacutew sieci w dwu kierunkach Tego typu struktura może być analizowana za pomocą tzw analiz sieciowych z grupy Analiz przestrzennych min Poszukiwanie optymalnej trasy pomiędzy zadanymi punktami optymalizacja lokalizacji centroacutew sieci oraz wyznaczenieZasięgu obszaru obsługi dla centroacutew w sieci i ich dostępności
DRZEWO ndash zespoacuteł skierowanych obiektoacutew liniowych łączących się w węzłach z każdego węzła może wychodzić tylko jeden obiekt Tego typu sieć Nazywana jest siecią typu hierarchicznego i może na przykład reprezentować powiązanie rzek w systemach rzecznych (rzędowość)
WYPEŁNIENIE POWIERZCHNI ndash (GT ndash poligony) ndash przyległe obszary zachowujące ściśle relacje wzajemnego położenia sąsiedztwa Najczęściej powiązane zależnościami hierarchicznymi a grupy obiektoacutew niższego rzędu tworzą pewne nadklasy o kolejnych stopniach agregacji obiektoacutew Przykładowo jednostki podziału administracyjnego kraju
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE POJĘCIA MODELU WEKTOROWEGO
bull etykieta (label polygon interior point) ndash punkt wskazujący na właściwości danej powierzchni
bull węzeł (node) ndash punkt wspoacutelny obiektoacutew najczęściej odnosi się do przecięć linii lub zakończeń tych odcinkoacutew
bull punkt odniesienia (entity point) ndash punkt lokalizujący ścisłe położenie obiektoacutew punktowych oraz liniowych i powierzchniowych posiadających reprezentację znakową typu punktowego
bull kierunek linii ndash własność odcinak linii porządkująca punkty tworzące obiekt
bull granica obszaru (border boundary) ndash odcinek linii ograniczający dany obiekt powierzchniowy
bull wyspy dziury i enklawy ndash charakterystyczne części obszaroacutew ograniczone całkowicie innymi obiektami i powierzchniowymi (ring)
REPREZENTACJA OBIEKTU LINIOWEGO W TOPOLOGICZNYM MODELU WEKTOROWYM
REPREZENTACJA OBIEKTU POWIERZCHNIOWEGO - POLIGONU W TOPOLOGICZNYM MODELU WEKTOROWYM
ZŁOŻONY MODEL TOPOLOGICZNY
Proces tworzenia złożonego modelu wektorowego jest z definicji bardziej skomplikowany i zajmuje więcej czasu jednakże posiada szereg zaletbull umożliwia zadawanie zapytań i analizę danychbull punkty reprezentują poligony o zerowym polu i długościbull linie (łuki ndash ang arcs) ndash rozpoczynają się i kończą węzłami (ang nodes)bull poligony są zbiorem połączonych linii
Określenie segmentoacutew- odcinkoacutew wspoacutelnych dla poligonoacutew zapewnia mniejszą liczbę linii w bazie danych przyległe poligony nie tworzą wolnych przestrzeni i nie przecinają się bardziej spoacutejny obraz podczas wizualizacji danych
Dane muszą zostać bdquooczyszczonerdquo i bdquozbudowanerdquo przed wykorzystaniem w systemie GIS
Po zbudowaniu modelu wektorowego wszystkie przecięcia tworzą węzły i nie ma wiszących segmentoacutew
WSPOacuteŁRZĘDNE ŁUKOacuteW - LINII
TOPOLOGIA LINII
TOPOLOGIA WĘZŁOacuteW
TOPOLOGIA POLIGONOacuteW
RODZAJE WĘZŁOacuteW
1 NORMAL NODES
W miejscu przecięcia trzech lub więcej linii granicznych
Akceptowane zawsze
2 DANGLING NODES
Na końcu linii granicznych
Akceptowane w obiektach liniowych np drogi rzeki ale nie dla poligonoacutew
3 PSEUDONODES
Między dwoma liniami
W poligonach wyspach zmianie atrybutoacutew
LINIE GRANICZNE ndash LINIE ndash ŁUKI
We wszystkich przecięciach wymagane są węzłyWiszące linie są akceptowane pod warunkiem że nie przekraczają wartości progowej tolerancji Na przykład jeżeli proacuteg tolerancji został ustalony na wartość 5 metroacutew linie o długości mniejszej niż 5 metroacutew są uznawane za linie wiszące (błąd) a linie o długości powyżej 5 metroacutew są prawidłowymi danymi
CZYSZCZENIE DANYCH ndash CLEANING
Usuwanie nieprawidłowych linii i węzłoacutewŁączenie brakujących segmentoacutew (w określonej odległości)Usuwanie zbędnych pseudowęzłoacutewDodanie węzłoacutew do wszystkich przecięćDodanie punktoacutew (Label points) centroidoacutew do poligonoacutew
BUDOWANIE TOPOLOGII ndash TOPOLOGY BUILDING
Nie zmienia położenia obiektoacutew ale polega na ich scalaniu Tworzenie tablicy atrybutoacutewPonowne tworzenie po dodawaniu ndash edycji danych w tym- dodawanie lub usuwanie linii i punktoacutew- dodawanie lub usuwanie danych atrybutoacutew
TIN ndash TRIANGULATED IRREGULAR NETWORKWĘZŁY
PROSTOKĄTY OGRANICZAJĄCE
Jedną z najprostszych metod organizacji danych sprzyjającą szybszemu dostępowi jest wprowadzenie w stosowanych do reprezentacji obiektoacutew strukturach danych pewnych dodatkowych informacji Zadaniem ich jest uproszczone w sensie przestrzennym zobrazowanie obiektoacutew ktoacutere możemy nazwać aproksymacją obiektoacutew właściwych Istotą takiej aproksymacji będzie zachowywanie przybliżonej informacji o obiekcie zapisanej w maksymalnie uproszczony sposoacuteb wygodny do wykonywania analiz
Najpowszechniejszym ze spotykanych uproszczeń jest aproksymacja obiektu minimalnym prostokątem o bokach roacutewnoległych do osi układu wspoacutełrzędnych w ktoacuterym można zmieścić cały rozpatrywanyobiekt Prostokąt taki będziemy nazywali minimalnym prostokątem ograniczającym W literaturze polskiej można się spotkać z określaniem takiego prostokąta bdquopudełkiemrdquo
STRUKTURY DANYCH WEKTOROWYCH
SIEĆ PUNKTOacuteW ndash składa się z uporządkowanego geometrycznie zbioru obiektoacutew punktowych na podstawie ich wzajemnej relacji położenia możliwe jest wnioskowanie o poprawności zapisu danych W przypadku gdy sieć punktoacutew ma postać regularnej siatki (grid) wtedy taka strutura jest roacutewnoważna modelowi rastrowemu ponieważ dziedziczy wszystkie jego własności Przykładem takiej struktury jest min Numeryczny model terenu zapisany jako prostokątna sieć punktoacutew
SIEĆ ndash struktura liniowa utworzona z odcinkoacutew o dowolnym kierunku przecinających się w węzłach Najczęściej przenoszona bezpośrednio ze Świata rzeczywistego (np sieć drogowa kolejowa telekomunikacyna itp) Uwzględnienie kierunku linii w topologicznym modelu wektorowym zapewnia Niezależnie analizę parametroacutew sieci w dwu kierunkach Tego typu struktura może być analizowana za pomocą tzw analiz sieciowych z grupy Analiz przestrzennych min Poszukiwanie optymalnej trasy pomiędzy zadanymi punktami optymalizacja lokalizacji centroacutew sieci oraz wyznaczenieZasięgu obszaru obsługi dla centroacutew w sieci i ich dostępności
DRZEWO ndash zespoacuteł skierowanych obiektoacutew liniowych łączących się w węzłach z każdego węzła może wychodzić tylko jeden obiekt Tego typu sieć Nazywana jest siecią typu hierarchicznego i może na przykład reprezentować powiązanie rzek w systemach rzecznych (rzędowość)
WYPEŁNIENIE POWIERZCHNI ndash (GT ndash poligony) ndash przyległe obszary zachowujące ściśle relacje wzajemnego położenia sąsiedztwa Najczęściej powiązane zależnościami hierarchicznymi a grupy obiektoacutew niższego rzędu tworzą pewne nadklasy o kolejnych stopniach agregacji obiektoacutew Przykładowo jednostki podziału administracyjnego kraju
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
PODSTAWOWE SKŁADOWE WEKTOROWE
PODSTAWOWE POJĘCIA MODELU WEKTOROWEGO
bull etykieta (label polygon interior point) ndash punkt wskazujący na właściwości danej powierzchni
bull węzeł (node) ndash punkt wspoacutelny obiektoacutew najczęściej odnosi się do przecięć linii lub zakończeń tych odcinkoacutew
bull punkt odniesienia (entity point) ndash punkt lokalizujący ścisłe położenie obiektoacutew punktowych oraz liniowych i powierzchniowych posiadających reprezentację znakową typu punktowego
bull kierunek linii ndash własność odcinak linii porządkująca punkty tworzące obiekt
bull granica obszaru (border boundary) ndash odcinek linii ograniczający dany obiekt powierzchniowy
bull wyspy dziury i enklawy ndash charakterystyczne części obszaroacutew ograniczone całkowicie innymi obiektami i powierzchniowymi (ring)
REPREZENTACJA OBIEKTU LINIOWEGO W TOPOLOGICZNYM MODELU WEKTOROWYM
REPREZENTACJA OBIEKTU POWIERZCHNIOWEGO - POLIGONU W TOPOLOGICZNYM MODELU WEKTOROWYM
ZŁOŻONY MODEL TOPOLOGICZNY
Proces tworzenia złożonego modelu wektorowego jest z definicji bardziej skomplikowany i zajmuje więcej czasu jednakże posiada szereg zaletbull umożliwia zadawanie zapytań i analizę danychbull punkty reprezentują poligony o zerowym polu i długościbull linie (łuki ndash ang arcs) ndash rozpoczynają się i kończą węzłami (ang nodes)bull poligony są zbiorem połączonych linii
Określenie segmentoacutew- odcinkoacutew wspoacutelnych dla poligonoacutew zapewnia mniejszą liczbę linii w bazie danych przyległe poligony nie tworzą wolnych przestrzeni i nie przecinają się bardziej spoacutejny obraz podczas wizualizacji danych
Dane muszą zostać bdquooczyszczonerdquo i bdquozbudowanerdquo przed wykorzystaniem w systemie GIS
Po zbudowaniu modelu wektorowego wszystkie przecięcia tworzą węzły i nie ma wiszących segmentoacutew
WSPOacuteŁRZĘDNE ŁUKOacuteW - LINII
TOPOLOGIA LINII
TOPOLOGIA WĘZŁOacuteW
TOPOLOGIA POLIGONOacuteW
RODZAJE WĘZŁOacuteW
1 NORMAL NODES
W miejscu przecięcia trzech lub więcej linii granicznych
Akceptowane zawsze
2 DANGLING NODES
Na końcu linii granicznych
Akceptowane w obiektach liniowych np drogi rzeki ale nie dla poligonoacutew
3 PSEUDONODES
Między dwoma liniami
W poligonach wyspach zmianie atrybutoacutew
LINIE GRANICZNE ndash LINIE ndash ŁUKI
We wszystkich przecięciach wymagane są węzłyWiszące linie są akceptowane pod warunkiem że nie przekraczają wartości progowej tolerancji Na przykład jeżeli proacuteg tolerancji został ustalony na wartość 5 metroacutew linie o długości mniejszej niż 5 metroacutew są uznawane za linie wiszące (błąd) a linie o długości powyżej 5 metroacutew są prawidłowymi danymi
CZYSZCZENIE DANYCH ndash CLEANING
Usuwanie nieprawidłowych linii i węzłoacutewŁączenie brakujących segmentoacutew (w określonej odległości)Usuwanie zbędnych pseudowęzłoacutewDodanie węzłoacutew do wszystkich przecięćDodanie punktoacutew (Label points) centroidoacutew do poligonoacutew
BUDOWANIE TOPOLOGII ndash TOPOLOGY BUILDING
Nie zmienia położenia obiektoacutew ale polega na ich scalaniu Tworzenie tablicy atrybutoacutewPonowne tworzenie po dodawaniu ndash edycji danych w tym- dodawanie lub usuwanie linii i punktoacutew- dodawanie lub usuwanie danych atrybutoacutew
TIN ndash TRIANGULATED IRREGULAR NETWORKWĘZŁY
PROSTOKĄTY OGRANICZAJĄCE
Jedną z najprostszych metod organizacji danych sprzyjającą szybszemu dostępowi jest wprowadzenie w stosowanych do reprezentacji obiektoacutew strukturach danych pewnych dodatkowych informacji Zadaniem ich jest uproszczone w sensie przestrzennym zobrazowanie obiektoacutew ktoacutere możemy nazwać aproksymacją obiektoacutew właściwych Istotą takiej aproksymacji będzie zachowywanie przybliżonej informacji o obiekcie zapisanej w maksymalnie uproszczony sposoacuteb wygodny do wykonywania analiz
Najpowszechniejszym ze spotykanych uproszczeń jest aproksymacja obiektu minimalnym prostokątem o bokach roacutewnoległych do osi układu wspoacutełrzędnych w ktoacuterym można zmieścić cały rozpatrywanyobiekt Prostokąt taki będziemy nazywali minimalnym prostokątem ograniczającym W literaturze polskiej można się spotkać z określaniem takiego prostokąta bdquopudełkiemrdquo
STRUKTURY DANYCH WEKTOROWYCH
SIEĆ PUNKTOacuteW ndash składa się z uporządkowanego geometrycznie zbioru obiektoacutew punktowych na podstawie ich wzajemnej relacji położenia możliwe jest wnioskowanie o poprawności zapisu danych W przypadku gdy sieć punktoacutew ma postać regularnej siatki (grid) wtedy taka strutura jest roacutewnoważna modelowi rastrowemu ponieważ dziedziczy wszystkie jego własności Przykładem takiej struktury jest min Numeryczny model terenu zapisany jako prostokątna sieć punktoacutew
SIEĆ ndash struktura liniowa utworzona z odcinkoacutew o dowolnym kierunku przecinających się w węzłach Najczęściej przenoszona bezpośrednio ze Świata rzeczywistego (np sieć drogowa kolejowa telekomunikacyna itp) Uwzględnienie kierunku linii w topologicznym modelu wektorowym zapewnia Niezależnie analizę parametroacutew sieci w dwu kierunkach Tego typu struktura może być analizowana za pomocą tzw analiz sieciowych z grupy Analiz przestrzennych min Poszukiwanie optymalnej trasy pomiędzy zadanymi punktami optymalizacja lokalizacji centroacutew sieci oraz wyznaczenieZasięgu obszaru obsługi dla centroacutew w sieci i ich dostępności
DRZEWO ndash zespoacuteł skierowanych obiektoacutew liniowych łączących się w węzłach z każdego węzła może wychodzić tylko jeden obiekt Tego typu sieć Nazywana jest siecią typu hierarchicznego i może na przykład reprezentować powiązanie rzek w systemach rzecznych (rzędowość)
WYPEŁNIENIE POWIERZCHNI ndash (GT ndash poligony) ndash przyległe obszary zachowujące ściśle relacje wzajemnego położenia sąsiedztwa Najczęściej powiązane zależnościami hierarchicznymi a grupy obiektoacutew niższego rzędu tworzą pewne nadklasy o kolejnych stopniach agregacji obiektoacutew Przykładowo jednostki podziału administracyjnego kraju
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
PODSTAWOWE POJĘCIA MODELU WEKTOROWEGO
bull etykieta (label polygon interior point) ndash punkt wskazujący na właściwości danej powierzchni
bull węzeł (node) ndash punkt wspoacutelny obiektoacutew najczęściej odnosi się do przecięć linii lub zakończeń tych odcinkoacutew
bull punkt odniesienia (entity point) ndash punkt lokalizujący ścisłe położenie obiektoacutew punktowych oraz liniowych i powierzchniowych posiadających reprezentację znakową typu punktowego
bull kierunek linii ndash własność odcinak linii porządkująca punkty tworzące obiekt
bull granica obszaru (border boundary) ndash odcinek linii ograniczający dany obiekt powierzchniowy
bull wyspy dziury i enklawy ndash charakterystyczne części obszaroacutew ograniczone całkowicie innymi obiektami i powierzchniowymi (ring)
REPREZENTACJA OBIEKTU LINIOWEGO W TOPOLOGICZNYM MODELU WEKTOROWYM
REPREZENTACJA OBIEKTU POWIERZCHNIOWEGO - POLIGONU W TOPOLOGICZNYM MODELU WEKTOROWYM
ZŁOŻONY MODEL TOPOLOGICZNY
Proces tworzenia złożonego modelu wektorowego jest z definicji bardziej skomplikowany i zajmuje więcej czasu jednakże posiada szereg zaletbull umożliwia zadawanie zapytań i analizę danychbull punkty reprezentują poligony o zerowym polu i długościbull linie (łuki ndash ang arcs) ndash rozpoczynają się i kończą węzłami (ang nodes)bull poligony są zbiorem połączonych linii
Określenie segmentoacutew- odcinkoacutew wspoacutelnych dla poligonoacutew zapewnia mniejszą liczbę linii w bazie danych przyległe poligony nie tworzą wolnych przestrzeni i nie przecinają się bardziej spoacutejny obraz podczas wizualizacji danych
Dane muszą zostać bdquooczyszczonerdquo i bdquozbudowanerdquo przed wykorzystaniem w systemie GIS
Po zbudowaniu modelu wektorowego wszystkie przecięcia tworzą węzły i nie ma wiszących segmentoacutew
WSPOacuteŁRZĘDNE ŁUKOacuteW - LINII
TOPOLOGIA LINII
TOPOLOGIA WĘZŁOacuteW
TOPOLOGIA POLIGONOacuteW
RODZAJE WĘZŁOacuteW
1 NORMAL NODES
W miejscu przecięcia trzech lub więcej linii granicznych
Akceptowane zawsze
2 DANGLING NODES
Na końcu linii granicznych
Akceptowane w obiektach liniowych np drogi rzeki ale nie dla poligonoacutew
3 PSEUDONODES
Między dwoma liniami
W poligonach wyspach zmianie atrybutoacutew
LINIE GRANICZNE ndash LINIE ndash ŁUKI
We wszystkich przecięciach wymagane są węzłyWiszące linie są akceptowane pod warunkiem że nie przekraczają wartości progowej tolerancji Na przykład jeżeli proacuteg tolerancji został ustalony na wartość 5 metroacutew linie o długości mniejszej niż 5 metroacutew są uznawane za linie wiszące (błąd) a linie o długości powyżej 5 metroacutew są prawidłowymi danymi
CZYSZCZENIE DANYCH ndash CLEANING
Usuwanie nieprawidłowych linii i węzłoacutewŁączenie brakujących segmentoacutew (w określonej odległości)Usuwanie zbędnych pseudowęzłoacutewDodanie węzłoacutew do wszystkich przecięćDodanie punktoacutew (Label points) centroidoacutew do poligonoacutew
BUDOWANIE TOPOLOGII ndash TOPOLOGY BUILDING
Nie zmienia położenia obiektoacutew ale polega na ich scalaniu Tworzenie tablicy atrybutoacutewPonowne tworzenie po dodawaniu ndash edycji danych w tym- dodawanie lub usuwanie linii i punktoacutew- dodawanie lub usuwanie danych atrybutoacutew
TIN ndash TRIANGULATED IRREGULAR NETWORKWĘZŁY
PROSTOKĄTY OGRANICZAJĄCE
Jedną z najprostszych metod organizacji danych sprzyjającą szybszemu dostępowi jest wprowadzenie w stosowanych do reprezentacji obiektoacutew strukturach danych pewnych dodatkowych informacji Zadaniem ich jest uproszczone w sensie przestrzennym zobrazowanie obiektoacutew ktoacutere możemy nazwać aproksymacją obiektoacutew właściwych Istotą takiej aproksymacji będzie zachowywanie przybliżonej informacji o obiekcie zapisanej w maksymalnie uproszczony sposoacuteb wygodny do wykonywania analiz
Najpowszechniejszym ze spotykanych uproszczeń jest aproksymacja obiektu minimalnym prostokątem o bokach roacutewnoległych do osi układu wspoacutełrzędnych w ktoacuterym można zmieścić cały rozpatrywanyobiekt Prostokąt taki będziemy nazywali minimalnym prostokątem ograniczającym W literaturze polskiej można się spotkać z określaniem takiego prostokąta bdquopudełkiemrdquo
STRUKTURY DANYCH WEKTOROWYCH
SIEĆ PUNKTOacuteW ndash składa się z uporządkowanego geometrycznie zbioru obiektoacutew punktowych na podstawie ich wzajemnej relacji położenia możliwe jest wnioskowanie o poprawności zapisu danych W przypadku gdy sieć punktoacutew ma postać regularnej siatki (grid) wtedy taka strutura jest roacutewnoważna modelowi rastrowemu ponieważ dziedziczy wszystkie jego własności Przykładem takiej struktury jest min Numeryczny model terenu zapisany jako prostokątna sieć punktoacutew
SIEĆ ndash struktura liniowa utworzona z odcinkoacutew o dowolnym kierunku przecinających się w węzłach Najczęściej przenoszona bezpośrednio ze Świata rzeczywistego (np sieć drogowa kolejowa telekomunikacyna itp) Uwzględnienie kierunku linii w topologicznym modelu wektorowym zapewnia Niezależnie analizę parametroacutew sieci w dwu kierunkach Tego typu struktura może być analizowana za pomocą tzw analiz sieciowych z grupy Analiz przestrzennych min Poszukiwanie optymalnej trasy pomiędzy zadanymi punktami optymalizacja lokalizacji centroacutew sieci oraz wyznaczenieZasięgu obszaru obsługi dla centroacutew w sieci i ich dostępności
DRZEWO ndash zespoacuteł skierowanych obiektoacutew liniowych łączących się w węzłach z każdego węzła może wychodzić tylko jeden obiekt Tego typu sieć Nazywana jest siecią typu hierarchicznego i może na przykład reprezentować powiązanie rzek w systemach rzecznych (rzędowość)
WYPEŁNIENIE POWIERZCHNI ndash (GT ndash poligony) ndash przyległe obszary zachowujące ściśle relacje wzajemnego położenia sąsiedztwa Najczęściej powiązane zależnościami hierarchicznymi a grupy obiektoacutew niższego rzędu tworzą pewne nadklasy o kolejnych stopniach agregacji obiektoacutew Przykładowo jednostki podziału administracyjnego kraju
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
REPREZENTACJA OBIEKTU LINIOWEGO W TOPOLOGICZNYM MODELU WEKTOROWYM
REPREZENTACJA OBIEKTU POWIERZCHNIOWEGO - POLIGONU W TOPOLOGICZNYM MODELU WEKTOROWYM
ZŁOŻONY MODEL TOPOLOGICZNY
Proces tworzenia złożonego modelu wektorowego jest z definicji bardziej skomplikowany i zajmuje więcej czasu jednakże posiada szereg zaletbull umożliwia zadawanie zapytań i analizę danychbull punkty reprezentują poligony o zerowym polu i długościbull linie (łuki ndash ang arcs) ndash rozpoczynają się i kończą węzłami (ang nodes)bull poligony są zbiorem połączonych linii
Określenie segmentoacutew- odcinkoacutew wspoacutelnych dla poligonoacutew zapewnia mniejszą liczbę linii w bazie danych przyległe poligony nie tworzą wolnych przestrzeni i nie przecinają się bardziej spoacutejny obraz podczas wizualizacji danych
Dane muszą zostać bdquooczyszczonerdquo i bdquozbudowanerdquo przed wykorzystaniem w systemie GIS
Po zbudowaniu modelu wektorowego wszystkie przecięcia tworzą węzły i nie ma wiszących segmentoacutew
WSPOacuteŁRZĘDNE ŁUKOacuteW - LINII
TOPOLOGIA LINII
TOPOLOGIA WĘZŁOacuteW
TOPOLOGIA POLIGONOacuteW
RODZAJE WĘZŁOacuteW
1 NORMAL NODES
W miejscu przecięcia trzech lub więcej linii granicznych
Akceptowane zawsze
2 DANGLING NODES
Na końcu linii granicznych
Akceptowane w obiektach liniowych np drogi rzeki ale nie dla poligonoacutew
3 PSEUDONODES
Między dwoma liniami
W poligonach wyspach zmianie atrybutoacutew
LINIE GRANICZNE ndash LINIE ndash ŁUKI
We wszystkich przecięciach wymagane są węzłyWiszące linie są akceptowane pod warunkiem że nie przekraczają wartości progowej tolerancji Na przykład jeżeli proacuteg tolerancji został ustalony na wartość 5 metroacutew linie o długości mniejszej niż 5 metroacutew są uznawane za linie wiszące (błąd) a linie o długości powyżej 5 metroacutew są prawidłowymi danymi
CZYSZCZENIE DANYCH ndash CLEANING
Usuwanie nieprawidłowych linii i węzłoacutewŁączenie brakujących segmentoacutew (w określonej odległości)Usuwanie zbędnych pseudowęzłoacutewDodanie węzłoacutew do wszystkich przecięćDodanie punktoacutew (Label points) centroidoacutew do poligonoacutew
BUDOWANIE TOPOLOGII ndash TOPOLOGY BUILDING
Nie zmienia położenia obiektoacutew ale polega na ich scalaniu Tworzenie tablicy atrybutoacutewPonowne tworzenie po dodawaniu ndash edycji danych w tym- dodawanie lub usuwanie linii i punktoacutew- dodawanie lub usuwanie danych atrybutoacutew
TIN ndash TRIANGULATED IRREGULAR NETWORKWĘZŁY
PROSTOKĄTY OGRANICZAJĄCE
Jedną z najprostszych metod organizacji danych sprzyjającą szybszemu dostępowi jest wprowadzenie w stosowanych do reprezentacji obiektoacutew strukturach danych pewnych dodatkowych informacji Zadaniem ich jest uproszczone w sensie przestrzennym zobrazowanie obiektoacutew ktoacutere możemy nazwać aproksymacją obiektoacutew właściwych Istotą takiej aproksymacji będzie zachowywanie przybliżonej informacji o obiekcie zapisanej w maksymalnie uproszczony sposoacuteb wygodny do wykonywania analiz
Najpowszechniejszym ze spotykanych uproszczeń jest aproksymacja obiektu minimalnym prostokątem o bokach roacutewnoległych do osi układu wspoacutełrzędnych w ktoacuterym można zmieścić cały rozpatrywanyobiekt Prostokąt taki będziemy nazywali minimalnym prostokątem ograniczającym W literaturze polskiej można się spotkać z określaniem takiego prostokąta bdquopudełkiemrdquo
STRUKTURY DANYCH WEKTOROWYCH
SIEĆ PUNKTOacuteW ndash składa się z uporządkowanego geometrycznie zbioru obiektoacutew punktowych na podstawie ich wzajemnej relacji położenia możliwe jest wnioskowanie o poprawności zapisu danych W przypadku gdy sieć punktoacutew ma postać regularnej siatki (grid) wtedy taka strutura jest roacutewnoważna modelowi rastrowemu ponieważ dziedziczy wszystkie jego własności Przykładem takiej struktury jest min Numeryczny model terenu zapisany jako prostokątna sieć punktoacutew
SIEĆ ndash struktura liniowa utworzona z odcinkoacutew o dowolnym kierunku przecinających się w węzłach Najczęściej przenoszona bezpośrednio ze Świata rzeczywistego (np sieć drogowa kolejowa telekomunikacyna itp) Uwzględnienie kierunku linii w topologicznym modelu wektorowym zapewnia Niezależnie analizę parametroacutew sieci w dwu kierunkach Tego typu struktura może być analizowana za pomocą tzw analiz sieciowych z grupy Analiz przestrzennych min Poszukiwanie optymalnej trasy pomiędzy zadanymi punktami optymalizacja lokalizacji centroacutew sieci oraz wyznaczenieZasięgu obszaru obsługi dla centroacutew w sieci i ich dostępności
DRZEWO ndash zespoacuteł skierowanych obiektoacutew liniowych łączących się w węzłach z każdego węzła może wychodzić tylko jeden obiekt Tego typu sieć Nazywana jest siecią typu hierarchicznego i może na przykład reprezentować powiązanie rzek w systemach rzecznych (rzędowość)
WYPEŁNIENIE POWIERZCHNI ndash (GT ndash poligony) ndash przyległe obszary zachowujące ściśle relacje wzajemnego położenia sąsiedztwa Najczęściej powiązane zależnościami hierarchicznymi a grupy obiektoacutew niższego rzędu tworzą pewne nadklasy o kolejnych stopniach agregacji obiektoacutew Przykładowo jednostki podziału administracyjnego kraju
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
REPREZENTACJA OBIEKTU POWIERZCHNIOWEGO - POLIGONU W TOPOLOGICZNYM MODELU WEKTOROWYM
ZŁOŻONY MODEL TOPOLOGICZNY
Proces tworzenia złożonego modelu wektorowego jest z definicji bardziej skomplikowany i zajmuje więcej czasu jednakże posiada szereg zaletbull umożliwia zadawanie zapytań i analizę danychbull punkty reprezentują poligony o zerowym polu i długościbull linie (łuki ndash ang arcs) ndash rozpoczynają się i kończą węzłami (ang nodes)bull poligony są zbiorem połączonych linii
Określenie segmentoacutew- odcinkoacutew wspoacutelnych dla poligonoacutew zapewnia mniejszą liczbę linii w bazie danych przyległe poligony nie tworzą wolnych przestrzeni i nie przecinają się bardziej spoacutejny obraz podczas wizualizacji danych
Dane muszą zostać bdquooczyszczonerdquo i bdquozbudowanerdquo przed wykorzystaniem w systemie GIS
Po zbudowaniu modelu wektorowego wszystkie przecięcia tworzą węzły i nie ma wiszących segmentoacutew
WSPOacuteŁRZĘDNE ŁUKOacuteW - LINII
TOPOLOGIA LINII
TOPOLOGIA WĘZŁOacuteW
TOPOLOGIA POLIGONOacuteW
RODZAJE WĘZŁOacuteW
1 NORMAL NODES
W miejscu przecięcia trzech lub więcej linii granicznych
Akceptowane zawsze
2 DANGLING NODES
Na końcu linii granicznych
Akceptowane w obiektach liniowych np drogi rzeki ale nie dla poligonoacutew
3 PSEUDONODES
Między dwoma liniami
W poligonach wyspach zmianie atrybutoacutew
LINIE GRANICZNE ndash LINIE ndash ŁUKI
We wszystkich przecięciach wymagane są węzłyWiszące linie są akceptowane pod warunkiem że nie przekraczają wartości progowej tolerancji Na przykład jeżeli proacuteg tolerancji został ustalony na wartość 5 metroacutew linie o długości mniejszej niż 5 metroacutew są uznawane za linie wiszące (błąd) a linie o długości powyżej 5 metroacutew są prawidłowymi danymi
CZYSZCZENIE DANYCH ndash CLEANING
Usuwanie nieprawidłowych linii i węzłoacutewŁączenie brakujących segmentoacutew (w określonej odległości)Usuwanie zbędnych pseudowęzłoacutewDodanie węzłoacutew do wszystkich przecięćDodanie punktoacutew (Label points) centroidoacutew do poligonoacutew
BUDOWANIE TOPOLOGII ndash TOPOLOGY BUILDING
Nie zmienia położenia obiektoacutew ale polega na ich scalaniu Tworzenie tablicy atrybutoacutewPonowne tworzenie po dodawaniu ndash edycji danych w tym- dodawanie lub usuwanie linii i punktoacutew- dodawanie lub usuwanie danych atrybutoacutew
TIN ndash TRIANGULATED IRREGULAR NETWORKWĘZŁY
PROSTOKĄTY OGRANICZAJĄCE
Jedną z najprostszych metod organizacji danych sprzyjającą szybszemu dostępowi jest wprowadzenie w stosowanych do reprezentacji obiektoacutew strukturach danych pewnych dodatkowych informacji Zadaniem ich jest uproszczone w sensie przestrzennym zobrazowanie obiektoacutew ktoacutere możemy nazwać aproksymacją obiektoacutew właściwych Istotą takiej aproksymacji będzie zachowywanie przybliżonej informacji o obiekcie zapisanej w maksymalnie uproszczony sposoacuteb wygodny do wykonywania analiz
Najpowszechniejszym ze spotykanych uproszczeń jest aproksymacja obiektu minimalnym prostokątem o bokach roacutewnoległych do osi układu wspoacutełrzędnych w ktoacuterym można zmieścić cały rozpatrywanyobiekt Prostokąt taki będziemy nazywali minimalnym prostokątem ograniczającym W literaturze polskiej można się spotkać z określaniem takiego prostokąta bdquopudełkiemrdquo
STRUKTURY DANYCH WEKTOROWYCH
SIEĆ PUNKTOacuteW ndash składa się z uporządkowanego geometrycznie zbioru obiektoacutew punktowych na podstawie ich wzajemnej relacji położenia możliwe jest wnioskowanie o poprawności zapisu danych W przypadku gdy sieć punktoacutew ma postać regularnej siatki (grid) wtedy taka strutura jest roacutewnoważna modelowi rastrowemu ponieważ dziedziczy wszystkie jego własności Przykładem takiej struktury jest min Numeryczny model terenu zapisany jako prostokątna sieć punktoacutew
SIEĆ ndash struktura liniowa utworzona z odcinkoacutew o dowolnym kierunku przecinających się w węzłach Najczęściej przenoszona bezpośrednio ze Świata rzeczywistego (np sieć drogowa kolejowa telekomunikacyna itp) Uwzględnienie kierunku linii w topologicznym modelu wektorowym zapewnia Niezależnie analizę parametroacutew sieci w dwu kierunkach Tego typu struktura może być analizowana za pomocą tzw analiz sieciowych z grupy Analiz przestrzennych min Poszukiwanie optymalnej trasy pomiędzy zadanymi punktami optymalizacja lokalizacji centroacutew sieci oraz wyznaczenieZasięgu obszaru obsługi dla centroacutew w sieci i ich dostępności
DRZEWO ndash zespoacuteł skierowanych obiektoacutew liniowych łączących się w węzłach z każdego węzła może wychodzić tylko jeden obiekt Tego typu sieć Nazywana jest siecią typu hierarchicznego i może na przykład reprezentować powiązanie rzek w systemach rzecznych (rzędowość)
WYPEŁNIENIE POWIERZCHNI ndash (GT ndash poligony) ndash przyległe obszary zachowujące ściśle relacje wzajemnego położenia sąsiedztwa Najczęściej powiązane zależnościami hierarchicznymi a grupy obiektoacutew niższego rzędu tworzą pewne nadklasy o kolejnych stopniach agregacji obiektoacutew Przykładowo jednostki podziału administracyjnego kraju
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
ZŁOŻONY MODEL TOPOLOGICZNY
Proces tworzenia złożonego modelu wektorowego jest z definicji bardziej skomplikowany i zajmuje więcej czasu jednakże posiada szereg zaletbull umożliwia zadawanie zapytań i analizę danychbull punkty reprezentują poligony o zerowym polu i długościbull linie (łuki ndash ang arcs) ndash rozpoczynają się i kończą węzłami (ang nodes)bull poligony są zbiorem połączonych linii
Określenie segmentoacutew- odcinkoacutew wspoacutelnych dla poligonoacutew zapewnia mniejszą liczbę linii w bazie danych przyległe poligony nie tworzą wolnych przestrzeni i nie przecinają się bardziej spoacutejny obraz podczas wizualizacji danych
Dane muszą zostać bdquooczyszczonerdquo i bdquozbudowanerdquo przed wykorzystaniem w systemie GIS
Po zbudowaniu modelu wektorowego wszystkie przecięcia tworzą węzły i nie ma wiszących segmentoacutew
WSPOacuteŁRZĘDNE ŁUKOacuteW - LINII
TOPOLOGIA LINII
TOPOLOGIA WĘZŁOacuteW
TOPOLOGIA POLIGONOacuteW
RODZAJE WĘZŁOacuteW
1 NORMAL NODES
W miejscu przecięcia trzech lub więcej linii granicznych
Akceptowane zawsze
2 DANGLING NODES
Na końcu linii granicznych
Akceptowane w obiektach liniowych np drogi rzeki ale nie dla poligonoacutew
3 PSEUDONODES
Między dwoma liniami
W poligonach wyspach zmianie atrybutoacutew
LINIE GRANICZNE ndash LINIE ndash ŁUKI
We wszystkich przecięciach wymagane są węzłyWiszące linie są akceptowane pod warunkiem że nie przekraczają wartości progowej tolerancji Na przykład jeżeli proacuteg tolerancji został ustalony na wartość 5 metroacutew linie o długości mniejszej niż 5 metroacutew są uznawane za linie wiszące (błąd) a linie o długości powyżej 5 metroacutew są prawidłowymi danymi
CZYSZCZENIE DANYCH ndash CLEANING
Usuwanie nieprawidłowych linii i węzłoacutewŁączenie brakujących segmentoacutew (w określonej odległości)Usuwanie zbędnych pseudowęzłoacutewDodanie węzłoacutew do wszystkich przecięćDodanie punktoacutew (Label points) centroidoacutew do poligonoacutew
BUDOWANIE TOPOLOGII ndash TOPOLOGY BUILDING
Nie zmienia położenia obiektoacutew ale polega na ich scalaniu Tworzenie tablicy atrybutoacutewPonowne tworzenie po dodawaniu ndash edycji danych w tym- dodawanie lub usuwanie linii i punktoacutew- dodawanie lub usuwanie danych atrybutoacutew
TIN ndash TRIANGULATED IRREGULAR NETWORKWĘZŁY
PROSTOKĄTY OGRANICZAJĄCE
Jedną z najprostszych metod organizacji danych sprzyjającą szybszemu dostępowi jest wprowadzenie w stosowanych do reprezentacji obiektoacutew strukturach danych pewnych dodatkowych informacji Zadaniem ich jest uproszczone w sensie przestrzennym zobrazowanie obiektoacutew ktoacutere możemy nazwać aproksymacją obiektoacutew właściwych Istotą takiej aproksymacji będzie zachowywanie przybliżonej informacji o obiekcie zapisanej w maksymalnie uproszczony sposoacuteb wygodny do wykonywania analiz
Najpowszechniejszym ze spotykanych uproszczeń jest aproksymacja obiektu minimalnym prostokątem o bokach roacutewnoległych do osi układu wspoacutełrzędnych w ktoacuterym można zmieścić cały rozpatrywanyobiekt Prostokąt taki będziemy nazywali minimalnym prostokątem ograniczającym W literaturze polskiej można się spotkać z określaniem takiego prostokąta bdquopudełkiemrdquo
STRUKTURY DANYCH WEKTOROWYCH
SIEĆ PUNKTOacuteW ndash składa się z uporządkowanego geometrycznie zbioru obiektoacutew punktowych na podstawie ich wzajemnej relacji położenia możliwe jest wnioskowanie o poprawności zapisu danych W przypadku gdy sieć punktoacutew ma postać regularnej siatki (grid) wtedy taka strutura jest roacutewnoważna modelowi rastrowemu ponieważ dziedziczy wszystkie jego własności Przykładem takiej struktury jest min Numeryczny model terenu zapisany jako prostokątna sieć punktoacutew
SIEĆ ndash struktura liniowa utworzona z odcinkoacutew o dowolnym kierunku przecinających się w węzłach Najczęściej przenoszona bezpośrednio ze Świata rzeczywistego (np sieć drogowa kolejowa telekomunikacyna itp) Uwzględnienie kierunku linii w topologicznym modelu wektorowym zapewnia Niezależnie analizę parametroacutew sieci w dwu kierunkach Tego typu struktura może być analizowana za pomocą tzw analiz sieciowych z grupy Analiz przestrzennych min Poszukiwanie optymalnej trasy pomiędzy zadanymi punktami optymalizacja lokalizacji centroacutew sieci oraz wyznaczenieZasięgu obszaru obsługi dla centroacutew w sieci i ich dostępności
DRZEWO ndash zespoacuteł skierowanych obiektoacutew liniowych łączących się w węzłach z każdego węzła może wychodzić tylko jeden obiekt Tego typu sieć Nazywana jest siecią typu hierarchicznego i może na przykład reprezentować powiązanie rzek w systemach rzecznych (rzędowość)
WYPEŁNIENIE POWIERZCHNI ndash (GT ndash poligony) ndash przyległe obszary zachowujące ściśle relacje wzajemnego położenia sąsiedztwa Najczęściej powiązane zależnościami hierarchicznymi a grupy obiektoacutew niższego rzędu tworzą pewne nadklasy o kolejnych stopniach agregacji obiektoacutew Przykładowo jednostki podziału administracyjnego kraju
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
Dane muszą zostać bdquooczyszczonerdquo i bdquozbudowanerdquo przed wykorzystaniem w systemie GIS
Po zbudowaniu modelu wektorowego wszystkie przecięcia tworzą węzły i nie ma wiszących segmentoacutew
WSPOacuteŁRZĘDNE ŁUKOacuteW - LINII
TOPOLOGIA LINII
TOPOLOGIA WĘZŁOacuteW
TOPOLOGIA POLIGONOacuteW
RODZAJE WĘZŁOacuteW
1 NORMAL NODES
W miejscu przecięcia trzech lub więcej linii granicznych
Akceptowane zawsze
2 DANGLING NODES
Na końcu linii granicznych
Akceptowane w obiektach liniowych np drogi rzeki ale nie dla poligonoacutew
3 PSEUDONODES
Między dwoma liniami
W poligonach wyspach zmianie atrybutoacutew
LINIE GRANICZNE ndash LINIE ndash ŁUKI
We wszystkich przecięciach wymagane są węzłyWiszące linie są akceptowane pod warunkiem że nie przekraczają wartości progowej tolerancji Na przykład jeżeli proacuteg tolerancji został ustalony na wartość 5 metroacutew linie o długości mniejszej niż 5 metroacutew są uznawane za linie wiszące (błąd) a linie o długości powyżej 5 metroacutew są prawidłowymi danymi
CZYSZCZENIE DANYCH ndash CLEANING
Usuwanie nieprawidłowych linii i węzłoacutewŁączenie brakujących segmentoacutew (w określonej odległości)Usuwanie zbędnych pseudowęzłoacutewDodanie węzłoacutew do wszystkich przecięćDodanie punktoacutew (Label points) centroidoacutew do poligonoacutew
BUDOWANIE TOPOLOGII ndash TOPOLOGY BUILDING
Nie zmienia położenia obiektoacutew ale polega na ich scalaniu Tworzenie tablicy atrybutoacutewPonowne tworzenie po dodawaniu ndash edycji danych w tym- dodawanie lub usuwanie linii i punktoacutew- dodawanie lub usuwanie danych atrybutoacutew
TIN ndash TRIANGULATED IRREGULAR NETWORKWĘZŁY
PROSTOKĄTY OGRANICZAJĄCE
Jedną z najprostszych metod organizacji danych sprzyjającą szybszemu dostępowi jest wprowadzenie w stosowanych do reprezentacji obiektoacutew strukturach danych pewnych dodatkowych informacji Zadaniem ich jest uproszczone w sensie przestrzennym zobrazowanie obiektoacutew ktoacutere możemy nazwać aproksymacją obiektoacutew właściwych Istotą takiej aproksymacji będzie zachowywanie przybliżonej informacji o obiekcie zapisanej w maksymalnie uproszczony sposoacuteb wygodny do wykonywania analiz
Najpowszechniejszym ze spotykanych uproszczeń jest aproksymacja obiektu minimalnym prostokątem o bokach roacutewnoległych do osi układu wspoacutełrzędnych w ktoacuterym można zmieścić cały rozpatrywanyobiekt Prostokąt taki będziemy nazywali minimalnym prostokątem ograniczającym W literaturze polskiej można się spotkać z określaniem takiego prostokąta bdquopudełkiemrdquo
STRUKTURY DANYCH WEKTOROWYCH
SIEĆ PUNKTOacuteW ndash składa się z uporządkowanego geometrycznie zbioru obiektoacutew punktowych na podstawie ich wzajemnej relacji położenia możliwe jest wnioskowanie o poprawności zapisu danych W przypadku gdy sieć punktoacutew ma postać regularnej siatki (grid) wtedy taka strutura jest roacutewnoważna modelowi rastrowemu ponieważ dziedziczy wszystkie jego własności Przykładem takiej struktury jest min Numeryczny model terenu zapisany jako prostokątna sieć punktoacutew
SIEĆ ndash struktura liniowa utworzona z odcinkoacutew o dowolnym kierunku przecinających się w węzłach Najczęściej przenoszona bezpośrednio ze Świata rzeczywistego (np sieć drogowa kolejowa telekomunikacyna itp) Uwzględnienie kierunku linii w topologicznym modelu wektorowym zapewnia Niezależnie analizę parametroacutew sieci w dwu kierunkach Tego typu struktura może być analizowana za pomocą tzw analiz sieciowych z grupy Analiz przestrzennych min Poszukiwanie optymalnej trasy pomiędzy zadanymi punktami optymalizacja lokalizacji centroacutew sieci oraz wyznaczenieZasięgu obszaru obsługi dla centroacutew w sieci i ich dostępności
DRZEWO ndash zespoacuteł skierowanych obiektoacutew liniowych łączących się w węzłach z każdego węzła może wychodzić tylko jeden obiekt Tego typu sieć Nazywana jest siecią typu hierarchicznego i może na przykład reprezentować powiązanie rzek w systemach rzecznych (rzędowość)
WYPEŁNIENIE POWIERZCHNI ndash (GT ndash poligony) ndash przyległe obszary zachowujące ściśle relacje wzajemnego położenia sąsiedztwa Najczęściej powiązane zależnościami hierarchicznymi a grupy obiektoacutew niższego rzędu tworzą pewne nadklasy o kolejnych stopniach agregacji obiektoacutew Przykładowo jednostki podziału administracyjnego kraju
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
WSPOacuteŁRZĘDNE ŁUKOacuteW - LINII
TOPOLOGIA LINII
TOPOLOGIA WĘZŁOacuteW
TOPOLOGIA POLIGONOacuteW
RODZAJE WĘZŁOacuteW
1 NORMAL NODES
W miejscu przecięcia trzech lub więcej linii granicznych
Akceptowane zawsze
2 DANGLING NODES
Na końcu linii granicznych
Akceptowane w obiektach liniowych np drogi rzeki ale nie dla poligonoacutew
3 PSEUDONODES
Między dwoma liniami
W poligonach wyspach zmianie atrybutoacutew
LINIE GRANICZNE ndash LINIE ndash ŁUKI
We wszystkich przecięciach wymagane są węzłyWiszące linie są akceptowane pod warunkiem że nie przekraczają wartości progowej tolerancji Na przykład jeżeli proacuteg tolerancji został ustalony na wartość 5 metroacutew linie o długości mniejszej niż 5 metroacutew są uznawane za linie wiszące (błąd) a linie o długości powyżej 5 metroacutew są prawidłowymi danymi
CZYSZCZENIE DANYCH ndash CLEANING
Usuwanie nieprawidłowych linii i węzłoacutewŁączenie brakujących segmentoacutew (w określonej odległości)Usuwanie zbędnych pseudowęzłoacutewDodanie węzłoacutew do wszystkich przecięćDodanie punktoacutew (Label points) centroidoacutew do poligonoacutew
BUDOWANIE TOPOLOGII ndash TOPOLOGY BUILDING
Nie zmienia położenia obiektoacutew ale polega na ich scalaniu Tworzenie tablicy atrybutoacutewPonowne tworzenie po dodawaniu ndash edycji danych w tym- dodawanie lub usuwanie linii i punktoacutew- dodawanie lub usuwanie danych atrybutoacutew
TIN ndash TRIANGULATED IRREGULAR NETWORKWĘZŁY
PROSTOKĄTY OGRANICZAJĄCE
Jedną z najprostszych metod organizacji danych sprzyjającą szybszemu dostępowi jest wprowadzenie w stosowanych do reprezentacji obiektoacutew strukturach danych pewnych dodatkowych informacji Zadaniem ich jest uproszczone w sensie przestrzennym zobrazowanie obiektoacutew ktoacutere możemy nazwać aproksymacją obiektoacutew właściwych Istotą takiej aproksymacji będzie zachowywanie przybliżonej informacji o obiekcie zapisanej w maksymalnie uproszczony sposoacuteb wygodny do wykonywania analiz
Najpowszechniejszym ze spotykanych uproszczeń jest aproksymacja obiektu minimalnym prostokątem o bokach roacutewnoległych do osi układu wspoacutełrzędnych w ktoacuterym można zmieścić cały rozpatrywanyobiekt Prostokąt taki będziemy nazywali minimalnym prostokątem ograniczającym W literaturze polskiej można się spotkać z określaniem takiego prostokąta bdquopudełkiemrdquo
STRUKTURY DANYCH WEKTOROWYCH
SIEĆ PUNKTOacuteW ndash składa się z uporządkowanego geometrycznie zbioru obiektoacutew punktowych na podstawie ich wzajemnej relacji położenia możliwe jest wnioskowanie o poprawności zapisu danych W przypadku gdy sieć punktoacutew ma postać regularnej siatki (grid) wtedy taka strutura jest roacutewnoważna modelowi rastrowemu ponieważ dziedziczy wszystkie jego własności Przykładem takiej struktury jest min Numeryczny model terenu zapisany jako prostokątna sieć punktoacutew
SIEĆ ndash struktura liniowa utworzona z odcinkoacutew o dowolnym kierunku przecinających się w węzłach Najczęściej przenoszona bezpośrednio ze Świata rzeczywistego (np sieć drogowa kolejowa telekomunikacyna itp) Uwzględnienie kierunku linii w topologicznym modelu wektorowym zapewnia Niezależnie analizę parametroacutew sieci w dwu kierunkach Tego typu struktura może być analizowana za pomocą tzw analiz sieciowych z grupy Analiz przestrzennych min Poszukiwanie optymalnej trasy pomiędzy zadanymi punktami optymalizacja lokalizacji centroacutew sieci oraz wyznaczenieZasięgu obszaru obsługi dla centroacutew w sieci i ich dostępności
DRZEWO ndash zespoacuteł skierowanych obiektoacutew liniowych łączących się w węzłach z każdego węzła może wychodzić tylko jeden obiekt Tego typu sieć Nazywana jest siecią typu hierarchicznego i może na przykład reprezentować powiązanie rzek w systemach rzecznych (rzędowość)
WYPEŁNIENIE POWIERZCHNI ndash (GT ndash poligony) ndash przyległe obszary zachowujące ściśle relacje wzajemnego położenia sąsiedztwa Najczęściej powiązane zależnościami hierarchicznymi a grupy obiektoacutew niższego rzędu tworzą pewne nadklasy o kolejnych stopniach agregacji obiektoacutew Przykładowo jednostki podziału administracyjnego kraju
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
TOPOLOGIA LINII
TOPOLOGIA WĘZŁOacuteW
TOPOLOGIA POLIGONOacuteW
RODZAJE WĘZŁOacuteW
1 NORMAL NODES
W miejscu przecięcia trzech lub więcej linii granicznych
Akceptowane zawsze
2 DANGLING NODES
Na końcu linii granicznych
Akceptowane w obiektach liniowych np drogi rzeki ale nie dla poligonoacutew
3 PSEUDONODES
Między dwoma liniami
W poligonach wyspach zmianie atrybutoacutew
LINIE GRANICZNE ndash LINIE ndash ŁUKI
We wszystkich przecięciach wymagane są węzłyWiszące linie są akceptowane pod warunkiem że nie przekraczają wartości progowej tolerancji Na przykład jeżeli proacuteg tolerancji został ustalony na wartość 5 metroacutew linie o długości mniejszej niż 5 metroacutew są uznawane za linie wiszące (błąd) a linie o długości powyżej 5 metroacutew są prawidłowymi danymi
CZYSZCZENIE DANYCH ndash CLEANING
Usuwanie nieprawidłowych linii i węzłoacutewŁączenie brakujących segmentoacutew (w określonej odległości)Usuwanie zbędnych pseudowęzłoacutewDodanie węzłoacutew do wszystkich przecięćDodanie punktoacutew (Label points) centroidoacutew do poligonoacutew
BUDOWANIE TOPOLOGII ndash TOPOLOGY BUILDING
Nie zmienia położenia obiektoacutew ale polega na ich scalaniu Tworzenie tablicy atrybutoacutewPonowne tworzenie po dodawaniu ndash edycji danych w tym- dodawanie lub usuwanie linii i punktoacutew- dodawanie lub usuwanie danych atrybutoacutew
TIN ndash TRIANGULATED IRREGULAR NETWORKWĘZŁY
PROSTOKĄTY OGRANICZAJĄCE
Jedną z najprostszych metod organizacji danych sprzyjającą szybszemu dostępowi jest wprowadzenie w stosowanych do reprezentacji obiektoacutew strukturach danych pewnych dodatkowych informacji Zadaniem ich jest uproszczone w sensie przestrzennym zobrazowanie obiektoacutew ktoacutere możemy nazwać aproksymacją obiektoacutew właściwych Istotą takiej aproksymacji będzie zachowywanie przybliżonej informacji o obiekcie zapisanej w maksymalnie uproszczony sposoacuteb wygodny do wykonywania analiz
Najpowszechniejszym ze spotykanych uproszczeń jest aproksymacja obiektu minimalnym prostokątem o bokach roacutewnoległych do osi układu wspoacutełrzędnych w ktoacuterym można zmieścić cały rozpatrywanyobiekt Prostokąt taki będziemy nazywali minimalnym prostokątem ograniczającym W literaturze polskiej można się spotkać z określaniem takiego prostokąta bdquopudełkiemrdquo
STRUKTURY DANYCH WEKTOROWYCH
SIEĆ PUNKTOacuteW ndash składa się z uporządkowanego geometrycznie zbioru obiektoacutew punktowych na podstawie ich wzajemnej relacji położenia możliwe jest wnioskowanie o poprawności zapisu danych W przypadku gdy sieć punktoacutew ma postać regularnej siatki (grid) wtedy taka strutura jest roacutewnoważna modelowi rastrowemu ponieważ dziedziczy wszystkie jego własności Przykładem takiej struktury jest min Numeryczny model terenu zapisany jako prostokątna sieć punktoacutew
SIEĆ ndash struktura liniowa utworzona z odcinkoacutew o dowolnym kierunku przecinających się w węzłach Najczęściej przenoszona bezpośrednio ze Świata rzeczywistego (np sieć drogowa kolejowa telekomunikacyna itp) Uwzględnienie kierunku linii w topologicznym modelu wektorowym zapewnia Niezależnie analizę parametroacutew sieci w dwu kierunkach Tego typu struktura może być analizowana za pomocą tzw analiz sieciowych z grupy Analiz przestrzennych min Poszukiwanie optymalnej trasy pomiędzy zadanymi punktami optymalizacja lokalizacji centroacutew sieci oraz wyznaczenieZasięgu obszaru obsługi dla centroacutew w sieci i ich dostępności
DRZEWO ndash zespoacuteł skierowanych obiektoacutew liniowych łączących się w węzłach z każdego węzła może wychodzić tylko jeden obiekt Tego typu sieć Nazywana jest siecią typu hierarchicznego i może na przykład reprezentować powiązanie rzek w systemach rzecznych (rzędowość)
WYPEŁNIENIE POWIERZCHNI ndash (GT ndash poligony) ndash przyległe obszary zachowujące ściśle relacje wzajemnego położenia sąsiedztwa Najczęściej powiązane zależnościami hierarchicznymi a grupy obiektoacutew niższego rzędu tworzą pewne nadklasy o kolejnych stopniach agregacji obiektoacutew Przykładowo jednostki podziału administracyjnego kraju
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
RODZAJE WĘZŁOacuteW
1 NORMAL NODES
W miejscu przecięcia trzech lub więcej linii granicznych
Akceptowane zawsze
2 DANGLING NODES
Na końcu linii granicznych
Akceptowane w obiektach liniowych np drogi rzeki ale nie dla poligonoacutew
3 PSEUDONODES
Między dwoma liniami
W poligonach wyspach zmianie atrybutoacutew
LINIE GRANICZNE ndash LINIE ndash ŁUKI
We wszystkich przecięciach wymagane są węzłyWiszące linie są akceptowane pod warunkiem że nie przekraczają wartości progowej tolerancji Na przykład jeżeli proacuteg tolerancji został ustalony na wartość 5 metroacutew linie o długości mniejszej niż 5 metroacutew są uznawane za linie wiszące (błąd) a linie o długości powyżej 5 metroacutew są prawidłowymi danymi
CZYSZCZENIE DANYCH ndash CLEANING
Usuwanie nieprawidłowych linii i węzłoacutewŁączenie brakujących segmentoacutew (w określonej odległości)Usuwanie zbędnych pseudowęzłoacutewDodanie węzłoacutew do wszystkich przecięćDodanie punktoacutew (Label points) centroidoacutew do poligonoacutew
BUDOWANIE TOPOLOGII ndash TOPOLOGY BUILDING
Nie zmienia położenia obiektoacutew ale polega na ich scalaniu Tworzenie tablicy atrybutoacutewPonowne tworzenie po dodawaniu ndash edycji danych w tym- dodawanie lub usuwanie linii i punktoacutew- dodawanie lub usuwanie danych atrybutoacutew
TIN ndash TRIANGULATED IRREGULAR NETWORKWĘZŁY
PROSTOKĄTY OGRANICZAJĄCE
Jedną z najprostszych metod organizacji danych sprzyjającą szybszemu dostępowi jest wprowadzenie w stosowanych do reprezentacji obiektoacutew strukturach danych pewnych dodatkowych informacji Zadaniem ich jest uproszczone w sensie przestrzennym zobrazowanie obiektoacutew ktoacutere możemy nazwać aproksymacją obiektoacutew właściwych Istotą takiej aproksymacji będzie zachowywanie przybliżonej informacji o obiekcie zapisanej w maksymalnie uproszczony sposoacuteb wygodny do wykonywania analiz
Najpowszechniejszym ze spotykanych uproszczeń jest aproksymacja obiektu minimalnym prostokątem o bokach roacutewnoległych do osi układu wspoacutełrzędnych w ktoacuterym można zmieścić cały rozpatrywanyobiekt Prostokąt taki będziemy nazywali minimalnym prostokątem ograniczającym W literaturze polskiej można się spotkać z określaniem takiego prostokąta bdquopudełkiemrdquo
STRUKTURY DANYCH WEKTOROWYCH
SIEĆ PUNKTOacuteW ndash składa się z uporządkowanego geometrycznie zbioru obiektoacutew punktowych na podstawie ich wzajemnej relacji położenia możliwe jest wnioskowanie o poprawności zapisu danych W przypadku gdy sieć punktoacutew ma postać regularnej siatki (grid) wtedy taka strutura jest roacutewnoważna modelowi rastrowemu ponieważ dziedziczy wszystkie jego własności Przykładem takiej struktury jest min Numeryczny model terenu zapisany jako prostokątna sieć punktoacutew
SIEĆ ndash struktura liniowa utworzona z odcinkoacutew o dowolnym kierunku przecinających się w węzłach Najczęściej przenoszona bezpośrednio ze Świata rzeczywistego (np sieć drogowa kolejowa telekomunikacyna itp) Uwzględnienie kierunku linii w topologicznym modelu wektorowym zapewnia Niezależnie analizę parametroacutew sieci w dwu kierunkach Tego typu struktura może być analizowana za pomocą tzw analiz sieciowych z grupy Analiz przestrzennych min Poszukiwanie optymalnej trasy pomiędzy zadanymi punktami optymalizacja lokalizacji centroacutew sieci oraz wyznaczenieZasięgu obszaru obsługi dla centroacutew w sieci i ich dostępności
DRZEWO ndash zespoacuteł skierowanych obiektoacutew liniowych łączących się w węzłach z każdego węzła może wychodzić tylko jeden obiekt Tego typu sieć Nazywana jest siecią typu hierarchicznego i może na przykład reprezentować powiązanie rzek w systemach rzecznych (rzędowość)
WYPEŁNIENIE POWIERZCHNI ndash (GT ndash poligony) ndash przyległe obszary zachowujące ściśle relacje wzajemnego położenia sąsiedztwa Najczęściej powiązane zależnościami hierarchicznymi a grupy obiektoacutew niższego rzędu tworzą pewne nadklasy o kolejnych stopniach agregacji obiektoacutew Przykładowo jednostki podziału administracyjnego kraju
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
LINIE GRANICZNE ndash LINIE ndash ŁUKI
We wszystkich przecięciach wymagane są węzłyWiszące linie są akceptowane pod warunkiem że nie przekraczają wartości progowej tolerancji Na przykład jeżeli proacuteg tolerancji został ustalony na wartość 5 metroacutew linie o długości mniejszej niż 5 metroacutew są uznawane za linie wiszące (błąd) a linie o długości powyżej 5 metroacutew są prawidłowymi danymi
CZYSZCZENIE DANYCH ndash CLEANING
Usuwanie nieprawidłowych linii i węzłoacutewŁączenie brakujących segmentoacutew (w określonej odległości)Usuwanie zbędnych pseudowęzłoacutewDodanie węzłoacutew do wszystkich przecięćDodanie punktoacutew (Label points) centroidoacutew do poligonoacutew
BUDOWANIE TOPOLOGII ndash TOPOLOGY BUILDING
Nie zmienia położenia obiektoacutew ale polega na ich scalaniu Tworzenie tablicy atrybutoacutewPonowne tworzenie po dodawaniu ndash edycji danych w tym- dodawanie lub usuwanie linii i punktoacutew- dodawanie lub usuwanie danych atrybutoacutew
TIN ndash TRIANGULATED IRREGULAR NETWORKWĘZŁY
PROSTOKĄTY OGRANICZAJĄCE
Jedną z najprostszych metod organizacji danych sprzyjającą szybszemu dostępowi jest wprowadzenie w stosowanych do reprezentacji obiektoacutew strukturach danych pewnych dodatkowych informacji Zadaniem ich jest uproszczone w sensie przestrzennym zobrazowanie obiektoacutew ktoacutere możemy nazwać aproksymacją obiektoacutew właściwych Istotą takiej aproksymacji będzie zachowywanie przybliżonej informacji o obiekcie zapisanej w maksymalnie uproszczony sposoacuteb wygodny do wykonywania analiz
Najpowszechniejszym ze spotykanych uproszczeń jest aproksymacja obiektu minimalnym prostokątem o bokach roacutewnoległych do osi układu wspoacutełrzędnych w ktoacuterym można zmieścić cały rozpatrywanyobiekt Prostokąt taki będziemy nazywali minimalnym prostokątem ograniczającym W literaturze polskiej można się spotkać z określaniem takiego prostokąta bdquopudełkiemrdquo
STRUKTURY DANYCH WEKTOROWYCH
SIEĆ PUNKTOacuteW ndash składa się z uporządkowanego geometrycznie zbioru obiektoacutew punktowych na podstawie ich wzajemnej relacji położenia możliwe jest wnioskowanie o poprawności zapisu danych W przypadku gdy sieć punktoacutew ma postać regularnej siatki (grid) wtedy taka strutura jest roacutewnoważna modelowi rastrowemu ponieważ dziedziczy wszystkie jego własności Przykładem takiej struktury jest min Numeryczny model terenu zapisany jako prostokątna sieć punktoacutew
SIEĆ ndash struktura liniowa utworzona z odcinkoacutew o dowolnym kierunku przecinających się w węzłach Najczęściej przenoszona bezpośrednio ze Świata rzeczywistego (np sieć drogowa kolejowa telekomunikacyna itp) Uwzględnienie kierunku linii w topologicznym modelu wektorowym zapewnia Niezależnie analizę parametroacutew sieci w dwu kierunkach Tego typu struktura może być analizowana za pomocą tzw analiz sieciowych z grupy Analiz przestrzennych min Poszukiwanie optymalnej trasy pomiędzy zadanymi punktami optymalizacja lokalizacji centroacutew sieci oraz wyznaczenieZasięgu obszaru obsługi dla centroacutew w sieci i ich dostępności
DRZEWO ndash zespoacuteł skierowanych obiektoacutew liniowych łączących się w węzłach z każdego węzła może wychodzić tylko jeden obiekt Tego typu sieć Nazywana jest siecią typu hierarchicznego i może na przykład reprezentować powiązanie rzek w systemach rzecznych (rzędowość)
WYPEŁNIENIE POWIERZCHNI ndash (GT ndash poligony) ndash przyległe obszary zachowujące ściśle relacje wzajemnego położenia sąsiedztwa Najczęściej powiązane zależnościami hierarchicznymi a grupy obiektoacutew niższego rzędu tworzą pewne nadklasy o kolejnych stopniach agregacji obiektoacutew Przykładowo jednostki podziału administracyjnego kraju
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
CZYSZCZENIE DANYCH ndash CLEANING
Usuwanie nieprawidłowych linii i węzłoacutewŁączenie brakujących segmentoacutew (w określonej odległości)Usuwanie zbędnych pseudowęzłoacutewDodanie węzłoacutew do wszystkich przecięćDodanie punktoacutew (Label points) centroidoacutew do poligonoacutew
BUDOWANIE TOPOLOGII ndash TOPOLOGY BUILDING
Nie zmienia położenia obiektoacutew ale polega na ich scalaniu Tworzenie tablicy atrybutoacutewPonowne tworzenie po dodawaniu ndash edycji danych w tym- dodawanie lub usuwanie linii i punktoacutew- dodawanie lub usuwanie danych atrybutoacutew
TIN ndash TRIANGULATED IRREGULAR NETWORKWĘZŁY
PROSTOKĄTY OGRANICZAJĄCE
Jedną z najprostszych metod organizacji danych sprzyjającą szybszemu dostępowi jest wprowadzenie w stosowanych do reprezentacji obiektoacutew strukturach danych pewnych dodatkowych informacji Zadaniem ich jest uproszczone w sensie przestrzennym zobrazowanie obiektoacutew ktoacutere możemy nazwać aproksymacją obiektoacutew właściwych Istotą takiej aproksymacji będzie zachowywanie przybliżonej informacji o obiekcie zapisanej w maksymalnie uproszczony sposoacuteb wygodny do wykonywania analiz
Najpowszechniejszym ze spotykanych uproszczeń jest aproksymacja obiektu minimalnym prostokątem o bokach roacutewnoległych do osi układu wspoacutełrzędnych w ktoacuterym można zmieścić cały rozpatrywanyobiekt Prostokąt taki będziemy nazywali minimalnym prostokątem ograniczającym W literaturze polskiej można się spotkać z określaniem takiego prostokąta bdquopudełkiemrdquo
STRUKTURY DANYCH WEKTOROWYCH
SIEĆ PUNKTOacuteW ndash składa się z uporządkowanego geometrycznie zbioru obiektoacutew punktowych na podstawie ich wzajemnej relacji położenia możliwe jest wnioskowanie o poprawności zapisu danych W przypadku gdy sieć punktoacutew ma postać regularnej siatki (grid) wtedy taka strutura jest roacutewnoważna modelowi rastrowemu ponieważ dziedziczy wszystkie jego własności Przykładem takiej struktury jest min Numeryczny model terenu zapisany jako prostokątna sieć punktoacutew
SIEĆ ndash struktura liniowa utworzona z odcinkoacutew o dowolnym kierunku przecinających się w węzłach Najczęściej przenoszona bezpośrednio ze Świata rzeczywistego (np sieć drogowa kolejowa telekomunikacyna itp) Uwzględnienie kierunku linii w topologicznym modelu wektorowym zapewnia Niezależnie analizę parametroacutew sieci w dwu kierunkach Tego typu struktura może być analizowana za pomocą tzw analiz sieciowych z grupy Analiz przestrzennych min Poszukiwanie optymalnej trasy pomiędzy zadanymi punktami optymalizacja lokalizacji centroacutew sieci oraz wyznaczenieZasięgu obszaru obsługi dla centroacutew w sieci i ich dostępności
DRZEWO ndash zespoacuteł skierowanych obiektoacutew liniowych łączących się w węzłach z każdego węzła może wychodzić tylko jeden obiekt Tego typu sieć Nazywana jest siecią typu hierarchicznego i może na przykład reprezentować powiązanie rzek w systemach rzecznych (rzędowość)
WYPEŁNIENIE POWIERZCHNI ndash (GT ndash poligony) ndash przyległe obszary zachowujące ściśle relacje wzajemnego położenia sąsiedztwa Najczęściej powiązane zależnościami hierarchicznymi a grupy obiektoacutew niższego rzędu tworzą pewne nadklasy o kolejnych stopniach agregacji obiektoacutew Przykładowo jednostki podziału administracyjnego kraju
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
TIN ndash TRIANGULATED IRREGULAR NETWORKWĘZŁY
PROSTOKĄTY OGRANICZAJĄCE
Jedną z najprostszych metod organizacji danych sprzyjającą szybszemu dostępowi jest wprowadzenie w stosowanych do reprezentacji obiektoacutew strukturach danych pewnych dodatkowych informacji Zadaniem ich jest uproszczone w sensie przestrzennym zobrazowanie obiektoacutew ktoacutere możemy nazwać aproksymacją obiektoacutew właściwych Istotą takiej aproksymacji będzie zachowywanie przybliżonej informacji o obiekcie zapisanej w maksymalnie uproszczony sposoacuteb wygodny do wykonywania analiz
Najpowszechniejszym ze spotykanych uproszczeń jest aproksymacja obiektu minimalnym prostokątem o bokach roacutewnoległych do osi układu wspoacutełrzędnych w ktoacuterym można zmieścić cały rozpatrywanyobiekt Prostokąt taki będziemy nazywali minimalnym prostokątem ograniczającym W literaturze polskiej można się spotkać z określaniem takiego prostokąta bdquopudełkiemrdquo
STRUKTURY DANYCH WEKTOROWYCH
SIEĆ PUNKTOacuteW ndash składa się z uporządkowanego geometrycznie zbioru obiektoacutew punktowych na podstawie ich wzajemnej relacji położenia możliwe jest wnioskowanie o poprawności zapisu danych W przypadku gdy sieć punktoacutew ma postać regularnej siatki (grid) wtedy taka strutura jest roacutewnoważna modelowi rastrowemu ponieważ dziedziczy wszystkie jego własności Przykładem takiej struktury jest min Numeryczny model terenu zapisany jako prostokątna sieć punktoacutew
SIEĆ ndash struktura liniowa utworzona z odcinkoacutew o dowolnym kierunku przecinających się w węzłach Najczęściej przenoszona bezpośrednio ze Świata rzeczywistego (np sieć drogowa kolejowa telekomunikacyna itp) Uwzględnienie kierunku linii w topologicznym modelu wektorowym zapewnia Niezależnie analizę parametroacutew sieci w dwu kierunkach Tego typu struktura może być analizowana za pomocą tzw analiz sieciowych z grupy Analiz przestrzennych min Poszukiwanie optymalnej trasy pomiędzy zadanymi punktami optymalizacja lokalizacji centroacutew sieci oraz wyznaczenieZasięgu obszaru obsługi dla centroacutew w sieci i ich dostępności
DRZEWO ndash zespoacuteł skierowanych obiektoacutew liniowych łączących się w węzłach z każdego węzła może wychodzić tylko jeden obiekt Tego typu sieć Nazywana jest siecią typu hierarchicznego i może na przykład reprezentować powiązanie rzek w systemach rzecznych (rzędowość)
WYPEŁNIENIE POWIERZCHNI ndash (GT ndash poligony) ndash przyległe obszary zachowujące ściśle relacje wzajemnego położenia sąsiedztwa Najczęściej powiązane zależnościami hierarchicznymi a grupy obiektoacutew niższego rzędu tworzą pewne nadklasy o kolejnych stopniach agregacji obiektoacutew Przykładowo jednostki podziału administracyjnego kraju
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
PROSTOKĄTY OGRANICZAJĄCE
Jedną z najprostszych metod organizacji danych sprzyjającą szybszemu dostępowi jest wprowadzenie w stosowanych do reprezentacji obiektoacutew strukturach danych pewnych dodatkowych informacji Zadaniem ich jest uproszczone w sensie przestrzennym zobrazowanie obiektoacutew ktoacutere możemy nazwać aproksymacją obiektoacutew właściwych Istotą takiej aproksymacji będzie zachowywanie przybliżonej informacji o obiekcie zapisanej w maksymalnie uproszczony sposoacuteb wygodny do wykonywania analiz
Najpowszechniejszym ze spotykanych uproszczeń jest aproksymacja obiektu minimalnym prostokątem o bokach roacutewnoległych do osi układu wspoacutełrzędnych w ktoacuterym można zmieścić cały rozpatrywanyobiekt Prostokąt taki będziemy nazywali minimalnym prostokątem ograniczającym W literaturze polskiej można się spotkać z określaniem takiego prostokąta bdquopudełkiemrdquo
STRUKTURY DANYCH WEKTOROWYCH
SIEĆ PUNKTOacuteW ndash składa się z uporządkowanego geometrycznie zbioru obiektoacutew punktowych na podstawie ich wzajemnej relacji położenia możliwe jest wnioskowanie o poprawności zapisu danych W przypadku gdy sieć punktoacutew ma postać regularnej siatki (grid) wtedy taka strutura jest roacutewnoważna modelowi rastrowemu ponieważ dziedziczy wszystkie jego własności Przykładem takiej struktury jest min Numeryczny model terenu zapisany jako prostokątna sieć punktoacutew
SIEĆ ndash struktura liniowa utworzona z odcinkoacutew o dowolnym kierunku przecinających się w węzłach Najczęściej przenoszona bezpośrednio ze Świata rzeczywistego (np sieć drogowa kolejowa telekomunikacyna itp) Uwzględnienie kierunku linii w topologicznym modelu wektorowym zapewnia Niezależnie analizę parametroacutew sieci w dwu kierunkach Tego typu struktura może być analizowana za pomocą tzw analiz sieciowych z grupy Analiz przestrzennych min Poszukiwanie optymalnej trasy pomiędzy zadanymi punktami optymalizacja lokalizacji centroacutew sieci oraz wyznaczenieZasięgu obszaru obsługi dla centroacutew w sieci i ich dostępności
DRZEWO ndash zespoacuteł skierowanych obiektoacutew liniowych łączących się w węzłach z każdego węzła może wychodzić tylko jeden obiekt Tego typu sieć Nazywana jest siecią typu hierarchicznego i może na przykład reprezentować powiązanie rzek w systemach rzecznych (rzędowość)
WYPEŁNIENIE POWIERZCHNI ndash (GT ndash poligony) ndash przyległe obszary zachowujące ściśle relacje wzajemnego położenia sąsiedztwa Najczęściej powiązane zależnościami hierarchicznymi a grupy obiektoacutew niższego rzędu tworzą pewne nadklasy o kolejnych stopniach agregacji obiektoacutew Przykładowo jednostki podziału administracyjnego kraju
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
STRUKTURY DANYCH WEKTOROWYCH
SIEĆ PUNKTOacuteW ndash składa się z uporządkowanego geometrycznie zbioru obiektoacutew punktowych na podstawie ich wzajemnej relacji położenia możliwe jest wnioskowanie o poprawności zapisu danych W przypadku gdy sieć punktoacutew ma postać regularnej siatki (grid) wtedy taka strutura jest roacutewnoważna modelowi rastrowemu ponieważ dziedziczy wszystkie jego własności Przykładem takiej struktury jest min Numeryczny model terenu zapisany jako prostokątna sieć punktoacutew
SIEĆ ndash struktura liniowa utworzona z odcinkoacutew o dowolnym kierunku przecinających się w węzłach Najczęściej przenoszona bezpośrednio ze Świata rzeczywistego (np sieć drogowa kolejowa telekomunikacyna itp) Uwzględnienie kierunku linii w topologicznym modelu wektorowym zapewnia Niezależnie analizę parametroacutew sieci w dwu kierunkach Tego typu struktura może być analizowana za pomocą tzw analiz sieciowych z grupy Analiz przestrzennych min Poszukiwanie optymalnej trasy pomiędzy zadanymi punktami optymalizacja lokalizacji centroacutew sieci oraz wyznaczenieZasięgu obszaru obsługi dla centroacutew w sieci i ich dostępności
DRZEWO ndash zespoacuteł skierowanych obiektoacutew liniowych łączących się w węzłach z każdego węzła może wychodzić tylko jeden obiekt Tego typu sieć Nazywana jest siecią typu hierarchicznego i może na przykład reprezentować powiązanie rzek w systemach rzecznych (rzędowość)
WYPEŁNIENIE POWIERZCHNI ndash (GT ndash poligony) ndash przyległe obszary zachowujące ściśle relacje wzajemnego położenia sąsiedztwa Najczęściej powiązane zależnościami hierarchicznymi a grupy obiektoacutew niższego rzędu tworzą pewne nadklasy o kolejnych stopniach agregacji obiektoacutew Przykładowo jednostki podziału administracyjnego kraju
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
INDEKSOWANIE PRZESTRZENNE
Wprowadzenie aproksymacji obiektoacutew przez prostokąty ograniczające jest niewątpliwą koniecznością z punktu widzenia efektywnego dostępu do obiektoacutew przechowywanych w systemie Należy sobie jednak zdawać sprawę że prostokąty ograniczające rozwiązują jedynie częściowo problem dostępu do danych Kolejnym bardzo ważnym czynnikiem w optymalizacji dostępu do danych SIP jest zastosowanie odpowiednich systemoacutew indeksowania przestrzennego aby przy wyborze nie przebiegać zawsze przez całą listę obiektoacutew lecz operować na pewnych uporządkowanych przestrzennie grupach obiektoacutew ktoacutere mogą posiadać roacutewnież własne (grupowe) prostokąty ograniczające Tak więc jeśli stwierdzimy że prostokąt ograniczający danej grupy daje się odrzucić wtedy ją całą pomijamy Poniżej przedstawiono charakterystykę dwoacutech najczęściej stosowanych metod indeksowania przestrzennego DRZEWA CZWOacuteRKOWE - quadtree i oraz R-DRZEWA - R-tree Stosowanie tych metod nie oznacza rezygnacji z prostokątoacutew ograniczających ktoacutere stanowią także podstawę do zastosowania metod indeksowania
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
R-DRZEWA
Indeksowanie danych z wykorzystaniem struktury R-tree podobnie jak quadtree opiera się na podziale obszaru właściwego dla bazy danych na mniejsze prostokątne fragmenty W podziale niniejszym w odroacuteżnieniu do quadtree dozwolone jest pokrywanie się utworzonych w wyniku podziału fragmentoacutew Utworzone w fragmenty organizuje się w strukturę drzewa Charakterystyczne w utworzonym drzewie jest występowanie dwoacutech rodzajoacutew węzłoacutew to jest tzw węzłoacutew pośrednich oraz liści Węzły pośrednie zawierają informacje o zakresie grupowanych węzłoacutew pośrednich niższego poziomu Liście natomiast zawierają dostęp do konkretnych obiektoacutew terenowych Struktura R-tree charakteryzowana jest maksymalną liczbą możliwych potomkoacutew w węźle M oraz liczbą minimalną obliczaną jako M2 Ilustrację organizacji struktury R-tree
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
PUNKT NALEŻĄCY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
PROCEDURA SPRAWDZENIA CZY PUNKT D NALEŻY DO OKRĘGU OPISANEGO NA ZADANYM TROacuteJKĄCIE T(ABC)
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
DWIE MOŻLIWOŚCI OKREŚLENIA OKRĘGU OPISANEGO NA TROacuteJKĄCIE BĘDĄCYM WYBRANYMI WIERZCHOŁKAMI CZWOROBOKU
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
WŁAŚCIWOŚĆ CZWOROBOKU
Niech abcd będzie czworobokiem z przekątną ab wtedy
- albo c jest w środku okręgu opisanego na troacutejkącie abd a d jest w środku okręgu opisanego na troacutejkącie abc
- albo c jest na zewnątrz okręgu opisanego na troacutejkącie abd a d jest na zewnątrz okręgu opisanego na troacutejkącie abc
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
OBSZAR WPŁYWU DLA DWU PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
OBSZAR WPŁYWU TRZECH PUNKTOacuteW W PRZESTRZENI 2D
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
OBSZAR WPŁYWU CZTERECH PUNKTOacuteW W PRZESTRZENI 2D
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
f6
v1
v2v3
v4
v5
v6
v10v9
v8
v7
e1e2
e3
e4e5 e6
e7 e8e9e10
e11
e12 e13
e14
f1
f2 f3
f4f5
REPREZENTACJA GRAFU NA PŁASZCZYŹNIE ndash WIERZCHOŁKI I KRAWĘDZIE
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
PLANARNY PROSTY GRAF LINIOWY
Planarny prosty graf liniowy (PSLG) jest osadzeniem na płaszczyźnie planarnego grafu G = (V E) z1 każdym wierzchołkiem v V odwzorowanym w roacuteżny punkt płaszczyzny2 każda krawędź e E odwzorowaną w odcinek między punktami końcowymi
wierzchołkoacutew grafu takimi że żadne dwa odcinki (segmenty) nie przecinają się z wyjątkiem ich punktoacutew końcowych
edge (14)
vertex (10)
face (6)
W ten sposoacuteb planarny graf liniowy definiuje się jako odwzorowanie matematycznego obiektu (grafu planarnego) w obiekt geometryczny Odwzorowanie wymaga zdefiniowania wspoacutełrzędnych oraz lokalizacji
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
WIELOBOKI - POLIGONY
Wielobok (polygon) jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew tworzących prostą zamkniętą krzywą (łamaną) (Wymiar przestrzeni wynosi d = 2 z definicji)
Niech v0 v1 vN-1 będzie N punktami płaszczyzny punkty nazywamy wierzchołkami verticesNiech e0 = v0v1 e1 = v1v2 eN-1 = vN-1v0 będzie N segmentami (odcinkami)Łączącymi punkty segmenty nazywamy krawedziami edges
Krawędzie ograniczają wielobok wtedy i tylko wtedy gdy przecięcie każdej pary krawędzi przyległych w danym porządku jest pojedynczym wierzhołkiem dzielonym przez te dwie krawędzie ei ei+1 = vi+1 dla i = 0 N - 1
Numeracja wierzchołkoacutew przeciwna do ruchu wskazoacutewek zegara
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
Segmenty są połączone na końcach tworzą rodzaj krzywej tworzą cykl zamknięty a krzywa zamknięta jest prosta ponieważ nieprzylegające segmenty nie przecinają się Wnętrze i zewnętrze (Interior and exterior)Twierdzenie Jordana Każda prosta zamknięta krzywa na płaszczyźnie dzieli płaszczyznę na dwie części
Poligon = interior boundaryZewnętrze exterior (nieograniczone) oraz wnętrze interior (ograniczone) W ten sposoacuteb poligon P jest obszarem płaszczyzny ograniczonym przez skończony zbioacuter odcinkoacutew (segmentoacutew) tworzących zamkniętą prostą krzywą
InteriorBoundary
POLIGONY
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
PROSTY POLIGON
Not vertices
PROSTY POLIGONPoligon jest prosty (simple) wtedy i tylko wtedy gdy nieprzyległe krawędzie nie przecinają sięei ej = dla wszystkich 0 j i N - 1 oraz j i + 1
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
LISTA DWUKIERUNKOWA KRAWĘDZI Doubly connected edge list (DCEL)
Struktura danych DCEL reprezentuje PSLGPosiada jeden element (ldquoedge noderdquo) dla każdej krawędzi w PSLG
Każdy element składa się z 6 poacutelV1 Początek krawędziV2 Koniec krawędzi (destination) założenie orientacjiF1 Ścianka po lewej stronie krawędzi względem orientacji V1V2F2 Ścianka po prawej stronie krawędzi względem orientacji V1V2P1 Index elementu pierwszej krawędzi następującej za krawędzią V1V2
podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V1
P2 Index elementu pierwszej krawędzi następującej za krawędzią V1V2podczas przechodzenia w kierunku przeciwnym do ruchu wskazoacutewek zegarado V2
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
V1 V2 F1 F2 P1 P2
e1 v1 v2 f1 f2 e2 e3
e2 v4 v1 f1 f3 e4
e3 v2 v3 f4 f2 e5
v3
v1
v2
v4
e3
e5e1
e4
e2
f2
f3
f1
f4
Przykład części PSLG i DCEL
STRUKTURA DCEL GRAFU
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
1
2 3
4
5
67
8 9
1
2
3
4
56
7 8
9
10 11
1213
F1
F2
F3F4
F5
F6 Edge V1 V2 LeftF RightF PredE NextE-------------------------------------------------1 1 2 F6 F1 7 132 2 3 F6 F2 1 43 3 4 F6 F3 2 54 3 9 F3 F2 3 125 4 6 F5 F3 8 116 6 7 F5 F4 5 107 1 5 F5 F6 9 88 4 5 F6 F5 3 79 1 7 F1 F5 1 610 7 8 F1 F4 9 1211 6 9 F4 F3 6 412 9 8 F4 F2 11 1313 2 8 F2 F1 2 10
STRUKTURA DCEL GRAFU
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
POMOCNICZE STRUKTURY DANYCHJeżeli graf PSLG posiada N wierzchołkoacutews M krawędzi oraz F ścianek wtedy z wzoru Eulera N - M +F = 2 Listę DCEL można przedstawić jako sześć tablic V1[1M] V2[1M] LeftF[1M] Right[1M] PredE[1M] and NextE[1M] Ponieważ zaroacutewno liczba ścianek i krawędzi ograniczona jest liniową funkcją N potrzebne jest O(N) do składowania tych trzech tablic
Zdefiniowanie tablicy HV[1N] po jednym wpisie dla każdego wierzchołkawpis HV[i] określa krawędź o najmniejszym indeksie z wierzchołkiem vertex vi i jest pierwszym wierszem lub indeksem krawędzi w DCEL gdzie vi jest w kolumnie tablicy V1 i V2 W ten sposoacuteb w poprzednim przykłądzie HV=(1123756104]
Podobnie definiuje się tablicę HF[1F] gdzie F= M-N+2 z jednym wpisem dla każdej ścianki HF[i] krawędź o najmniejszym indeksie z wszystkich krawędzi tworzących ściankę HF[i] i jest pierwszym wieeszem lub indeksem krawędzi w DCELgdzie Fii znajduje się w kolumnie LeftF lub RightF column Przykładowo HF=(123651)
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
Tablice HV and HF można utworzyć każdą w czasie O(N) poprzez skanowanie DCEL
OPERACJE NA DCEL
Procedura EdgesIncident (ldquoVERTEXrdquo) na podstawie danych DCEL raportuje krawędzie przyległe do wierzchołka vj w PSLG Krawędzie przyległe do vj podawane są jako indeksy do wpisoacutew w DCEL tych krawędzi w tablicy A [1 3N-6] ponieważ Mlt= 3N-6
POMOCNICZE STRUKTURY DANYCH
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
1 procedure EdgesIncident(j) VERTEX 2 begin3 a = HV[j] pobierz pierwszy wpis DCEL dla vj a jest indeksem 4 a0 = a zapamiętaj indeks początkowy 5 A[1] = a6 i = 2 i indeks dla A 7 if (V1[a] = j) then wierzchołek j jest początkiem 8 a =PredE[a] przejdź do następnej przyległej krawędzi 9 else vertex j jest końcowym wierzchołkiem krawędzi a 10 a =NextE[a] przejdź do następnej przyległej krawędzi 11 endif12 while (a a0) do Czy powroacutet do krawędzi początkowej 13 A[i] = a14 if (V1[a] = j) then15 a = PredE[a] przejdź do następnej przyległej krawędzi 16 else17 a = NextE[a] przejdź do następnej przyległej krawędzi 18 endif19 i = i + 120 endwhile21 end
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
ZBIOacuteR AFINICZNY - HIPERPŁASZYZNAW przypadku zdefiniowania k roacuteżnych punktoacutew p1 p2 hellip pk w przestrzeni Euklidesowej Ed zbioacuter punktoacutew
p = 1p1 + 2p2 + + kpk
(j 1 + 2 + + k = 1)
Jest zbiorem afinicznym (affine set) generowanym przez p1 p2 hellip pk a p jest afiniczną kombinacją zbioru p1 p2 hellip pk
W przypadku k = 2 otrzymuje się parametryczne roacutewnanie prostej to znaczy prosta jest zbiorem afinicznymDla k = 3 zbiorem afinicznym jest płaszczyznaW ogoacutelnym przypadku zbioacuter afiniczny dla zadanego k jest ldquopłaskimrdquo obiektem k - 1 wymiarowym
Mając podzbioacuter L przestrzeni Ed afiniczną otoczką (affine hull ) aff(L) jest najmnjejszy afiniczny zbioacuter zawierający L
Dla L złożonego z dwu punktoacutew lub odcinka aff(L) jest prostąDla L złożonego z 3 punktoacutew lub poligonu na płaszyźnie aff(L) jest płaszyzna
Zbioacuter k punktoacutew jest afinicznie niezależny (affinely independent) jeżeli żąden z jego podzbioroacutew nie generuje tego samego zbioru afinicznego Termin hiperpłaszyzna jest używany zamiennie jako synonim zbioru afinicznego
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
WIELOŚCIANY
Wielościan (Polyhedron) w przestrzeni Eukildesowej E3 definiuje się jako zbioacuter wielobokoacutew (poligonoacutew) na płaszczyźnie taki że każda z krawędzi poligonu jest wspoacutelna z dokładnie jedną krawędzią innego poligonu a żaden podzbioacuter poligonoacutew nie ma tej właściwości Anigielski termin (Polyhedra jest liczbą mnogą od polyhedron)
Wieloboki dzielące wspoacutelną krawędź są przyległe (adjacent) Wierzchołkami i krawędziami wielobokoacutew są wierzchołki i krawędzie wielościanuWieloboki tworzą ścianki wielościanu (facets)
Wielościan jest prosty (simple) jeżeli nie istnieje para nie przyległych ścianek mających wspoacutelny punktProsty wielościan dzieli przestrzeń na dwa podzbiory wnętrze (interior) (ograniczone) oraz zewnętrzny obszar (exterior) (nieograniczony)Pod pojęciem wielościanu często rozumie się brzeg (boundary) interior
Prosty wielościan jest wypukły (convex) jeżeli jego wnętrze jest zbiorem wypukłym
Wielościan jest trzywymiarowym odpowiednikiem wieloboku (poligonu)
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
KOMOacuteRKA (Polytope)
Poacutełprzestrzeń (half-space) jest podzbiorem przestrzeni euklidesowej Ed leżącą po jednej stronie hiperpłaszczyzny
Zbiorem wielościanowym ndash (polyhedral set) w przestrzeni Ed jest przecięcie skończonej liczby domkniętych poacutełprzestrzeni
Zbioacuter wielościanowy jest zbiorem wypukłym ponieważ poacutełprzestrzeń jest zbiorem wypukłym a przecięcie zbioroacutew wypukłych jest zbiorem wypuklym
Wieloboki planarne (d = 2) and oraz wielościany (d = 3) stanowią 2 i 3 wymiarowe przykłady ograniczonych komoacuterek (polyhedral sets)
Ograniczone d-wymiarowe zbiory wielościanowe nazywane są komoacuterkami (polytope)
Komoacuterki są wypukłe z definicji Termin ldquowypukła d-komoacuterkardquo ldquod-komoacuterkardquo and ldquokomoacuterkardquo są roacutewnoważne
Twierdzenie Otoczka wypukla skończonego zbioru punktoacutew w Ed jest wypukłą komoacuterką (d-polytope) Odwrotnie komoacuterka jest otoczką wypukłą skończonego zbioru punktoacutew
Dla d = 3 otoczka wypukla jest wypuklym wielościanemDla dowolnego d otoczka wypukła jest komoacuterką (d-polytope)
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
ŚCIANKI KOMOacuteRKIBrzeg komoacuterki opisuje jednoznacznie komoacuterkę składającą się z ścianekW przypadku d-komoacuterki (d-polytope) istnieją ścianki we wszystkich 1 hellip d wymiarach Niektoacutere z tych ścianek mają odpowiednie nazwy
W przypadku d-komoacuterki (d-polytope)
Wymiar Ścianka Nazwad d-ścianka d-komoacuterka (d-polytope)d - 1 (d-1)-ścianka facetd - 2 (d-2)-ścianka subfacet1 1-ścianka krawędź (edge)0 0-scianka wierzchołek (vertex)
W przypadku komoacuterki troacutejwymiarowej (3-polytope) - wielościanu (polyhedron)
Wymiar Ścianka Nazwad = 3 3-ścianka wielościan ndash (3-polytope polyhedron)d - 1 = 2 2-ścianka ścianka - facet planar polygond - 2 = 1 1-ścianka krawędź - subfacet edge0 0-ścianka wierzchołek - vertex
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
SYMPLEKSKomoacuterka d- wymiarowa (d-polytope) P jest sympleksem (d-simplex) wtedy i tylko wtedy jeżeli jest otoczką wypukłą (d + 1) afinicznie niezależnych punktoacutew
Każdy z podzbioroacutew d wierzchołkoacutew otoczki wypukłej sam jest sympleksem i jest ścianką (w pewnym wymiarze) P komoacuterki
d d-sympleks0 wierzchołek1 krawędź2 troacutejkąt3 czworościan
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
Nie 2-sympleksOtoczka wypukła gt 2 + 1 punktoacutew
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
KOMOacuteRKA SYMPLICJALNAKomoacuterka d-wymiarowa (d-polytope) jest symplicjalna jeżeli każda z jej ścianek jest (d-1) wymiarowym sympleksem
Przykładowo dla d = 3Otoczka wypukła zbioru punktoacutew w przestrzeni trzywymiarowej (otoczka wypukla jest komoacuterką troacutejwymiarową - 3-polytope) jest symplicjalna wtedy i tylko wtedy jeżeli każda ze ścianek jest sympleksem dwuwymiarowym ( otoczką wypukłą = troacutejkątem dokładnie trzech punktoacutew)
W ten sposoacuteb pierwszy przykładJeżeli jakakolwiek ścianka otoczki ma więcej niż 3 koplanarne punkty wtedy nie jest symplicjalna
2-sympleksOtoczka wypukła 2 + 1 punktoacutew
nie jest 2-sympleksemOtoczka wypukla gt 2 + 1 punktoacutew
Nie jest 2-sympleksemOtoczka wypukła gt 2 + 1 punktoacutew
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
LOKALIZACJA PONIŻEJPunkt p znajduje się poniżej (beneath) ścianki (facet) F komoacuterki P jeżeli punkt p znajduje się w otwartej połprzestrzeni utworzonej przez hiperpłaszyznę aff(F) zawierajacą P
Innymi słowy aff(F) jest płaszyzna nośną komoacuterki P a punkt p i komoacuterka P leżą w tej samej poacutełpłaszczyxnie ograniczonej przez aff(F) Punkt p leży poza ścianką F jeżeli p znajduje się w otwartej poacutełprzestrzeni określonej przez aff(F) nie zawierającej komoacuterki P Przypadek dla d = 2 został zilustrowany na poniższym rysunku
F
aff(F)
P p2 poniżej F
p1 poza F
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
MODYFIKACJE OTOCZEK WYPUKŁYCH ndash OTOCZKI NIEWYPUKŁE
Wyznaczanie otoczki wypukłej jest szybką i użyteczną metodą jednak nie zawsze optymalnie definiuje obszar obejmujący (otaczający) zbioacuter obiektoacutew Metoda jest wrażliwa na obserwacje niepoprawne i w wyniku może zawierać obszar ktoacutery nie jest istotny podczas analizy Otoczka wypukła zbioru punktoacutew na płaszczyźnie jest unikalna możliwe jest jednakże zdefiniowanie szeregu modyfikacji otoczek niewypukłych Tego typu otoczki mogą spełniać predefniowane kryteria zależne od konkretnej aplikacji Przykładami takich wymagań mogą być założenia że otoczka ma być wielobokiem wielobok musi być jak najbardziej wypukły powierzchnia wieloboku musi być jak najmniejsza wielobok musi odzwierciedlać gęstość punktoacutew w badanej proacutebce wielobok musi obejmować dla każdego punktu jego obszar nominalny i zawierać wszystkie punkty W literaturze istnieją trzy zasadnicze metody generowania niewypuklych otoczek (NCPH) są to
1) Ekspansja2) Kontrakcja3) Konturowanie oparte na gęstości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
EKSPANSJA
Otoczka niewypukła tworzona jest poprzez przypisanie każdemu punktowi obszaru otoczenia a następnie rozrostu ndash powiększania obszaru do chwili gdy wszystkie punkty zostają pokryte oraz ciągła zewnętrzna otoczka zostanie wyznaczona Podaną procedurę można zrealizować na kilka sposoboacutew jedna z metod polega na wyznaczeniu diagramoacutew Voronoi wszystkich punktoacutew wybraniu zewnętrznego ograniczenia skończonego zbioru jako NCPH W takim podejściu problemem jest traktowanie punktoacutew tworzących otoczkę wypuklą Drugim podejściem opartym na obiektach nie będących wielobokami jest buforowanie wszystkich punktoacutew i następnie zwiększanie szerokości stref buforowych do chwili utworzenia pojedynczej strefy W takim podejściu możliwe jest rozpatrywanie liku podstref przykładem może być sytuacja z wieloma obserwacjami leżącymi na granicy obszaru z dużym centralnym obszarem zawierającym niewiele obserwacji Jeszcze jedno podejście zakłada nakładkowanie obszaru prostokątną siatką i zdefiniowanie NCHP w odniesieniu do tej siatki (na przykład przy wymaganiu by siatka zawierała wszystkie punkty i minimalną liczbę komoacuterek otaczających każdy punkt) Jeżeli jest konieczne możliwe w takim podejściu jest wypełnienie obszaroacutew nieciągłości w siatce bez konieczności rozrostu zewnętrznych granic
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości
KONTRAKCJA
Polega na redukcji otoczki wypukłej zgodnie z wybranymi zasadami Najczęściej stosuje się systematyczne minimalizowanie Najpierw wyznaczona zostaje otoczka wypukła Powierzchnia tak zdefiniowanej otoczki zostaje obliczona i zapamiętana Następnie jeden z punktoacutew Otoczki zostaje usunięty i otoczka zostaje ponownie obliczona powierzchnia nowej otoczki zostaje policzona Procedura zostaje powtoacuterzona Dla wszystkich punktoacutew oryginalnej otoczki a punkt powodujący największy spadek w powierzchni otoczki zostaje usunięty z otoczki Procedura Zostaje powtoacuterzona iteracyjnie do chwili gdy w otoczce pozostanie predefiniowana liczba punktoacutew (np 90 punktoacutew wejściowej otoczki) bądź powierzchnia została zredukowana do zadanej wartości procentowej W wyniku otrzymujemy zoptymalizowaną otoczkę podzbioru punktoacutew wejściowych
Druga z metod obejmuje kurczenie otoczki wypukłej wokoacuteł zbioru punktoacutew W tej metodzie wybierany zostaje najdłuższy liniowy segment otoczki wypukłej i zastąpiony dwoma segmentami łączącymi dwa wejściowe punkty poprzez punkt pośredni najbliższy wejściowej Linii ndash niemalże dokładnie przeciwieństwo przesiewania punktoacutew ndash point-weeding Procedura jest powtarzana do chwili osiągnięcia zadanej liczby Iteracji najczęściej np 10 lub powierzchnia została zredukowana do pewnej wielkości