Geometria Obliczeniowa III

background image

Trian_mon(P)

Input: y-monotoniczny wielokąt zapamiętany jako zbiór boków,
Output: triangulacja D jako zbiór krawędzi.

1. Wyodrębnij prawy i lewy łańcuch punktów,
2. Uporządkuj zbiór wierzchołków ze względu na współrzędną y

},

,

{

2

1

u

u

S

3.

4. For j=3 until n-1 do
5. If

j

u

oraz ostatni punkt w S są na różnych łańcuchach then
wstaw przekątną od do punktów z S, tak aby
odciąć trójkąt od wielokąta.
wstaw oraz do S.
else
usuń ostatni wierzchołek z S.

j

u

1

j

u

j

u

6.

background image

Trian_mon(P) c.d.

7. Usuń kolejne wierzchołki S jeśli tylko przekątna z

j

u

do tego wierzchołka zawiera się wewnątrz wielokąta.
Wstaw te przekątne do D. Wstaw ostatni wyrzucony z S
wierzchołek spowrotem do S.
8. Wstaw do S.
Endif
9. Dodaj przekątne poprowadzone do wszystkich
Wierzchołków z S za wyjątkiem pierwszego i ostatniego.

j

u

n

u

Tw. Wielokąt monotoniczny może być striangularyzowany
w czasie O(n log n) z wykorzystaniem O(n) pamięci.

background image

Zawieranie się odcinka

w wielokącie

A

B

Jeśli odcinek przecina się z brzegiem na
pewno nie zawiera się w wielokącie.
Jeśli końcami odcinka są wierzchołki
wielokąta to obowiązują
tutaj te same zasady.

Odcinek nie zawiera się w wielokącie, nie jest przekątną.
Przecina brzeg wielokąta.

Odcinek nie zawiera się w wielokącie,
pomimo tego, że nie przecina brzegu.

background image

Zawieranie się odcinka

w wielokącie - c.d.

Zachodzi następujące twierdzenie:

Tw. Odcinek zawiera się w wielokącie wtedy i tylko wtedy,
gdy nie przecina brzegu oraz przynajmniej jeden jego punkt
wewnętrzny należy do wnętrza wielokąta

.

Dowód: Jest oczywistym, że jeśli odcinek zawiera się w
wielokącie to nie przecina brzegu i każdy jego punkt
wewnętrzny zawiera się w wielokącie w szczególności
jakiś wybrany.
Z drugiej strony, jeśli odcinek nie przecina brzegu i jeden
z jego punktów wewnętrznych zawiera się wewnątrz wielokąta
to wszystkie jego punkty też muszą się w nim zawierać, bo w
przeciwnym razie ten odcinek przecinałby brzeg wielokąta. c.n.d.

background image

Przynależność punktu do

wielokąta

Zachodzi następująca własność:

Punkt P należy do wnętrza wielokąta wtedy i tylko wtedy, gdy
półprosta pozioma wychodząca z tego punktu przecina
nieparzystą liczbę razy brzeg tego wielokąta.

P

Q

Punkt Q nie należy do wielokąt,
natomiast P należy.

A

background image

Przecięcie odcinka z

półprostą

A

B

P

Przecięcie półprostej l z odcinkiem [A,B]

l={X=P+t[1,0]: t>0}

X

,

),

,

(

),

,

(

____

AB

v

y

x

B

y

x

A

B

B

A

A

Równanie prostej m przechodzącej przez punkty A, B:
m={X=A+sv, s jest liczbą rzeczywistą}.
Jeśli X jest punktem wspólnym l i m to:
X=P+t[1,0]=A+sv, czyli t[1,0]-sv=PA. Niech

],

,

[

y

x

v

v

v

wtedy

),

,

(

]

,

