用python画一箭穿心图片_python可以画什么

python的turtle模块提供了绘制图像的功能,简单易懂,下面来介绍一下。

一、turtle其实就是一个画图板,给你提供了一个画笔。我们先设置一下基本的属性:

1,运动属性forward(d) 向前移动距离d代表距离

backward(d) 向后移动距离d代表距离

right(degree) 向右转动多少度

left(degree) 向左转动多少度

goto(x,y) 将画笔移动到坐标为(x,y)的位置

stamp() 绘制当前图形

speed(speed) 画笔绘制的速度范围[0,10]整数

2,画笔属性down()画笔落下,移动时绘制图形

up()画笔抬起,移动时不绘制图形

reset()恢复所有设置

pensize(width)画笔的宽度

pencolor(colorstring)画笔的颜色

fillcolor(colorstring)绘制图形的填充颜色

fill(Ture)开始

fill(False)结束

也可以color(‘color,’color’)

circle(radius, extent)

绘制一个圆形,其中radius为半径,extent为度数,例如若extent为180,则画一个半圆;如要画一个圆形,可不必写第二个参数

3,例子

下面一箭穿心的图像from turtle import *

from time import sleep

def go_to(x, y):

up()

goto(x, y)

down()

def big_Circle(size):  #函数用于绘制心的大圆

speed(1)

for i in range(150):

forward(size)

right(0.3)

def small_Circle(size):  #函数用于绘制心的小圆

speed(1)

for i in range(210):

forward(size)

right(0.786)

def line(size):

speed(1)

forward(51*size)

def heart( x, y, size):

go_to(x, y)

left(150)

begin_fill()

line(size)

big_Circle(size)

small_Circle(size)

left(120)

small_Circle(size)

big_Circle(size)

line(size)

end_fill()

def arrow():

pensize(10)

setheading(0)

go_to(-400, 0)

left(15)

forward(150)

go_to(339, 178)

forward(150)

def arrowHead():

pensize()

speed(1)

color('red', 'red')

begin_fill()

left(120)

forward(20)

right(150)

forward(35)

right(120)

forward(35)

right(150)

forward(20)

end_fill()

def main():

pensize(2)

color('red', 'pink')

#getscreen().tracer(30, 0) #取消注释后,快速显示图案

heart(200, 0, 1)          #画出第一颗心,前面两个参数控制心的位置,函数最后一个参数可控制心的大小

setheading(0)             #使画笔的方向朝向x轴正方向

heart(-80, -100, 1.5)     #画出第二颗心

arrow()                   #画出穿过两颗心的直线

arrowHead()               #画出箭的箭头

go_to(400, -300)

write("author:超哥", move=True, align="left", font=("宋体", 30, "normal"))

done()

main()

你可能感兴趣的:(用python画一箭穿心图片)