Глава 7 · Глубокое погружение в Turtle
Дуги
circle() умеет рисовать не только полные окружности, но и их части — дуги заданного размера.
Дуга — это часть окружности. У circle()
есть второй, необязательный аргумент extent — сколько градусов
окружности нужно нарисовать.
От четверти до полного круга
dugi_podpisannye.py
import turtle
screen = turtle.Screen()
screen.setup(width=460, height=460)
artist = turtle.Turtle()
artist.speed(0)
artist.hideturtle()
arcs = [(60, "#5B24F9"), (90, "#DB2777"), (180, "#059669"), (270, "#D97706"), (360, "#0D0230")]
for extent, color in arcs:
artist.penup()
artist.goto(0, 0)
artist.setheading(0)
artist.pendown()
artist.pencolor(color)
artist.pensize(3)
artist.circle(90, extent)
artist.penup()
artist.write(f" {extent}°", font=("Arial", 11, "bold"))
screen.exitonclick()
Результат выполнения
dugi_kod.py
arcs = [(60, "#5B24F9"), (90, "#DB2777"), (180, "#059669"), (270, "#D97706"), (360, "#0D0230")]
for extent, color in arcs:
artist.pencolor(color)
artist.circle(90, extent)
| extent | Что рисуется |
|---|---|
| 90° | четверть окружности |
| 180° | половина окружности (полукруг) |
| 270° | три четверти окружности |
| 360° (или не указан) | полная окружность |
Полукруг + прямая = купол
Комбинируя дугу с обычной линией, легко получить составные фигуры — например, полукруглый купол домика или арку. Мы используем именно такую дугу в мини-проекте «смайлик» в конце главы — улыбка окажется дугой в 120°.
Практика: дуги разного размера
Модуль turtle открывает нативное окно Python — выполните локально в VS Code, PyCharm или Jupyter
Практика выполняется локально