网络编程
位置:首页>> 网络编程>> Python编程>> Python turtle画图库&&画姓名实例

Python turtle画图库&&画姓名实例

作者:辞树 LingTree  发布时间:2021-07-03 09:02:02 

标签:Python,turtle,图库,姓名

*****看一下我定义的change()和run()函数******

绘图坐标体系:

作用:设置主窗体的大小和位置


turtle.setup(width, height, startx, starty)

#width : 窗口宽度,若值是整数,表示像素值;若是小数,表示窗口宽度与屏幕的比例。
#height : 窗口高度,若值是整数,表示像素值;若是小数,表示窗口高度与屏幕的比例。
#startx : 窗口左侧与屏幕左侧的像素距离,若值是None,窗口位于屏幕水平中央。
#starty : 窗口顶部与屏幕顶部的像素距离,若值是None,窗口位于屏幕垂直中央。

画笔控制函数:

turtle中的画笔(即小海龟)可以通过一组函数来控制;


turtle.penup();        #抬起画笔(画笔移动时没有痕迹)
turtle.pendown();       #放下画笔(画笔移动时有痕迹,即作画中)
turtle.pensize(width)     #设置画笔的尺寸
turtle.width()         #设置画笔宽度,当无参数输入时返回当前画笔宽度
turtle.pencolor(colorstring)  #设置画笔颜色
turtle.goto(x, y)       #将画笔移动至(x,y)处

形状绘制函数:


turtle.fd(distance)          #画笔移动distance距离
turtle.seth(angle)           #设置当前画笔的方向为angle
turtle.circle(radius, extent=None)   #根据半径radius绘制extent角度的弧形

Python turtle画图库&&画姓名实例

我为了精简代码,定义了两个函数:

change(x, y) : 将画笔的位置设置在(x, y)

run(angle, length) : 方向为angle ,画笔前进length个单位长度


def run(angle, lenth):
 turtle.seth(angle)
 turtle.fd(lenth)

def change(x, y):
 turtle.penup()
 turtle.goto(x, y)
 turtle.pendown()

这里我使用 汉字 “中” 来举个例子:

我们把“中” 字抽象成点。(如图所示的 A、B、C、D、E、F 六个点)

Python turtle画图库&&画姓名实例

然后,我们就是要把他们连接起来啊。 我们先连接ABCD四个点。

变成下图

Python turtle画图库&&画姓名实例

然后再连接EF两点。完成。

Python turtle画图库&&画姓名实例

对应的代码:


#zhong
change(-100, 80)#将画笔放在坐标A(-100, 80)
run(0, 200)#从A点画到B点
run(-90, 120)#从B画到C点
run(180, 200)#从C点画到D点
run(90, 120)#从D点画到A点

change(0, 150)#将画笔放在坐标E(0, 150)
run(-90, 300)#从E点画到F点

画自己的名字嘤嘤嘤


import turtle

def run(angle, lenth):
 turtle.seth(angle)
 turtle.fd(lenth)

def change(x, y):
 turtle.penup()
 turtle.goto(x, y)
 turtle.pendown()
def init():
 turtle.pensize(10)
 turtle.pencolor("purple")

turtle.setup(800, 400, 200, 200)
init()
#wu
change(-350, 100)
run(0, 100)
run(-90, 70)
run(180, 100)
run(90, 70)
change(-350, 0)
run(0, 100)
change(-400, -50)
run(0, 200)
change(-300, 0)
run(-90, 50)
run(-125, 100)
change(-300, -50)
run(-55, 100)
run(0,10)
#feng
change(-65, 70)
run(0, 130)
change(-50, 10)
run(0, 100)
change(-100, -70)
run(0, 200)
change(0, -160)
run(90, 280)
#yuan
change(125, 100)
run(-35, 40)
change(125, 25)
run(-35, 40)
change(125, -125)
run(55, 90)
change(220, 100)
run(0, 110)
change(220, 100)
run(-95,230)
change(285, 85)
run(-145, 40)
change(250, 65)
run(0, 70)
run(-90, 80)
run(180, 70)
run(90, 80)
change(250, 25)
run(0, 70)
change(285,-15)
run(-90, 120)
run(135, 20)
change(250, -50)
run(-125, 40)
change(315, -50)
run(-55, 50)

来源:https://blog.csdn.net/l18339702017/article/details/84070971

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com