Nalezení jádra polygonální oblasti Zpracoval: Šafránek David.

Slides:



Advertisements
Podobné prezentace
Konstrukce trojúhelníku
Advertisements

Základy rovnoběžného promítání
Průsečík přímky a roviny
Konstrukce trojúhelníku
Sestrojení úhlu o velikosti 60° pomocí kružítka.
Rozdělení úhlů podle velikosti
Rekonstrukce povrchu objektů z řezů Obhajoba rigorózní práce 25. června 2003 Radek Sviták
Dostupné z Metodického portálu ISSN: , financovaného z ESF a státního rozpočtu ČR. Provozováno Výzkumným ústavem pedagogickým v Praze.
Konstrukce trojúhelníku
Dostupné z Metodického portálu ISSN: , financovaného z ESF a státního rozpočtu ČR. Provozováno Výzkumným ústavem pedagogickým v Praze.
SMĚRNICOVÝ TVAR ROVNICE PŘÍMKY
Diskrétní matematika Opakování - příklady.
Aplikace teorie grafů Základní pojmy teorie grafů
Rozhodněte o její pohyblivosti (určete počet stupňů volnosti).
Škola: SŠ Oselce, Oselce 1, Nepomuk,
Analytická geometrie II.
Varianty Turingova stroje Výpočet funkcí pomocí TS
autor: RNDr. Jiří Kocourek
autor: RNDr. Jiří Kocourek
Lineární programování Simplexový algoritmus
Základy lineárního programování
(polohové vlastnosti) POZNÁMKY ve formátu PDF
LOGISTICKÉ SYSTÉMY 7/14.
Množinová symbolika.
Dvojosý stav napjatosti
LINEÁRNÍ OPTIMALIZAČNÍ MODEL
Křivočarý pohyb bodu. křivočarý pohyb bodu,
POZNÁMKY ve formátu PDF
SÍŤOVÁ ANALÝZA.
GONIOMETRIE Následující prezentace doplňuje kapitolu goniometrie o
Konstrukce trojúhelníku s kružnicí opsanou v zadání
Konstrukce trojúhelníku s kružnicí opsanou v zadání
Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Mgr. Jan Kryšpín. Obchodní akademie a Střední odborná škola logistická, Opava, příspěvková.
ORIENTOVANÉ GRAFY V této části se seznámíme s následujícími pojmy:
6_Geometrické obrazce Mnohoúhelník Lomená čára: Uzavřená lomená čára:
Formulace a vlastnosti úloh lineárního programování
2.1.2 Graf kvadratické funkce
Datové struktury a algoritmy Část 12 Výpočetní geometrie Computational Geometry Petr Felkel.
1 Jádro polygonální oblasti 36VGE ZS 2007/2008 FEL ČVUT Roman Hocke.
Dostupné z Metodického portálu ISSN: , financovaného z ESF a státního rozpočtu ČR. Provozováno Výzkumným ústavem pedagogickým v Praze.
Modulární systém dalšího vzdělávání pedagogických pracovníků JmK v přírodních vědách a informatice CZ.1.07/1.3.10/ Grafové pojmy Projekt učitelé.
Dostupné z Metodického portálu ISSN: , financovaného z ESF a státního rozpočtu ČR. Provozováno Výzkumným ústavem pedagogickým v Praze.
Gradientní metody Metoda největšího spádu (volný extrém)
Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Mgr. Jan Kryšpín. Obchodní akademie a Střední odborná škola logistická, Opava, příspěvková.
VY_42_INOVACE_417_OSOVÁ SOUMĚRNOST 1
Obchodní akademie, Ostrava-Poruba, příspěvková organizace Vzdělávací materiál/DUMVY_32_INOVACE_08B11 AutorRNDr. Marcela Kepáková Období vytvořeníDuben.
POZNÁMKY ve formátu PDF
Název: BOD, PŘÍMKA, ÚSEČKA
2.KÓTOVANÉ PROMÍTÁNÍ Označíme: s směr promítání, sp
Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Mgr. Jan Kryšpín. Obchodní akademie a Střední odborná škola logistická, Opava, příspěvková.
Voroného (Voronoi) diagramy
Sestrojení úhlu o velikosti 90° pomocí kružítka.
Vektor Autor: Mgr. Eva Hubáčková Použití: odvození a procvičení pojmu vektor Datum vypracování: Datum pilotáže:.2013 Anotace: Interaktivní prezentace.
SMĚRNICOVÝ TVAR ROVNICE PŘÍMKY
ŘEZ HRANOLU ROVINOU OB21-OP-STROJ-KOG-MAT-S
POZNÁMKY ve formátu PDF
Základní konstrukce Osa úhlu.
Konstrukce trojúhelníku s kružnicí opsanou v zadání
Konstrukce trojúhelníku
Konstrukce trojúhelníku
Konstrukce trojúhelníku
Konstrukce trojúhelníku
Sestrojení úhlu o velikosti 60° pomocí kružítka.
Geografické informační systémy
Základní konstrukce Osa úhlu.
Konstrukce trojúhelníku
Toky v sítích.
Konstruktivní úlohy na rotačních plochách
Čtverec (známe-li délku jeho strany)
Trojúhelník 1 trojúhelník ABC určují tři různé body A, B, C, které neleží v přímce.
Transkript prezentace:

