Урок 5. Координаты и точки
На этом уроке мы познакомимся с координатами и научимся перемещать Черепашку в точную точку экрана. Это поможет рисовать фигуры, схемы и рисунки по заданным точкам.
Главная идея урока
Раньше мы управляли Черепашкой командами движения: вперёд, налево, направо. Теперь мы сможем указывать точное место, куда она должна перейти.
Для этого используется координатная плоскость: каждая точка на экране имеет две координаты — x и y.
Как устроены координаты?
В центре окна находится точка (0, 0). Это начало координат.
x > 0 — точка правее центра.x < 0 — точка левее центра.y > 0 — точка выше центра.y < 0 — точка ниже центра.Важно понять
Координаты записываются в скобках через запятую:
(100, 50)
Первое число — это x, второе число — это y.
Значит, точка (100, 50) находится правее центра на 100 шагов и выше центра на 50 шагов.
Новые команды
t.goto(100, 50)x = 100, y = 50.t.home()(0, 0).t.setheading(0)Пример 1. Линия в точку
Черепашка начинает в центре экрана. Переместим её в точку (150, 100).
import turtle
t = turtle.Turtle()
t.pensize(5)
t.color("blue")
t.goto(150, 100)
turtle.done()
Так как перо было опущено, Черепашка провела линию от центра (0, 0) до точки (150, 100).
Задание 1. Линия в другую точку
Измени программу так, чтобы Черепашка провела линию из центра в точку (-120, 80).
Условия:
- цвет линии — зелёный;
- толщина линии — 6;
- конечная точка —
(-120, 80).
Подумай: точка будет слева или справа от центра?
Пример 2. Квадрат по координатам
Фигуру можно рисовать не только командами forward() и left(), но и переходами по точкам. Нарисуем квадрат по его вершинам.
import turtle
t = turtle.Turtle()
t.speed(0)
t.pensize(5)
t.color("purple")
t.goto(120, 0)
t.goto(120, 120)
t.goto(0, 120)
t.goto(0, 0)
turtle.done()
Черепашка последовательно прошла по вершинам квадрата и вернулась в начальную точку.
Задание 2. Прямоугольник по координатам
Нарисуй прямоугольник по точкам:
(0, 0)(180, 0)(180, 90)(0, 90)(0, 0)
Условия:
- цвет линии — оранжевый;
- толщина линии — 5;
- рисунок должен замкнуться.
Мини-разбор: как перейти без лишней линии?
Если нужно начать рисунок не из центра, лучше сначала поднять перо, перейти в нужную точку, а потом снова опустить перо.
t.penup()t.goto(-100, -50)t.pendown()Пример 3. Две фигуры в разных местах
Нарисуем два квадрата в разных частях экрана. Между ними не должно быть соединяющей линии.
import turtle
t = turtle.Turtle()
t.speed(0)
t.pensize(4)
t.color("blue")
t.penup()
t.goto(-180, 0)
t.pendown()
t.goto(-100, 0)
t.goto(-100, 80)
t.goto(-180, 80)
t.goto(-180, 0)
t.color("red")
t.penup()
t.goto(80, 0)
t.pendown()
t.goto(160, 0)
t.goto(160, 80)
t.goto(80, 80)
t.goto(80, 0)
turtle.done()
Команда goto() особенно удобна, когда нужно поставить фигуру в точное место.
Задание 3. Три квадрата
Нарисуй три отдельные квадрата в разных местах экрана.
Условия:
- первый квадрат — слева;
- второй квадрат — в центре;
- третий квадрат — справа;
- между квадратами не должно быть соединяющих линий;
- каждый квадрат должен быть своего цвета.
Подсказка: перед переходом к новому квадрату используй t.penup().
Пример 4. Рисунок по точкам: молния
С помощью координат удобно рисовать ломаные линии и простые значки. Нарисуем молнию по нескольким точкам.
import turtle
t = turtle.Turtle()
t.speed(0)
t.pensize(7)
t.color("orange")
t.penup()
t.goto(-40, 120)
t.pendown()
t.goto(40, 20)
t.goto(0, 20)
t.goto(60, -120)
turtle.done()
Здесь Черепашка просто соединяет точки в нужном порядке.
Задание 4. Свой знак по точкам
Придумай и нарисуй простой знак по координатам.
Можно сделать:
- молнию;
- стрелку;
- корону;
- флажок;
- геометрическую эмблему.
Условия:
- используй команду
goto()не меньше четырёх раз; - начни рисунок не из центра;
- перед началом рисунка используй
penup()иpendown(); - толщина линии должна быть не меньше 4.
Пример 5. Возвращение домой
Команда home() возвращает Черепашку в центр экрана — в точку (0, 0).
import turtle
t = turtle.Turtle()
t.pensize(5)
t.color("green")
t.goto(150, 100)
t.home()
turtle.done()
В этом примере Черепашка сначала ушла в точку (150, 100), а затем вернулась в центр.
Типичные ошибки
- Перепутали порядок координат: в
goto(x, y)сначала пишетсяx, потомy. - Забыли запятую между координатами: нужно
t.goto(100, 50). - Хотели перейти без следа, но забыли поднять перо командой
t.penup(). - Начали новую фигуру с нужной точки, но забыли снова опустить перо командой
t.pendown(). - Ожидали, что точка
(-100, 50)будет справа, хотя отрицательныйxозначает движение влево.
Творческое задание
Создай рисунок по координатам.
Можно нарисовать:
- домик;
- корону;
- стрелку;
- карту маршрута;
- эмблему;
- созвездие.
Условия:
- используй не меньше 6 команд
goto(); - используй минимум 2 разных цвета;
- используй
penup()иpendown()для перехода без следа; - рисунок должен занимать разные части экрана, а не только центр.
Проверь себя
- Что означает точка
(0, 0)? - За что отвечает координата
x? - За что отвечает координата
y? - Что делает команда
t.goto(100, 50)? - Как перейти в новую точку без лишней линии?
- Что делает команда
t.home()?
Итог урока
Сегодня мы познакомились с координатами и научились перемещать Черепашку в точные точки экрана. Теперь можно рисовать не только по направлению движения, но и по заранее заданным координатам.
На следующем уроке мы познакомимся с циклами и научимся заменять повторяющиеся команды короткой конструкцией for.