В материале представлены команды, отвечающие за управление холстом/экраном, в том числе текущий размер и фон холста, очистку холста, а так же создание пользовательской системы координат в модуле turtle
.
turtle.bgcolor()
устанавливает/возвращает цвет фона холста,turtle.bgpic()
устанавливает/возвращает фоновое изображение холста,turtle.clear()
удаляет рисунки всех перьев с холста,turtle.clearscreen()
удаляет рисунки всех перьев с холста,turtle.reset()
возвращает все перья на холсте в исходное состояние,turtle.resetscreen()
возвращает все перья на холсте в исходное состояние,turtle.screensize()
устанавливает/возвращает текущий размер холста,turtle.setworldcoordinates()
создание пользовательской системы координат.turtle.bgcolor(*args)
:Метод turtle.bgcolor()
устанавливает или возвращает цвет фона холста TurtleScreen
.
Аргумент args
: строка c цветом (например 'blue'
) или три числа в диапазоне 0..colormode
режим или тройной кортеж таких чисел.
>>> import turtle >>> screen = turtle.Screen() >>> screen.bgcolor("yellow") >>> screen.bgcolor() # 'yellow' >>> screen.bgcolor("#800080") >>> screen.bgcolor() # (128.0, 0.0, 128.0)
turtle.bgpic(picname=None)
:Метод turtle.bgpic()
устанавливает фоновое изображение или возвращает имя текущего фонового изображения.
picname
является именем файла, то установит соответствующее изображение в качестве фона. picname
равно None
, то вернет имя файла текущего фонового изображения.Аргумент picname
– строка, имя gif-файла или "nopic"
, или None
>>> import turtle >>> screen = turtle.Screen() >>> screen.bgpic() # 'nopic' >>> screen.bgpic("landscape.gif") >>> screen.bgpic() "landscape.gif"
turtle.clearscreen()
,screen.clear()
:Методы turtle.clear()
и turtle.clearscreen()
удаляет все рисунки и всех перьев с экрана холста. Сбрасывает теперь пустой экран в исходное состояние: белый фон, без фонового изображения, без привязок событий.
Примечание. этот метод холста TurtleScreen
доступен как глобальная функция только под именем turtle.clearscreen()
. Глобальная функция turtle.clear()
отличается от метода TurtleScreen.clear()
.
turtle.reset()
,turtle.resetscreen()
:Методы turtle.reset()
и turtle.resetscreen()
возвращает все перья на холсте/экране в исходное состояние.
Примечание. этот метод холста TurtleScreen
доступен как глобальная функция только под именем turtle.resetscreen()
. Глобальная функция turtle.reset()
отличается от метода объекта TurtleScreen.reset()
.
turtle.screensize(canvwidth=None, canvheight=None, bg=None)
:Метод turtle.screensize()
возвращает текущее значение (ширина холста, высота холста), если аргументы не указаны. В противном случае изменяет размер холста.
Метод не изменяет окно, а добавляет полосы прокрутки. Для просмотра скрытых частей холста необходимо использовать полосы прокрутки. С помощью этого метода можно сделать видимыми те части рисунка, которые раньше находились за пределами холста.
Аргументы:
canvwidth
: положительное целое число, новая ширина холста в пикселях.canvheight
: положительное целое число, новая высота холста в пикселях.bg
: новый цвет фона, строка означающая цвет (например 'blue'
) или кортеж RGB (например (255, 255, 255)
).>>> import turtle >>> screen = turtle.Screen() >>> screen.screensize() # (400, 300) >>> screen.screensize(2000,1500) >>> screen.screensize() # (2000, 1500)
Например, можно вычислить "сбежавшее перо" за пределы холста ;-)
turtle.setworldcoordinates(llx, lly, urx, ury)
:Метод turtle.setworldcoordinates()
настраивает пользовательскую систему координат и при необходимости переключается в режим 'word'
.
Этот метод выполняет screen.reset()
. Если режим режим 'word'
уже активен, то все чертежи перерисовываются в соответствии с новыми координатами.
Аргументы:
llx
: число, координата x
левого нижнего угла холста.lly
: число, координата y
нижнего левого угла холста.urx
: число, координата x
правого верхнего угла холста.ury
: число, координата y
верхнего правого угла холста.**ВНИМАНИЕ//: в пользовательских системах координат углы могут искажаться.
>>> import turtle >>> screen = turtle.Screen() >>> screen.reset() >>> screen.setworldcoordinates(-50,-7.5,50,7.5) >>> pen = turtle.Turtle() >>> for _ in range(72): ... pen.left(10) ... >>> for _ in range(8): ... # правильный восьмиугольник ... pen.left(45) ... pen.fd(2)