Gosperova křivka neboli Peano-Gosperova křivka [1] , pojmenovaná po objeviteli Billu Gosperovi , je křivka vyplňující prostor . Je fraktální křivka podobná dračí a Hilbertově křivce .
Čtvrtá fáze Gosperovy křivky | Přerušovaná čára od červené tečky k zelené ukazuje jeden krok konstrukce Gosperovy křivky. |
Gosperova křivka může být reprezentována pomocí Lindenmeierova systému s následujícími pravidly:
V tomto případě A a B znamenají pohyb vpřed, + znamená otočení doleva o 60º a - znamená otočení o 60º doprava pomocí stylu programování "želva" jako v Logo nebo Python3 .
Logo program pro kreslení gosper křivky pomocí želví grafiky ( online verze ):
to rg :st :ln make "st :st - 1 make "ln :ln / sqrt 7 if :st > 0 [rg :st :ln rt 60 gl :st :ln rt 120 gl :st :ln lt 60 rg :st :ln lt 120 rg :st :ln rg :st :ln lt 60 gl :st :ln rt 60] if :st = 0 [fd :ln rt 60 fd :ln rt 120 fd :ln lt 60 fd :ln lt 120 fd :ln fd :ln lt 60 fd :ln rt 60] end to gl :st :ln make "st :st - 1 make "ln :ln / sqrt 7 if :st > 0 [lt 60 rg :st :ln rt 60 gl :st :ln gl :st :ln rt 120 gl :st :ln rt 60 rg :st :ln lt 120 rg :st :ln lt 60 gl :st :ln] if :st = 0 [lt 60 fd :ln rt 60 fd :ln fd :ln rt 120 fd :ln rt 60 fd :ln lt 120 fd :ln lt 60 fd :ln] endProgram lze spustit např. příkazem rg 4 300nebo gl 4 300.
Fragmenty letadla plné křivek se nazývají Gosperovy ostrovy . Prvních několik iterací je uvedeno níže:
Gosperův ostrov dokáže vydláždit letadlo . Ve skutečnosti lze sedm kopií Gosperova ostrova spojit dohromady a vytvořit podobnou postavu, ale zvětšenou o faktor √7 ve všech směrech. Jak můžete vidět na obrázku níže, výsledkem této operace je menší verze další iterace křivky. Pokračování v procesu donekonečna dává dlaždici roviny. Křivka samotná může být rovněž prodloužena do nekonečna, aby vyplnila celou rovinu.
Křivky | |||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Definice | |||||||||||||||||||
Transformováno | |||||||||||||||||||
Nerovinné | |||||||||||||||||||
Plochá algebraika |
| ||||||||||||||||||
Ploché transcendentální |
| ||||||||||||||||||
fraktál |
|