środa, 10 marca 2021

Dywan Sierpińskiego

Dywan Sierpińskiego – to fraktal otrzymany z kwadratu za pomocą podzielenia go na dziewięć (3x3) mniejszych kwadratów, usunięcia środkowego kwadratu i ponownego rekurencyjnego zastosowania tej samej procedury do każdego z pozostałych ośmiu kwadratów. Nazwa pochodzi od nazwiska Wacława Sierpińskiego.


Co to dla nas oznacza? Jak się to ma do zbioru Cantora?

Zapewne widzicie, że taki dywan to coś do zbioru Cantora bardzo podobnego, tyle że dwuwymiarowego. Zamiast wycinać odcinek o długości ⅓ wycinamy kwadrat o boku ⅓ .

Odpowiednio do tego musimy więc zmodyfikować nasze procedury:


W programie brakuje kilku wywołań rekurencyjnych (od linii 28), ale myślę, że już sobie z tym poradzicie.

Ponieważ procedura rect() robi trochę roboty za nas, obliczenia są nieco prostsze niż dla poprzedniego ćwiczenia. Warto jednak przyjrzeć się, czy aby znowu nie jesteśmy trochę oszukiwani przez grafikę rastrową, zwłaszcza przy bardzo małych wartościach limitu.

Pośrednim etapem uzupełniania wywołań mogą być takie “ułomne” dywany jak poniżej:

Brak komentarzy:

Prześlij komentarz