#fibonacci

tord_dellsen@diasp.eu

#JustForFun i created this #fibonacci spiral using #Python's #turtle module

import logging
import turtle
import time

SPEED_INT = 10  # 1-10 where 0 is as fast as possible
DEFAULT_HEADING = 180
DEFAULT_SCALE = 2.5
START_X = -480
START_Y = -230
logging.basicConfig(level=logging.DEBUG)

# Turtle setup
screen = turtle.getscreen()
# screen.screensize(1900, 1000)
t = turtle.getturtle()
turtle.title("Fibonacci spiral")
t.shape("turtle")
t.speed(SPEED_INT)
t.pensize(3)
center_pos = t.pos()

turtle.setheading(DEFAULT_HEADING)
t.penup()
turtle.setx(START_X)
turtle.sety(START_Y)
t.pendown()
start_pos = t.pos()

time.sleep(1)


def fibonacci(n):
    if n < 0:  Exception("Fibonacci function cannot take negative numbers")
    if n == 0: return 0
    if n == 1: return 1
    return fibonacci(n - 1) + fibonacci(n - 2)


def draw_fib_spiral(
        i_scale: float = DEFAULT_SCALE,
        i_color: str = "black",
        i_nr_of_circles: int = 5,
        i_write_fib_nr: bool = True):
    t.pencolor(i_color)
    t.penup()
    t.setpos(start_pos)
    turtle.setheading(DEFAULT_HEADING)
    t.pendown()
    for i in range(0, 4 * i_nr_of_circles):
        fibonacci_number = fibonacci(2 + i)
        radius = fibonacci_number * i_scale
        old_pos = t.pos()
        t.circle(radius, -90)
        new_pos = t.pos()

        old_pen_size = t.pensize()
        t.pensize(1)
        t.setpos(new_pos[0], old_pos[1])
        t.setpos(old_pos)
        t.setpos(old_pos[0], new_pos[1])
        t.setpos(new_pos)
        t.pensize(old_pen_size)
        delta_x = new_pos[0] - old_pos[0]
        delta_y = new_pos[1] - old_pos[1]

        if i_write_fib_nr:
            font_size = int(4 + i ** 1.7)
            font = ("Arial", font_size, "normal")
            t.pencolor((0, 0.7, 0))
            old_pos = t.pos()
            t.penup()
            t.setpos(old_pos[0] - delta_x / 2, old_pos[1] - delta_y / 2 - font_size / 2)
            t.write(fibonacci_number, font=font, align="center")
            t.setpos(old_pos)
            t.pendown()
            t.pencolor(i_color)


"""
COLOR_LIST = [
    (0, 0, 0),
    (1.0, 0, 0), (0, 1.0, 0), (0, 0, 1.0),
    (1.0, 0, 1.0), (1.0, 1.0, 0), (0, 1.0, 1.0),
    (0.5, 0, 0), (0, 0.5, 0), "pink"
]
for i in range(0, 9):
    ratio = 1 - 0.1 * i
    draw_fib_spiral(i_scale=ratio, i_color=COLOR_LIST[i])
"""
draw_fib_spiral(i_color="black", i_write_fib_nr=True)

t.hideturtle()
turtle.done()
horschtel@pod.geraspora.de

Irgendwie sind die #Schnecken zu schnell für mich!
Oder ich zu schnell mit dem Rad - Danke für den Hinweis @christianemandt@diasp.eu!
Haben #Spinnen und Schnecken eigentlich gleiche Vorfahren?

#Fibonacci #Diadvent22, #Diadvent2022, #Diadvent-5-12-22, #Adventskalender, #Adventskalender2022, #snailsmas, #snailsmas22, #snailcontent, #Calendrier-de-l-Avent, #Advent-Calendar, #Calendario-dell-Avvento #Dezember22, #photo, #Foto, #mywork

asi@diaspora.kindred.at

https://ozorianprophet.eu/discussion/universal-day-of-fibonacci-november-23/

"From a single cell or seed to all of mankind and galaxies, Fibonacci numbers appear in micro and macro phenomena of Nature, and sequences of these numbers can be found in the growth of every living thing, a fundamental magical coordination system that Nature’s seemingly random complexities have in common."

#fibonacci #numbers #zero #plur #goaforlife #highonlife