Geometrija I smer - deo 5: Poligoni u...
Transcript of Geometrija I smer - deo 5: Poligoni u...
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
UNIVERZITET U BEOGRADU
MATEMATIQKI FAKULTET
Geometrija I{smerdeo 5: Poligoni u ravni
Tijana Xukilovi�
19. decembar 2016
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Poligonska linija i poligon
Definicija 1.1
Poligonska linija A0 . . . An−1An je unija du�i A0A1, . . . ,An−1An koje nazivamo ivice poligonske linije. TaqkeA0, . . . An nazivaju se temena poligonske linije.
zatvorena poligonska linija = poligon
susedna temena/ivice
prost/slo�en poligon
dijagonala poligona
unutrax�a dijagonala poligona
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Poligonska linija i poligon
Definicija 1.1
Poligonska linija A0 . . . An−1An je unija du�i A0A1, . . . ,An−1An koje nazivamo ivice poligonske linije. TaqkeA0, . . . An nazivaju se temena poligonske linije.
zatvorena poligonska linija = poligon
susedna temena/ivice
prost/slo�en poligon
dijagonala poligona
unutrax�a dijagonala poligona
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Unutrx�ost poligona
O
aA3
A2
A1
A0
A10
A9
A8
A7
A6
A5
A4
A4 A3
A2A1
A0
A9
A8A7
A6A5
O
a
Slika 1: Unutrax�ost prostog i slo�enog poligona
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Triangulacija poligona
Triangulacija je razlaga�e nekog lika na trouglove.
Triangulacija prostog poligona je razlaga�e �egoveunutrax�osti unutrax�im dijagonalama koje seme�usobno ne seku.
Lema 1.1
Svaki prost poligon sa vixe od 3 temena ima unutrax�udijagonalu.
Teorema 1.1
Svaki prost poligon dopuxta triangulaciju i svakatriangulacija poligona sa n temena se sastoji od taqnon − 2 trougla.
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Triangulacija poligona
Triangulacija je razlaga�e nekog lika na trouglove.
Triangulacija prostog poligona je razlaga�e �egoveunutrax�osti unutrax�im dijagonalama koje seme�usobno ne seku.
Lema 1.1
Svaki prost poligon sa vixe od 3 temena ima unutrax�udijagonalu.
Teorema 1.1
Svaki prost poligon dopuxta triangulaciju i svakatriangulacija poligona sa n temena se sastoji od taqnon − 2 trougla.
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Triangulacija poligona
Triangulacija je razlaga�e nekog lika na trouglove.
Triangulacija prostog poligona je razlaga�e �egoveunutrax�osti unutrax�im dijagonalama koje seme�usobno ne seku.
Lema 1.1
Svaki prost poligon sa vixe od 3 temena ima unutrax�udijagonalu.
Teorema 1.1
Svaki prost poligon dopuxta triangulaciju i svakatriangulacija poligona sa n temena se sastoji od taqnon − 2 trougla.
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Triangulacija poligona
Triangulacija je razlaga�e nekog lika na trouglove.
Triangulacija prostog poligona je razlaga�e �egoveunutrax�osti unutrax�im dijagonalama koje seme�usobno ne seku.
Lema 1.1
Svaki prost poligon sa vixe od 3 temena ima unutrax�udijagonalu.
Teorema 1.1
Svaki prost poligon dopuxta triangulaciju i svakatriangulacija poligona sa n temena se sastoji od taqnon − 2 trougla.
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Primeri
Primer 1
Od datih taqaka u ravni formirati prost poligon, a zatimga triangulisati.
a) P0 = (0, 0), P1 = (5, −1), P2 = (3, 2), P3 = (6, 4),P4 = (−1, 3).
b) P0 = (−1, 3), P1 = (2, 1), P2 = (0, 0), P3 = (4, −1),P4 = (5, 3), P5 = (3, 4).
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Problem umetniqke galerije
Problem: Postaviti minimalan broj quvara koji pokrivajuqitavu galeriju.
Galerija = prost poligon sa n ivica;Quvari = taqke unutar poligona.
Chvatal: Gor�a granica = n
3 quvara!
Algoritam:
Triangulisati poligon;
Obojiti temena podeonih trouglova (3-boje�e);
Izabrati za quvare temena obojena istom bojom.
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Problem umetniqke galerije
Problem: Postaviti minimalan broj quvara koji pokrivajuqitavu galeriju.
Galerija = prost poligon sa n ivica;Quvari = taqke unutar poligona.
Chvatal: Gor�a granica = n
3 quvara!
Algoritam:
Triangulisati poligon;
Obojiti temena podeonih trouglova (3-boje�e);
Izabrati za quvare temena obojena istom bojom.
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Problem umetniqke galerije
Problem: Postaviti minimalan broj quvara koji pokrivajuqitavu galeriju.
Galerija = prost poligon sa n ivica;Quvari = taqke unutar poligona.
Chvatal: Gor�a granica = n
3 quvara!
Algoritam:
Triangulisati poligon;
Obojiti temena podeonih trouglova (3-boje�e);
Izabrati za quvare temena obojena istom bojom.
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Problem umetniqke galerije
Problem: Postaviti minimalan broj quvara koji pokrivajuqitavu galeriju.
Galerija = prost poligon sa n ivica;Quvari = taqke unutar poligona.
Chvatal: Gor�a granica = n
3 quvara!
Algoritam:
Triangulisati poligon;
Obojiti temena podeonih trouglova (3-boje�e);
Izabrati za quvare temena obojena istom bojom.
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Problem umetniqke galerije { primeri
Slika: Primeri: Quvari { plave taqke
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Poliedarski modeli i triangulacija
Slika: Model xake
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Poliedarski modeli i triangulacija
Slika: Model automobila Porsche { redukcija poligona(100%, 50%, 20%, 5% originalnih poligona)
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Primer redukcije trouglova
Slika: Model zgrade - originalni model (∼ 30 hiada trouglova)
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Primer redukcije trouglova
Slika: Model zgrade - 50% redukcije (∼ 10 hiada trouglova)
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Primer redukcije trouglova
Slika: Model zgrade - 80% redukcije (∼ 8 hiada trouglova)
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Primer redukcije trouglova
Slika: Model zgrade - 96% redukcije (∼ 7 hiada trouglova)
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Algoritmi za triangulaciju poligona
unutrax�im dijagonalama
”zavrta�em uxiju"
triangulacija monotonih poligona i monotonihplanina
Delonijeva triangulacija
triangulacija u linearnom vremenu
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Delonijeva triangulacija
Slika 5: Delonijeva triangulacija
Delonijeva triangulacija minimizuje maksimalanpolupreqnik kruga opisanog oko trougla triangulacije.Postupkom maksimizacije najma�eg ugla se ne minimizujenajve�i ugao, niti se minimizuju du�ine stranica.
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Delonijeva triangulacija
Slika 5: Delonijeva triangulacija
Delonijeva triangulacija minimizuje maksimalanpolupreqnik kruga opisanog oko trougla triangulacije.
Postupkom maksimizacije najma�eg ugla se ne minimizujenajve�i ugao, niti se minimizuju du�ine stranica.
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Delonijeva triangulacija
Slika 5: Delonijeva triangulacija
Delonijeva triangulacija minimizuje maksimalanpolupreqnik kruga opisanog oko trougla triangulacije.Postupkom maksimizacije najma�eg ugla se ne minimizujenajve�i ugao, niti se minimizuju du�ine stranica.
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
”Krivolinijska" triangulacija
Slika: Bezijerov trougao sa kontrolnim poligonom
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
”Krivolinijska" triangulacija
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
”Krivolinijska" triangulacija
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
”Krivolinijska" triangulacija
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Povrxina prostog poligona
Orijentisana povrxina poligona P (A0A1 . . . An−1)
Teorema 1.2
Za prost poligon A0A1 . . . An−1 i proizvonu taqku ravni Ava�i:
P (A0, A1, . . . , An−1) = P (A, A0, A1) + . . . + P (A, An−1, A0).
P (A0, A1, . . . , An−1) = 12
n−1∑k=0
(xkyk+1 − xk+1yk)
= 12
n−1∑k=0
xk(yk+1 − yk−1)
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Povrxina prostog poligona
Orijentisana povrxina poligona P (A0A1 . . . An−1)
Teorema 1.2
Za prost poligon A0A1 . . . An−1 i proizvonu taqku ravni Ava�i:
P (A0, A1, . . . , An−1) = P (A, A0, A1) + . . . + P (A, An−1, A0).
P (A0, A1, . . . , An−1) = 12
n−1∑k=0
(xkyk+1 − xk+1yk)
= 12
n−1∑k=0
xk(yk+1 − yk−1)
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Povrxina prostog poligona
Orijentisana povrxina poligona P (A0A1 . . . An−1)
Teorema 1.2
Za prost poligon A0A1 . . . An−1 i proizvonu taqku ravni Ava�i:
P (A0, A1, . . . , An−1) = P (A, A0, A1) + . . . + P (A, An−1, A0).
P (A0, A1, . . . , An−1) = 12
n−1∑k=0
(xkyk+1 − xk+1yk)
= 12
n−1∑k=0
xk(yk+1 − yk−1)
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Primer
Primer 2
U ravni su date taqke P0 = (1, −3), P1 = (2, −2),P2 = (−1, 2), P3 = (4, −1), P4 = (0, 3).Ispitati da li je poligon P0P1P2P3P4 prost.Ako nije, sortirati taqke P0, . . . P4 tako da poligon budeprost.Izraqunati povrxinu tako dobijenog prostog poligona.
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Konveksni omotaq
konveksan lik
konveksan omotaq skupa taqaka
P10
P0P4
P9
P7
P6
P1
P8P5P2
P3
Slika 6: Primer konveksnog omotaqa skupa od 11 taqaka
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Algoritam ”iviqne du�i" (spori algoritam)
Vremenska slo�enost O(n3)
Slika 7: Primer { 11 taqaka
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Algoritam ”iviqne du�i" (spori algoritam)
Vremenska slo�enost O(n3)
Slika 7: Primer { unutrax�a du�
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Algoritam ”iviqne du�i" (spori algoritam)
Vremenska slo�enost O(n3)
Slika 7: Primer { iviqna du�
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Algoritam ”iviqne du�i" (spori algoritam)
Vremenska slo�enost O(n3)
Slika 7: Primer { unutrax�a du�
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Algoritam ”iviqne du�i" (spori algoritam)
Vremenska slo�enost O(n3)
Slika 7: Primer { iviqna du�
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Algoritam ”iviqne du�i" (spori algoritam)
Vremenska slo�enost O(n3)
Slika 7: Primer { unutrax�a du�
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Algoritam ”iviqne du�i" (spori algoritam)
Vremenska slo�enost O(n3)
Slika 7: Primer { unutrax�a du�
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Algoritam ”iviqne du�i" (spori algoritam)
Vremenska slo�enost O(n3)
Slika 7: Primer { iviqna du�
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Algoritam ”iviqne du�i" (spori algoritam)
Vremenska slo�enost O(n3)
Slika 7: Primer { omotaq
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Algoritam ”pakova�e poklona" (gift wrap)
Vremenska slo�enost O(n2)
Slika 8: Primer { P0 = najni�a (kraj�a desna) taqka
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Algoritam ”pakova�e poklona" (gift wrap)
Vremenska slo�enost O(n2)
saviti
Slika 8: Primer { korak 1
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Algoritam ”pakova�e poklona" (gift wrap)
Vremenska slo�enost O(n2)
saviti
Slika 8: Primer { korak 2
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Algoritam ”pakova�e poklona" (gift wrap)
Vremenska slo�enost O(n2)
saviti
Slika 8: Primer { korak 3
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Algoritam ”pakova�e poklona" (gift wrap)
Vremenska slo�enost O(n2)
saviti
Slika 8: Primer { korak 4
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Algoritam ”pakova�e poklona" (gift wrap)
Vremenska slo�enost O(n2)
saviti
Slika 8: Primer { korak 5
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Algoritam ”pakova�e poklona" (gift wrap)
Vremenska slo�enost O(n2)
saviti
Slika 8: Primer { korak 6
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Algoritam ”pakova�e poklona" (gift wrap)
Vremenska slo�enost O(n2)
Slika 8: Primer { omotaq
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
”Brzi" algoritam (quickhull)
Vremenska slo�enost O(n log n)
Slika 9: Primer { poqetni qetvorougao
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
”Brzi" algoritam (quickhull)
Vremenska slo�enost O(n log n)
max
Slika 9: Primer { do�i desni
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
”Brzi" algoritam (quickhull)
Vremenska slo�enost O(n log n)
Slika 9: Primer { najdaa od nove
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
”Brzi" algoritam (quickhull)
Vremenska slo�enost O(n log n)
Slika 9: Primer { gor�i levi
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
”Brzi" algoritam (quickhull)
Vremenska slo�enost O(n log n)
Slika 9: Primer { omotaq
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Grahamov algoritam
Vremenska slo�enost O(n log n)
Slika 10: Primer { P0 = najni�a (kraj�a desna) taqka
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Grahamov algoritam
Vremenska slo�enost O(n log n)
8
7
5
4
9
210
6
3
1
0
Slika 10: Primer { sortirane taqke (prema uglu)
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Grahamov algoritam
Vremenska slo�enost O(n log n)
8
7
5
4
9
210
6
3
1
0
Slika 10: Primer { stek: [10 0]
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Grahamov algoritam
Vremenska slo�enost O(n log n)
8
7
5
4
9
210
6
3
1
0
Slika 10: Primer { stek: [10 0 1]
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Grahamov algoritam
Vremenska slo�enost O(n log n)
8
7
5
4
9
210
6
3
1
0
Slika 10: Primer { stek: [10 0 1 2]
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Grahamov algoritam
Vremenska slo�enost O(n log n)
8
7
5
4
9
210
6
3
1
0
Slika 10: Primer { stek: [10 0 1 2 3]
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Grahamov algoritam
Vremenska slo�enost O(n log n)
8
7
5
4
9
210
6
3
1
0
Slika 10: Primer { stek: [10 0 1 2 3 4]
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Grahamov algoritam
Vremenska slo�enost O(n log n)
8
7
5
4
9
210
6
3
1
0
Slika 10: Primer { stek: [10 0 1 2 3 �A4 5]
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Grahamov algoritam
Vremenska slo�enost O(n log n)
8
7
5
4
9
210
6
3
1
0
Slika 10: Primer { stek: [10 0 1 2 3 �A5 6]
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Grahamov algoritam
Vremenska slo�enost O(n log n)
8
7
5
4
9
210
6
3
1
0
Slika 10: Primer { stek: [10 0 1 2 3 6 7]
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Grahamov algoritam
Vremenska slo�enost O(n log n)
8
7
5
4
9
210
6
3
1
0
Slika 10: Primer { stek: [10 0 1 2 3 6 7 8]
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Grahamov algoritam
Vremenska slo�enost O(n log n)
8
7
5
4
9
210
6
3
1
0
Slika 10: Primer { stek: [10 0 1 2 3 6 7 �A8 9]
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Grahamov algoritam
Vremenska slo�enost O(n log n)
8
7
5
4
9
210
6
3
1
0
Slika 10: Primer { stek: [10 0 1 2 3 6 �A7 9]
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Grahamov algoritam
Vremenska slo�enost O(n log n)
8
7
5
4
9
210
6
3
1
0
Slika 10: Primer { omotaq [10 0 1 2 3 6 9]
Poligonska linija i poligon u ravni Konveksni omotaq skupa n taqaka ravni
Primeri
Primer 3
Odrediti konveksni omotaq skupa taqaka P0 = (1, 3),P1 = (−2, 0), P2 = (−3, 5), P3 = (4, 2), P4 = (1, 1), P5 = (6, 4),P6 = (2, −3), P7 = (5, 5), P8 = (5, −1).Zadatak rexiti:
a) Crta�em.
b) Grahamovim algoritmom.