Dragon kurva med Python (1 / 3 steg)
Steg 1: Mönstret
Dragon kurvan, som alla fraktaler, har flera, successivt mer komplexa former, kallade iterationer. Ovan är de 2: a, 4rd, 6: e och 8: e iterationerna av Dragon kurvan. De är alla mer komplex än förra, men alla har samma form, men olika inriktning. Från mina personliga kommentarer verkar det att vrida 45 grader medurs varje iteration. Täcka bilden är den 17: e iterationen. Titta på ovanstående bilder, kan du se att kurvan är gjord av flera segment i rät vinkel. Du kan representera varje iteration som en sträng av höger och vänster svängar.
Den första iterationen är exempelvis: R
Den andra iterationen är: R R L
Den tredje iterationen är: R R L R R L L
Och så vidare. Till detta kan du skapa olika iterationer av Dragon kurvan genom att generera dessa strängar. Det finns många fler sätt att generera kurvan, men jag kommer att fokusera på denna metod. För att hitta nästa iteration från en du redan har:
1. Lägg till höger i strängen
2. ta den ursprungliga strängen och vända det bakåt (första karaktär, senaste först)
3. ta den spegelvänd versionen och byta alla rättigheter till lefts och lefts till rättigheter
4. Lägg den nonchalansen versionen till den nya strängen som vi gjorde i det första steget
Låt oss prova detta till att hitta den 4: e iterationen från 3: e:
1. RRLRRLL + R = RRLRRLLR
2. RRLRRLL vänt = LLRRLRR
3. LLRRLRR bytte = RRLLRLL
4. RRLRRLLR + RRLLRLL = RRLRRLLRRRLLRLL
Detta sätt finner vi att den 4: e iterationen kan representeras som RRLRRLLRRRLLRLL.
I nästa steg kommer jag visa hur man automatisera denna uppgift och dra den med python.