#PythonDraw.py
import turtle #import引入了一个绘图库,名字叫:turtle
turtle.setup(650,350,200,200)
turtle.penup()
turtle.fd(-250)
turtle.pendown()
turtle.pensize(25)
turtle.pencolor('purple')
turtle.seth(-40)
for i in range(4):
turtle.circle(40,80)
turtle.circle(-40,80)
turtle.circle(40,80/2)
turtle.fd(40)
turtle.circle(16,180)
turtle.fd(40*2/3)
turtle.done()
概述:turtle(海龟)库是turtle绘图体系的Python实现,它于1969年诞生,主要用于程序设计入门,是Python 的标准库之一。
原理:可以这样理解,turtle可当作有这样一只海龟,它位于窗体中心,在画布上游走,它走过的痕迹就形成了绘制的图形。同时,海龟由程序控制,可以变换颜色和宽度等。
1.绘图窗体介绍:
import turtle
turtle.setup(800,600,0,0)
'''
setup()是设置窗体的大小和位置;
turtle.setup(width,height,startx,starty)
width指的是双体的宽度,height指的是窗体的高度;
(startx,starty)是以屏幕的左上方为坐标原点,当(startx,starty)=(0,0)时,窗体的 左上角和屏幕左上角一致。
'''
2.turtle的空间坐标系
绝对坐标:
'''
turtle.goto(x,y) :(x,y)是以窗体的中心点建立的一个直角坐标系,这里goto()是指海龟从从它现在的位置直线走到(x,y)。
这里的坐标是绝对坐标。
'''
turtle.goto(100,100)
turtle.goto(100,-100)
turtle.goto(-100,-100)
turtle.goto(-100,100)
turtle.goto(0,0)
turtle.done()
相对坐标:
'''
turtle.circle(r,angle):是指以海龟的左侧距离它为r的位置为圆心,r为半径,旋转angle角度的一个弧;
turtle.bk(d)和turtle.fd(d)是两个相对概念,分别是指海龟向后和向前移动d的距离。
在这里值得注意的是,当r和d的数值为负值时,移动反向
'''
turtle.circle(50,180)
turtle.bk(50)
turtle.circle(-50,180)
turtle.fd(50)
turtle.done()
3.turtle角度坐标体系
'''
turtle.seth(angle):seth()函数可以改变海龟的行进方向,但不行进;同时这里的angle为绝对度数。
turtle.left(angle)和turtle.right(angle)是一组相对概念,它是以海龟此时的位置,向左或向右旋转angle角度。
'''
turtle.left(45)
turtle.fd(150)
turtle.right(135)
turtle.fd(300)
turtle.left(135)
turtle.fd(150)
turtle.done()
4.RGB色彩模式
turtle.colormode(mode)
英文名称 | RGB整数值 | 中文名称 |
---|---|---|
white | 255,255,255 | 白色 |
yellow | 255,255,0 | 黄色 |
magenta | 255,0,255 | 洋红 |
cyan | 0,255,255 | 青色 |
blue | 0,0,255 | 蓝色 |
black | 0,0,0 | 黑色 |
seashell | 255,245,238 | 海贝色 |
gold | 255,215,0 | 金色 |
pink | 255,192,203 | 粉红色 |
brown | 165,42,42 | 棕色 |
purple | 160,32,240 | 紫色 |
tomato | 255,99,71 | 番茄色 |
5.turtle画笔控制函数
程序名 | 描述 |
---|---|
penup | 抬起画笔,画笔虽然移动,但不会在窗口留下痕迹 |
pendown | 落下画笔,画笔由up变为落到窗口,此时移动画笔会出现移动痕迹 |
pensize | 画笔的宽度 |
pencolor | 画笔的颜色: |