[

P

A

P

A

y

x

y

y

x

x

sv

sv

t

stąd

.

,

P

A

x

y

P

A

x

x

sv

t

v

y

y

s

background image

Jeśli t>0 oraz 0<s<1 jest
przecięcie
W przeciwnym razie nie ma.

Przecięcie odcinka z

półprostą c.d.

P

Bardzo często w zastosowaniach odcinki
brzegu są równoległe do osi układu
współrzędnych. W sytuacji jak na rysunku

A

B

0

y

v

wobec czego powyższe wzory nie
mają zastosowania.

l

.

,

P

A

x

y

A

P

x

x

sv

t

v

y

y

s

background image

Przecięcie odcinka z

półprostą c.d.

Jeśli

|

|

y

v

wtedy możemy uznać, że prosta l i odcinek
[A,B] są równoległe. Przecięcie z brzegiem
jest, jeśli

.

|

)

(

|

A

l

Zwykle przyjmujemy

].

10

,

10

[

8

14

W obliczeniach numerycznych zwykle układ punktów przeskalowywuje
się i przesuwa, tak aby punkty mieściły się w kwadracie K=[0,1]×[0,1]
i tak, żeby kwadrat K był najmniejszy ze wszystkich kwadratów
o bokach równoległych do osi układu współrzędnych spełniających
tą własność.

background image

Przeskalowanie układu

punktów

Niech

.

,

,

1

,

,

},

,

,

1

:

)

,

(

{

}.

,

max{

,

max

,

min

,

max

,

min

},

,

,

1

:

)

,

(

{

min

'

min

'

'

'

'

'

min

max

min

max

1

max

1

min

1

max

1

min

n

i

y

y

y

x

x

x

gdzie

n

i

y

x

P

P

y

y

x

x

y

y

y

y

x

x

x

x

n

i

y

x

P

P

i

i

i

i

i

i

i

i

n

i

i

n

i

i

n

i

i

n

i

i

i

i

background image

Podział Dirichleta

.

,

,

,

1

,

j

i

N

i

P

P

m

i

P

Def. Wielościanem Voronoi stowarzyszonym z punktem

m

i

dla

P

i

,

,

1

nazywamy zbiór:

.

)

,

,

,

(

,

||

||

}.

,

,

1

,

||

||

||

||

:

{

2

1

1

2

N

N

N

i

i

j

i

N

i

x

x

x

x

x

x

i

j

m

j

P

x

P

x

x

V

Lemat: Niech

||}.

||

||

||

:

{

,

,

,

B

x

A

x

x

U

B

A

B

A

N

N

wówczas U jest hiperpłaszczyzną o normalnej

AB

n

oraz

.

2

U

B

A

C

background image

Dowód

N=3

N=2

A

B

C

C

A

U

U

.

0

||

||

||

||

)

,

(

2

,

)

(

2

,

2

2

,

)

(

)

(

),

,

,

(

),

,

,

(

),

,

,

(

||,

||

||

||

,

2

2

1

2

1

2

1

1

2

1

1

2

1

2

1

1

2

1

2

1

2

1

1

1

B

A

AB

x

albo

b

a

b

a

x

czyli

b

b

x

x

a

a

x

x

rozpisaniu

po

b

x

a

x

b

b

B

a

a

A

x

x

x

B

x

A

x

U

x

N

i

i

N

i

i

N

i

i

i

i

N

i

i

N

i

i

i

N

i

i

N

i

i

N

i

i

i

N

i

i

N

i

i

i

N

i

i

i

N

N

N

background image

Lemat c.d.

.

.

.

.

0

)

,

(

,

0

)

,

(

2

,

0

)

,

(

2

,

0

)

,

(

)

,

(

)

,

(

)

,

(

)

,

(

)

,

(

)

,

(

2

,

0

)

,

(

)

,

(

)

,

(

)

,

(

2

,

0

)

,

(

)

,

(

)

,

2

(

2

)

,

(

2

,

0

||

||

||

||

)

,

(

2

)

,

(

2

)

,

(

2

,

,

2

,

2

2

d

n

c

n

CX

AB

CX

AB

CX

czyli

B

B

A

A

B

B

B

A

B

A

A

A

AB

CX

B

B

A

A

A

B

B

A

AB

C

X

B

B

A

A

AB

B

A

AB

C

X

B

A

n

C

n

C

AB

X

mamy

U

C

B

A

C

AB

n

Niech

background image

Własności wielościanów

Voronoi

background image

Własności wielościanów
Voronoi

background image

Własności wielościanów

Voronoi

background image

||}.

||

||

||

:

{

)

(

},

{

},

,

,

1

:

{

,

1

j

i

k

i

j

j

N

i

i

P

x

P

x

x

V

i

k

k

i

P

P

Wzór ten wynika
bezpośrednio z definicji.

i

V

ii)

(

- są zbiorami otwartymi,

k

j

N

j

V

iii

1

_

,

)

(

Dowód: na pewno

k

j

N

j

V

1

_

,

wykażemy, że

k

j

N

j

V

1

_

,

niech

||},

||

,

||,

min{||

||

||

,

1

,

1

k

i

N

P

x

P

x

P

x

k

i

i

x

wówczas

k

j

P

x

P

x

j

i

,

,

1

||,

||

||

||

stąd

.

N

x

c.n.d.

background image

Własności wielościanów

Voronoi

(iv) Brzeg wielościanu Voronoi składa się z części hiperpłaszczyzn
wyznaczonych przez przecięcia z częściami półprzestrzeniami
przestrzeni n-wymiarowej.

A

B

)

(

_

_

B

A

A

B

B

A

||}

||

||

||

:

{

,

1

j

i

k

i

j

j

N

i

P

x

P

x

x

V

||}

||

||

||

:

{

j

i

N

P

x

P

x

x

A

background image

Własności wielościanów

Voronoi

(v)

.

,

j

i

V

V

i

i

Dowód: Hipoteza

.

||,

||

||

||

||

||

||

||

j

i

P

x

P

x

P

x

P

x

V

x

V

x

V

V

x

i

j

j

i

j

i

j

i

Co prowadzi do sprzeczności. C.n.d.

(vi)

i

V

wypukłe.

Dowód:

},

0

)