Nalezení jádra polygonální oblasti Zpracoval: Šafránek David

36VGE - Výpočetní geometrie2 Slovník pojmů hranaedgee vrcholvertexv polorovinahalf-planeH polygonpolygon P jádrokernelK ve směru hod. ručičekclockwise protisměru hod. ručičekcounterclockwise Hvězdicovitý polygonstar-shaped, star polygon polygon s neprázdným jádrem

36VGE - Výpočetní geometrie3 Terminologie vrcholů  v 0 konvexní, vypouklý (convex)  vnitřní úhel < 180  v 1 konkávní, vydutý, introspektivní (reflex)  vnitřní úhel > 180

36VGE - Výpočetní geometrie4 Problém  máme polygon s N vrcholy v rovině, zkonstruujeme jeho jádro

36VGE - Výpočetní geometrie5 Definice  množina bodů odkud jsou všechny body polygonu přímo viditelné, aniž by výhled křížila hrana

36VGE - Výpočetní geometrie6 Grafická ukázka definice

36VGE - Výpočetní geometrie7 Odborná definice Jádro je průnik N polorovin. Každá hrana polygonu P určuje polorovinu, ve které jádro musí ležet. Průnik vnitřních (levých - postupujeme-li proti směru hodinových ručiček) polorovin.

36VGE - Výpočetní geometrie8 Pozice bodu vůči orientované přímce  vlevo nebo vpravo  a, b, c určuje přímku  x a y určuje bod  řešíme rovnici w = a. x + b. y + c  w=0: leží na přímce  w < 0: leží v pravé polorovině  w > 0: leží v levé polorovině  při zvolení opačného normálového vektoru (a, b) se změní w znaménko

36VGE - Výpočetní geometrie9 Algoritmus  Algoritmus v pořadí prochází vrcholy P a konstruuje konvexní polygony K i. Každý z těchto polygonů může i nemusí být ohraničený.  Polygon K i+1 je tvořen průnikem H n n=0..i+1, a i=0..N-2 (N je počet vrcholů/hran počátečního polygonu).  Takto zkonstruované K i je společný průnik polorovin ležících vlevo od hran P.

36VGE - Výpočetní geometrie10 Důsledky algoritmu  Tento výsledek má zřejmé důsledky:  1) K N-1 =K(P) - aplikujeme na všechny hrany  2) K 1 nadmnožinou K 2 - K i+1 = K i "and" H i

36VGE - Výpočetní geometrie11 Základní algoritmus  počítáme průnik poloroviny s polygonem  výpočetně náročné

36VGE - Výpočetní geometrie12 Chytrý algoritmus  zrychlení pomocí vrcholů F a L, při průniku s polorovinou vymezují jen část jádra, tudíž neprohledáváme celé dosud nalezené jádro

36VGE - Výpočetní geometrie13 Vstup  polygon P - uspořádané vrcholy (hrany)  e i následované v i

36VGE - Výpočetní geometrie14 Výstup  když bude K(P) neprázdný, pak výstup bude také ve formě posloupnosti vrcholů (hran)

36VGE - Výpočetní geometrie15 Triviální případ  N < 3: není polygon  N = 3: jádro je totožné s polygonem

36VGE - Výpočetní geometrie16 Úvodní krok  Nalezení konkávního vrcholu a vygenerování výchozího neuzavřeného jádra K 1. Není-li vrchol nalezen, pak polygon P je konvexní, jedná se o triviální případ - jádro je totožné s polygonem K(P)=P. Tudíž připustíme, že v 0 je konkávní vrchol.  Určení F 1 jako bod v nekonečnu na přímce e 1 ve směru v 0 a L 1 obdobně na přímce e 0 ve směru v 0.

36VGE - Výpočetní geometrie17 Grafická zobrazení prvního kroku

