Сообщить об ошибке.

Сведения о позиции пера на холсте в модуле turtle в Python

Состояние пера на холсте: позиция, угол, расстояние

В материале представлены команды, позволяющие получить информацию о позиции пера/карандаша на холсте, в том числе угол и расстояние до нужной точки в модуле turtle.

Примечание: можно использовать как функции модуля, так и одноименные методы экземпляра пера/холста. например:

>>> import turtle
# функция модуля
>>> turtle.position()
# создание экземпляра пера
>>> pen = turtle.Turtle()
>>> pen.position()

Содержание:


turtle.position(),
turtle.pos():

Метод turtle.position() и turtle.pos() возвращает текущее местоположение пера на холсте в виде (x, y) (как вектор Vec2D).

>>> turtle.pos()
# (440.00,-0.00)

turtle.towards(x, y=None):

Метод turtle.towards() возвращает угол между линией от положения пера к положению, заданному координатами (x, y) на холсте, вектором или другим пером. Результат зависит от начальной ориентации пера, которая зависит от режима: 'standard'/'world' или 'logo'.

Аргументы:

  • x: число или пара/вектор чисел или экземпляр пера.
  • y: число, если x - число, иначе None.
>>> turtle.goto(10, 10)
>>> turtle.towards(0,0)
# 225.0

turtle.xcor():

Метод turtle.xcor() возвращает координату x положения пера на холсте.

>>> turtle.home()
>>> turtle.left(50)
>>> turtle.forward(100)
>>> turtle.pos()
# (64.28,76.60)
>>> print(round(turtle.xcor(), 5))
# 64.27876

turtle.ycor():

Метод turtle.ycor() возвращает координату y положения пера на холсте.

>>> turtle.home()
>>> turtle.left(60)
>>> turtle.forward(100)
>>> print(turtle.pos())
# (50.00,86.60)
>>> print(round(turtle.ycor(), 5))
# 86.60254

turtle.heading():

Метод turtle.heading() возвращает текущий угол пера от начального направления turtle.home(). Значение зависит от режима модуля turtle, заданного в turtle.mode().

>>> turtle.home()
>>> turtle.left(67)
>>> turtle.heading()
# 67.0
>>> turtle.forward(50)
>>> turtle.right(67)
>>> turtle.forward(50)
>>> turtle.heading()
# 0.0

turtle.distance(x, y=None):

Метод turtle.distance() возвращает расстояние от текущего положения пера до указанных координат (x, y), заданного вектора или заданного другого пера в шаговых единицах черепахи.

Аргументы:

  • x: число или пара/вектор чисел или экземпляр пера.
  • y: число, если x - число, иначе None.
>>> turtle.home()
>>> turtle.distance(30,40)
# 50.0
>>> joe = turtle.Turtle()
>>> joe.forward(77)
>>> turtle.distance(joe)
# 77.0