Skrętność wielokątów

Dziś geometria ;P

W pracy ostatnio pojawił się problem – czy wierzchołki wielokąta są ułożone zgodnie z kierunkiem ruchu wskazówek zegara czy wręcz przeciwnie? Potrzebna była szybka i tania (w sensie obliczeniowym) metoda określenia owego ułożenia.

skretny

Ok, patrząc na obrazek widzimy od razu ;P A programowo?

Jak widać na rysunku wyznaczamy sobie 4 (w pewnych szczególnych przypadkach 3) punkty brzegowe – górny, prawy, dolny, lewy – opisując prostokąt na wielokącie. Znalezienie tych punktów jest proste i tanie – wystarczy raz przejrzeć listę współrzędnych.

Zapisujemy sobie numery tych punktów prawoskrętnie do array-a: 1,2,7,9. Jeśli ciąg jest rosnący – mamy prawoskrętny. Jeśli malejący – lewoskrętny.

Ok, a co, jeśli nam się figura obróci o 180 stopni i dostaniemy: 7,9,1,2 ? Ciąg nie jest już rosnący ;P Rozwiązań jest parę. Można szukać punktu nieciągłości i próbować splice tablicy zrobić i merge potem. Można sprawdzić, jaki jest największy element w tablicy i dodać taką wartość do wszystkich mniejszych. Przy 4 elementach będzie to nadal szybkie i proste: 7, 9, 10(1+9), 11(2+9).

Jak sprawdzić, czy ciąg jest rosnący?

$up = $points;
sort($up);
if(join($up)==join($points))
{
echo "rosnący";
}

Cała operacja jest prosta i szybka – zależna liniowo od ilości wierzchołków wielokąta.

Karen! Ty oszukistko!


from Zbigniew 'zibi' Jarosik
to karen@karen.com.pl
date Mon, Jul 27, 2009 at 11:45 AM
subject Niezgodność towaru z umową

Witam!

Dwa lata temu w gdańskim salonie Państwa firmy kupiłem laptopa Toshiba
Tecra A8. Zakup trwał sporo czasu (w sklepie spędziłem prawie 3h) -
kupowałem sprzęt do pracy, na długi czas. Wydałem sporo kasy i jak do
tej pory byłem bardzo zadowolony - również z obsługi w salonie -
sprzedawca sporo się nabiegał. Niestety, dziś pojawiła się w końcu
potrzeba użycia sprzętowej wirtualizacji. I - przykra niespodzianka -
okazuje się, że laptop owej nie wspiera. Zaskoczenie bardzo niemiłe i
niespodziewane, bo to było jedno z kryteriów zakupu.

Dziś dowiedziałem się, że T5500 występuje w 4 odmianach i tylko jedna
z nich wspiera VT. Niestety, nie ta, która jest w moim laptopie.

Jako że zakupu dokonałem 2 lata temu nie mogę się powołać na
niezgodność towaru z umową, a że VT jest mi niezbędne, czeka mnie więc
na dniach zakup nowego laptopa. Jeszcze nie wiem co kupię, pewne tylko
jest, że nie ani ten, ani żaden następny laptop nie będzie zakupiony w
Państwa firmie.

--
Zbigniew 'zibi' Jarosik
cell: +48 667956686
jid: tapiau@gmail.com
gg: 2830
http://zibi.nora.pl/

Nie doczekałem się żadnej reakcji.

MegaTotal – inwestycja w muzykę

Od paru dni bobruję po MegaTotal.pl. Jest to ciekawe miejsce, gdzie artyści mogą promować swoje produkcje, sprzedawać je i zbierać fundusze na pełne, normalne wydanie płyty.

Oczywiście na sajcie dostępne są różne mechanizmy społecznościowe – forum, recenzje, propozycje, składanki. Ale społeczność społecznością – mniensko najważniejsze – muza!

A trochę tego tam jest. Bardzo różnorodnie – i niedrogo ;P Ogólnie jak przystało na twórców niszowych z poziomem bywa różnie. Ale trafiają się perełki, jak na przykład to:

Słucham tego ostatnio na okrągło – kawałek całkiem poważnej el-muzyki.

Na start po rejestracji w sajcie dostaje się 100 groszy. W realiach serwisu to całkiem sporo, tym bardziej, że każdego kawałka da się wysłuchać w całości nie płacąc. Płacimy dopiero kupując kawałek. A właściwie – co najciekawsze – nie kupując, tylko inwestując w niego. Jeśli się trochę człek zakręci to można z owych 100 groszy odpowiednio zainwestowanych zrobić sobie źródełko funduszy pozwalające na inwestowanie w następną muzę i następną… która też da jakiś przychód. Więc dobrze rozgrywając można się zaopatrzyć całkiem nieźle w niszowe brzmienia (chwilami naprawdę dobre) właściwie nie ponosząc żadnych kosztów.

Ogólnie – bardzo mi się podoba idea finansowania artystów – może nie całkiem bezpośrednio – MegaTotal jest przecież pośrednikiem – ale przy bardzo małych oporach przy przekazywaniu finansów. W końcu widzę, gdzie trafiają moje pieniądze ;P.