36VGE - Výpočetní geometrie18 Hlavní krok  máme-li K i, pak zhotovíme K i+1 tak, že vezmeme další vrchol v pořadí (v i ) a spočteme K i+1  dále upravíme F i a L i tak, že spojnice s aktuálním bodem v i polygonu neprotíná žádné jeho hrany  detailní popis algoritmu obsahuje značné větvení (konvexní | konkávní vrchol, F (L) leží vpravo | vlevo)

36VGE - Výpočetní geometrie19 Podmínka pro F a L

36VGE - Výpočetní geometrie Konkávní vrchol, F leží vpravo od od e i+1 v i+1

36VGE - Výpočetní geometrie21  procházíme K proti směru hodinových ručiček od F dokud nenalezneme průsečík (w 1 ) s e i+1 v i+1, dojdeme-li až k L, pal je K(P)=Ø

36VGE - Výpočetní geometrie22  procházíme K po směru hodinových ručiček od F dokud nenalezneme průsečík (w 2 ) s e i+1 v i+1, ořízneme K podle hrany w 1 w 2

36VGE - Výpočetní geometrie23  F: je na konci hrany w 1 w 2

36VGE - Výpočetní geometrie24  L: procházíme K proti směru hodinových ručiček od L dokud nenajdeme vrchol w, takový, že následující vrchol leží vpravo od v i+1 (v i+1 w), pak L i+1 =w jinak zůstává

36VGE - Výpočetní geometrie Konkávní vrchol, F leží vlevo od od e i+1 v i+1

36VGE - Výpočetní geometrie26  K zůstává stejné.  F: procházíme K protisměru hodinových ručiček od F dokud nenajdeme vrchol w, takový, že následující vrchol leží vpravo od v i+1 (v i+1 w), pak F i+1 =w jinak zůstává

36VGE - Výpočetní geometrie27  L: stejně jako v případě 1.1  1.1: procházíme K proti směru hodinových ručiček od L dokud nenajdeme vrchol w, takový, že následující vrchol leží vpravo od v i+1 (v i+1 w), pak L i+1 =w jinak zůstává

36VGE - Výpočetní geometrie L leží na nebo vpravo od e i+1 v i+1

36VGE - Výpočetní geometrie29  procházíme K po směru hodinových ručiček od L dokud nenalezneme průsečík (w 1 ) s e i+1 v i+1, dojdeme-li až k L je K(P)=Ø

36VGE - Výpočetní geometrie30  procházíme K proti směru hodinových ručiček od L dokud nenalezneme průsečík (w 2 ) s v i e i+1. Provedeme oříznutí hranou w 1 w 2

36VGE - Výpočetní geometrie L leží vlevo od e i+1 v i+1

36VGE - Výpočetní geometrie32  K zůstává stejné.  F: stejně jako v případě 1.2  1.2 procházíme K protisměru hodinových ručiček od F dokud nenajdeme vrchol w, takový, že následující vrchol leží vpravo od v i+1 (v i+1 w), pak F i+1 =w jinak zůstává

36VGE - Výpočetní geometrie33  L: je-li K ohraničené tak jako 1.1 jinak zůstává  1.1: procházíme K proti směru hodinových ručiček od L dokud nenajdeme vrchol w, takový, že následující vrchol leží vpravo od v i+1 (v i+1 w), pak L i+1 =w jinak zůstává

36VGE - Výpočetní geometrie34 Složitost  paměťová složitost O(n)  jádro polygonální oblasti může být zkonstruováno v optimálním čase O(n)  nejhorší složitost nastane pro následující instanci - polygon bez jádra, kde má daný algoritmus časovou složitost O(N 2 )

36VGE - Výpočetní geometrie35 Nejhorší případ

36VGE - Výpočetní geometrie36 Řešení  ukončit algoritmus jakmile obteče v úhlu větším než 3π kterýkoliv bod částečného jádra K

36VGE - Výpočetní geometrie37 Applet  bonn.de/I/GeomLab/VisPolygon/index.html.en

36VGE - Výpočetní geometrie38 Použití  zjištění, zda je polygon hvězdicovitý  umístění všesměrového vysílače

36VGE - Výpočetní geometrie39 Další algoritmy  Competitive strategy (Závodní strategie)  nalezení bodu jádra polygonální oblasti - maximálně 5.333x delší než nejkratší cesta, předpokládá rozhled 360° - využití v robotice

36VGE - Výpočetní geometrie40 Zobecnění do více prostorů  při přechodu do trojrozměrného prostoru je třeba přímky nahradit rovinami, a najít uspořádání všech trojúhelníků (tesselace) v objektu

36VGE - Výpočetní geometrie41 Kde získat další informace  Franco P. Preparata: Computational Geometry 

36VGE - Výpočetní geometrie42 Dotazy

36VGE - Výpočetní geometrie43 Děkuji za pozornost