algorytm.org

Wypukłość figury



Baza Wiedzy
wersja offline serwisu przeznaczona na urządzenia z systemem Android
Darowizny
darowiznaWspomóż rozwój serwisu
Nagłówki RSS
Artykuły
Implementacje
Komentarze
Forum
Bookmarki






Sonda
Implementacji w jakim języku programowania poszukujesz?

Forum www.algorytm.org :: Geometria obliczeniowa i grafika komputerowa
Witaj Gość   
[Zarejestruj się]  
[Zaloguj się]
Zamieść odpowiedź
 Wypukłość figury

W jaki sposob mogę sprwadzić czy figura jest wypukła?

myslalem, ze iloczyn skalarny pomoze, ale pokazuje sie, ze nie zawsze ;/
Cytuj
Mając kolejne wierzchołki sprawdzasz po 3 kolejne: układasz je w macierz i wyliczasz wyznacznik:



|ax,ay|
W(|bx,by|) = ax*by + bx*cy + cx*ay - ax*cy - bx*ay - cx*ay
|cx,cy|

Jeżeli dla wszystkich kolejnych 3 wierzchołków wyznaczniki mają te same znaki (tzn. +, albo -), to figura jest wypukła (jeśli gdzieś wyszło 0, to znaczy że kąt wynosi 180 stopni)



Przykładowo dla figury abcd liczysz wyznaczniki dla abc, bcd, cda. dab.
Cytuj
dzięki. juz zglebilem sie bardziej i chcialbym, zeby ten temat byl odpowiedzia na pytania wszystkich innych szukajacych tego.

jedyne co moge zaproponowac jeszcze (bo to lubie robic najbardziej - ale dziala to w druga strone, lubie tez byc krytykowanym - ale tylko nie bezpodstawnie, oczywiscie),
to wspomnienie o tym skad wzial sie taki magiczny wzor.

otoz jest to po prostu wzor na iloczyn wektorowy w 3d, z tym, ze na plaszczyznie XOY, czyli z=0.

wyznacznik dlatego, ze dlugosc iloczynu wektorowego to wlasnie wyznacznik, a dlugosc iloczynu wektorowego dla rownolegloboku rozpietego na wektorach a i b, to po prostu iloczyn iloczynu ich dlugosci oraz sin'usa kata miedzy nimi.

•Jest tez inne podejscie: kazdy bok traktujemy jako wektor (ogolniej: twór abstrakcyjny skierowany) i sprwadzamy czy dla kazdego wektora (boku) wielokata kazdy nastepny jest po tej samej stronie.
Cytuj
photo
jakby ktoś chciał przepisywać ten wzór powyżej, to jest źle, bo cx*ay się skraca
ma być ax*by+bx*cy+ay*cx-by*cx-ax*cy-ay*bx
A jak się czepiać szczegółów, to wyznacznik liczy się z macierzy kwadratowych
Cytuj
Zamieść odpowiedź Strona # 
Szybka odpowiedź

Kod:    


Powered by ccBoard