,

(

:

{

,

1

n

Cx

x

H

H

V

N

j

k

j

j

i

C

n

niech

.

.

.

.

0

)

,

(

)

,

(

0

)

,

(

,

0

)

,

(

.

0

,

,

1

,

0

)

,

(

,

0

)

,

(

,

d

n

c

n

Cy

n

Cx

n

Cy

n

Cx

n

Cy

n

Cx

H

y

x

j

background image

Układy punktów w

przestrzeni a

„wędrująca kula”

Tw. Z)

N

N

P

P

P

,

,

,

1

0

Układ punktów nie

leżących na jednej hiperpłaszczyźnie.
T) Istnieje dokładnie jedna sfera przechodząca
przez te punkty.

Dowód:Szukamy punktu X, który spełnia:

.

,

,

1

||,

||

||

||

0

N

i

P

X

P

X

i

)].

,

(

)

,

[(

2

1

)

,

(

),

,

(

)

,

(

)

,

(

2

),

,

(

)

,

(

2

)

,

(

)

,

(

)

,

(

2

)

,

(

),

,

(

)

,

(

0

0

0

0

0

0

0

0

0

0

0

P

P

P

P

X

P

P

P

P

P

P

P

P

X

P

P

P

X

X

X

P

P

P

X

X

X

P

X

P

X

P

X

P

X

i

i

i

i

i

i

i

i

i

i

i

background image

Układy punktów w

przestrzeni a

„wędrująca kula” c.d.

W postaci macierzowej:

.

)

,

(

)

,

(

)

,

(

)

,

(

)

,

(

)

,

(

2

1

)

(

)

(

)

(

0

0

0

0

2

2

0

0

1

1

2

1

0

2

0

1

0

P

P

P

P

P

P

P

P

P

P

P

P

x

x

x

P

P

P

P

P

P

N

N

N

T

N

T

T

Na podstawie lematu układ wektorów

N

P

P

P

P

P

P

0

2

0

1

0

,

,

,

jest układem liniowo niezależnym co oznacza, że macierz tego
układu jest nieosobliwa. C.n.d.

background image

Układy punktów w

przestrzeni a

„wędrująca kula” c.d.

Lemat:

część wspólna dwóch przecinających się sfer zawiera się

w jednoznacznie wyznaczonej płaszczyźnie.

2

O

1

O

x

Dowód: Punkt wspólny x leżący na przecięciu
obu sfer spełnia:

,

||

||

,

||

||

2

2

2

2

2

1

2

1

r

O

x

r

O

x

,

)

,

(

)

,

(

2

)

,

(

,

)

,

(

)

,

(

2

)

,

(

2

2

2

2

2

2

1

1

1

1

r

O

O

O

x

x

x

r

O

O

O

x

x

x

Po odjęciu stronami:

,

||

||

||

||

)

,

(

2

2

1

2

2

2

1

2

2

2

1

r

r

Q

Q

O

O

x

czyli

.

||

||

||

||

)

,

(

2

2

1

2

2

2

1

2

2

2

1

Q

Q

r

r

O

O

x

c.n.d.

background image

I twierdzenie Delaunay’a

Z) (i)

1

}

