diff --git a/notebooks/seminar04.ipynb b/notebooks/seminar04.ipynb index eb77a479b2a1af6a4a733091372d19f06b55cb6d..dc1f589c7e1fffe3f6346ff5ba9acf941317e4e2 100644 --- a/notebooks/seminar04.ipynb +++ b/notebooks/seminar04.ipynb @@ -1316,39 +1316,40 @@ "metadata": {}, "outputs": [], "source": [ - "import turtle\n", + "import turtle, math\n", "\n", "zoe = turtle.Turtle()\n", "zoe.speed(10)\n", "\n", - "def ring(t, length, radius, k):\n", - " t.color(colors[k])\n", - " t.up()\n", - " t.forward(length)\n", - " t.down()\n", - " t.circle(radius)\n", - " \n", "\n", + "# colors of the olympic rings \n", + "colors = [\"blue\", \"yellow\", \"black\", \"green\", \"red\"] \n", "\n", - "def rings(t, length, radius):\n", - " t.width(10)\n", - " k = 0\n", - " for i in range(3):\n", - " ring(t, length, radius, k)\n", - " k += 1\n", - " t.penup()\n", - " t.goto(radius,-radius)\n", - " t.pendown()\n", - " for i in range(2):\n", - " ring(t, length, radius, k)\n", - " k += 1\n", "\n", - " \n", - "colors = [\"blue\", \"black\", \"red\", \"yellow\", \"green\"]\n", + "# jumps to correct position for drawing a circle\n", + "def goto(t, radius, i):\n", + " t.fd(radius*1.1) \n", + " if i % 2 == 0:\n", + " t.rt(90)\n", + " t.fd(radius)\n", + " t.lt(90) \n", + " else:\n", + " t.lt(90)\n", + " t.fd(radius)\n", + " t.rt(90) \n", "\n", - "rings(zoe, 125, 50)\n", + "# draws the olympic rings\n", + "def olympic_rings(t, radius):\n", + " t.width(math.sqrt(radius)) \n", + " for i in range(5): # draw five circles\n", + " t.color(colors[i]) # remove this line for drawing without colors\n", + " t.circle(radius) \n", + " t.up()\n", + " goto(t, radius, i) # jump to next starting point \n", + " t.down()\n", "\n", "\n", + "olympic_rings(zoe, 50)\n", "\n", " \n", "turtle.mainloop()\n",