Команды управления «черепашкой»
Полный список команд управления «черепашкой» можно получить через help('turtle'). Вот некоторые из них:
Up() – поднятие пера, чтоб не оставалось следа перемещения
Down() – опускание пера, чтоб при перемещении оставался след
Goto(x,y) – перемещение пера в точку с координатами (x,y)
Color(‘строка цвета’) – изменение цвета пера
Width(n) – установка толщины пера в точках экрана
Forward(n) – перемещение пера вперёд на n точек
Backward(n) – перемещение пера назад на n точек
Right(k) – перемещение пера вправо на k точек
Left(k) – перемещение пера влево на k точек
Circle(r) – рисует окружность радиуса |r|
Write(‘строка’) – печатает текст в текущем положении “пера”
Clear() – очистка области рисования
#_*_coding: utf8_*_
import turtle
#
turtle.reset()
turtle.tracer(0)
turtle.width(2) #ширина пера
# лицо
turtle.up() #поднятие пера
x=0
y=100
turtle.goto(x,y) # установка пера в точку (0,100)
turtle.fill(1) # начало рисования закрашенной области
turtle.color('#ffaa00') # установка оранжевого цвета
turtle.down() # опускание пера
turtle.circle(100) # изображение окружности
turtle.fill(0) # завершение рисования закрашенной области
turtle.color('black')
turtle.circle(100)
turtle.up()
# глаза
x=45
y=50
turtle.goto(x,y)
turtle.down()
turtle.color('#0000aa')
turtle.fill(1)
turtle.circle(7)
turtle.up()
turtle.fill(0)
#
x=-55
y=-50
turtle.goto(x,y)
turtle.right(45)
turtle.width(3)
turtle.down()
turtle.color('#aa0000')
turtle.circle(80,90)
turtle.up()
#
turtle.right(135)
x=0
y=50
turtle.goto(x,y)
turtle.width(2)
turtle.color('black')
turtle.down()
turtle.forward(100)
#
turtle._root.mainloop()
Пример рисунка
Рисование
turtle.color(color)– цвет курсора color;
turtle.penup()– Поднимаем курсор, что бы при перемещении курсора непроисходило рисование линий;
turtle.pendown()– Опускаем курсор, что бы при перемещении курсора происходило рисование линий;
turtle.goto(x, y)– Перейти в точку с координатами xи y;
turtle.circle(radius)– Нарисовать круг с радиусом = radius;
turtle.right(degrees)– Повернуть курсор на право на degreesградусов;
turtle.left(degrees)– Повернуть курсор на лево на degrees градусов;
turtle.forward(length)– Нарисовать линию длиной = length;
turtle.done()– завершение программы, использующей turtle.
import turtle #подключить модуль turtle
Команды для перемещения курсора:
forward(n) #вперед на n пикселей
backward(n) #назад на n пикселей
left(n) #влево на n градусов
right(n) #вправо на n градусов
circle(r) #начертить окружность радиуса r, с центром слева от курсора, если r>0, справа, если r<0
circle(r,n) #начертить дугу радиуса r, градусной мерой n против часовой стрелки, если r>0, по часовой стрелке, если r<0
goto(x,y) #переместить курсор в точку с координатами (x,y)
Команды рисования:
down() #опустить курсор для рисования
up() #поднять курсор
width(n) #ширина следа курсора в n пикселей
сolor(s) #где s #цвет рисования курсора пример: "red", "blue"
begin_fill(),end_fill() #рисует закрашенные области (начало и конец рисунка)
Дополнительно:
reset() #очищается экран, возвращает курсор
сlear() #очистить экран
write(s) #вывести строку s в точке нахождения курсора
radians() #мера измерения углов в радианы
degrees() #мера измерения углов в градусах
mainloop() #задержка окна
tracer(f) #режим отладки
Цвета, используемые в графике:
Aqua, blue, fuchsia, green, maroon, orange, pink, purple, red, yellow, violet, indigo, chartreuse, lime,Рисунки многоугольников
import turtleturtle.begin_fill()turtle.penup()turtle.width(3)#ширина пераturtle.right(90)#90гр. вправоturtle.goto(40, 40)turtle.pendown()for i in range(4) : turtle.forward(70) turtle.right(90)turtle.done() | import turtleturtle.begin_fill() turtle.penup() turtle.width(3) turtle.goto(20,20) turtle.pendown() for i in range(6) : turtle.forward(70) turtle.right(60) turtle.done() |
Рисунок окружности
import turtleturtle.begin_fill()
turtle.penup()
turtle.width(5) # ширина пера
turtle.right(90) # Повернуть курсор на 90 гр. Вправо
turtle.goto(40, 40)
turtle.pendown()
fori inrange(35) :
turtle.forward(70) # Пройти вперед расстояние 70
turtle.right(10)
turtle.done()
Рисунок треугольника
import turtleturtle.begin_fill()turtle.penup()turtle.goto(0,0)turtle.pendown()for i in range(3) turtle.forward(60) # Пройти вперед расстояние 70 turtle.right(120) # Повернуть курсор на 120 гр. вправоturtle.end_fill()turtle.done()Рисунок окружности с надписью
import turtleturtle.color("black") # Устанавливаем цвет черепашкиturtle.penup() # Поднимаем курсорturtle.goto(-110, -25) # Переходим по нужным координатамturtle.pendown() # Опускаем курсорturtle.circle(45) # Рисуем круг с радиусом 45turtle.color("black")turtle.penup()turtle.goto(0, 80)turtle.pendown()turtle.write("ТҮГӘРӘК") # Вывод надписи " ТҮГӘРӘК"Рисунок звезды
from turtle import*color('orange', 'red')
width(3)
begin_fill()
while True:
forward(250)
left(144)
ifabs(pos()) < 1:
break
end_fill()
done()
Рисунок дома
from turtle import *
def l_f(l,f) :
turtle.left(l) # Поворот курсора на l градусов влево
turtle.forward(f)
def r_f(r,f) :
turtle.right(r) # Поворот курсора на r градусов вправо
turtle.forward(f)
turtle.begin_fill()
turtle.penup()
turtle.goto(35, 35)
turtle.pendown()
r_f(90) #
turtle.forward(70) # Пройти вперед расстояние 70
r_f(90,70); r_f(90,70); r_f(90,70)
turtle.penup()
turtle.goto(45, 35)
turtle.pendown()
r_f(225,70); l_f(90,70); l_f(135,100)
turtle.done()
Рисунок самолета
import turtle
def l_f(angl,f) :
turtle.left(angl)
turtle.forward(f)
def r_f(angl,r) :
turtle.left(angl)
turtle.forward(r)
k=20 #масштаб
q=-10 #угол
w=100 #перенос рисунка
turtle.color('black') #чёрная часть
turtle.penup()
turtle.goto(-w,w)
turtle.left(q)
turtle.pendown()
turtle.begin_fill()
turtle.forward(k*6)
turtle.r_f(45,k*8**(1/2))
turtle.l_f(135,k*2)
turtle.l_f(180,k)
turtle.l_f(90,k*2)
turtle.l_f(90,k)
turtle.l_f(180,k*2)
turtle.l_f(135,k*8**(1/2))
turtle.r_f(45,k*6)
turtle.r_f(150,k*20**(1/2))
turtle.l_f(120,k*5**(1/2))
turtle.r_f(150,k*3)
turtle.end_fill()
turtle.color('yellow') #жёлтая часть
turtle.begin_fill()
turtle.l_f(30,k*20**(1/2))
turtle.r_f(60,k*20**(1/2))
turtle.l_f(30,k*3)
turtle.r_f(150,k*5**(1/2))
turtle.l_f(120,k*20**(1/2))
turtle.end_fill()
turtle.done()
Изображение человека
import turtle def fl(f,l) : turtle.forward(f) turtle.left(l) def fr(f,r) : turtle.forward(f) turtle.right(r) def setxy(x,y) : turtle.setx(x) turtle.sety(y) def star(): fl(50,90+i);fl(50,90+i) fl(50,90+i);fl(50,90+i) star() def move(x,y) : turtle.penup() setx(x,y) turtle.pendown() turtle.reset() turtle.pendown() for i in range(19): fl(30,20) fl(15,270);fr(50,50) # Hand fl(150,270);fr(150,180) fl(150,90) # Right hand fr(150,70);fr(150,90) turtle.forward(150) setxy(15,-50) # Body | # продолжение turtle.left(30) fl(250,90);fr(50,30) fl(250,70) turtle.forward(50) move(15,-300) # Leg turtle.left(270) fl(250,80) turtle.forward(50) # Some move(150,150) turtle.begin_fill() turtle.fillcolor() move(50,100) turtle.right(40) for i in range(19): fl(5,20) turtle.penup() turtle.left(180) turtle.forward(50) turtle.pendown() for i in range(19): fl(5,20) turtle.penup() setx(10,20) turtle.pendown() turtle.color("red") turtle.right(150) turtle.forward(50) turtle.color("black") move(20,50) turtle.forward(10) turtle.color('red', 'yellow') move(200,200) star() turtle.begin_fill() turtle.mainloop() |
Упражнения:
1. Нарисуйте на экране равносторонний треугольник.
2. Нарисуйте на экране квадрат с диагоналями.
3. Нарисуйте две касающиеся окружности.
4. Нарисуйте две пересекающиеся окружности.
5. Нарисуйте дом.
6. Нарисуйте компьютер.
Canvas графика
Импорт модуля tkinter в Python происходит после команды
from tkinter import *.
Главное окно создает команда
root = Tk()
Дата добавления: 2022-04-12; просмотров: 1888;