{

i

i

T

T

rodzina sympleksów dzielących

,

N

to znaczy

.

1

_

j

i

i

i

N

T

T

j

i

oraz

T

(ii) Dowolny zbiór ograniczony ma część wspólną tylko ze
skończoną liczbą sympleksów z

.

T

(ii) Niech

1

}

{

i

i

P

P

będzie zbiorem wszystkich punktów

sympleksów rodziny

.

T

Niech

i

T

K

oznacza kulę przechodzącą przez wszystkie wierzchołki

danego sympleksu

.

N

i

T

T)

i

T

j

i

K

P

T

T

,

, 

nie zawiera wierzchołków w swoim wnętrzu i

odwrotnie

j

T

i

T

j

i

j

i

K

sympleks

wymiarowy

n

T

T

j

i

T

T

}

1

{

,

nie zawiera wierzchołków

j

T

w swoim wnętrzu i odwrotnie.

background image

I twierdzenie Delaunay’a

c.d.

Spełnione założenia
tw. Delaunay’a

Nie spełnione założenia
tw. Delaunay’a

Def. Układ punktów
nazywamy układem osobliwym, jeśli k>N+1 oraz wszystkie jego
punkty należą do jednej sfery w

N

k

P

P

P

P

S

}

,

,

,

{

2

1

.

N

Przykład N=1

N

P

P

P

P

P

S

}

,

,

,

{

3

2

1

0

background image

Konstrukcja

triangularyzacji

Delaunay’a

Def. Zbiór punktów

N

P

nazywamy osobliwym jeśli istnieje

osobliwy podukład

.

P

S

1. Startujemy z dowolnego punktu

.

k

P

2. Znajdujemy punkt

m

P

leżący na okręgu

o środku

k

P

I nie zawierający wewnątrz innego
punktu z P.

3. Znajdujemy punkt

s

P

leżący okręgu przechodzącym przez

m

P

,

k

P

nie zawierający w swoim wnętrzu innych punktów.

background image

Konstrukcja

triangularyzacji

Delaunay’a N=2 c.d.

4. Konstruujemy trójkąt o wierzchołkach

.

,

,

s

m

k

P

P

P

5. Startujemy z dowolnego boku tego tego trójkąta. Prowadzimy
okrąg przechodzący przez końce tego boku i punkt SP, tak aby

ten okrąg nie zawierał w swoim wnętrzu innych punktów z P.

6. Proces kontynuujemy aż do wyczerpania punktów.


Document Outline


Wyszukiwarka

Podobne podstrony:
GEOMETRIA OBLICZENIOWA I
geometra obliczeniowa
Obliczenia III
Geometria obliczeniowa — lista 5, zadanie 4
obliczenia III 2010
Geometria Obliczeniowa V
Geometria obliczeniowa — lista 5, zadanie 4
Geometria obliczeniowa Wprowadzenie
Geometria Obliczeniowa II
Geometria obliczeniowa – przecinanie się odcinków 2
geometria, 2.0 B-U-D-O-W-N-I-C-T-W-O, 2.2 OBLICZENIA, 2.2.1 Geometria Wykreślna
Obliczenia III fermentacja bioodpadów
Geometria Obliczeniowa IV
GEOMETRIA OBLICZENIOWA I
geometra obliczeniowa
Geometria obliczeniowa Wprowadzenie geobli
Projekt II obliczenia (III) (2) doc

więcej podobnych podstron