Глава 6 · Рисуем классные вещи с помощью Turtle

Заставляем черепашку менять направление

Кроме относительных поворотов left()/right(), у черепашки есть способ задать направление абсолютно — вне зависимости от того, куда она смотрела раньше.

Команды left()/right() из предыдущего раздела поворачивают черепашку относительно её текущего курса. Иногда удобнее задать направление абсолютно — «смотри строго на север», независимо от того, куда черепашка смотрела раньше.

Абсолютный курс: setheading()

В Turtle направления измеряются в градусах против часовой стрелки, начиная с востока (0°): восток — 0°, север — 90°, запад — 180°, юг — 270°.

setheading.py
import turtle

screen = turtle.Screen()
artist = turtle.Turtle()

artist.setheading(90)   # смотрим строго вверх, неважно, куда смотрели раньше
artist.forward(100)

artist.setheading(180)  # смотрим строго влево
artist.forward(100)

screen.exitonclick()

Возврат домой: home()

Возвращает черепашку в исходную точку (0, 0) с исходным курсом (0°) — удобно, чтобы начать рисунок заново, не создавая нового объекта:

home.py
artist.home()
heading() — узнать текущий курс
Если нужно не задать курс, а узнать его — используйте artist.heading(): она возвращает текущее направление в градусах, не меняя его.
Практика в Jupyter Notebook
06-03-povorot.ipynb · setheading(), heading() и home()
Открыть ноутбук →