当前位置: 首页 > 后端技术 > Python

有趣的蟒蛇-一步步画小猪佩奇

时间:2023-03-26 17:09:08 Python

微信公众号:Python集中营重复做简单的事,坚持做重复的事,用心做坚持的事;您的肯定是我坚持的动力。如果本文对您有帮助,请关注!定义全局属性1#importturtledrawinglibrary23importturtleastle45classpeppa_turtle:67#初始化全局属性8def__init__(self):1011self.tle=tle1213##全局画笔属性设置1415#设置大小thebrush1617self.tle.pensize(4)1819#设置GBK颜色范围为0-2552021self.tle.colormode(255)2223#设置画笔颜色和填充颜色2425self.tle.color((255,155,192),"pink")2627#设置主窗口大小为800*5002829self.tle.setup(800,600)3031#设置笔刷速度为13233self.tle.speed(1)定义鼻子drawingfunction1#画小猪奇鼻子23defdraw_nose(self):45#拿起笔67self.tle.pu()89#去画笔的坐标(-100,100)1011self.tle.goto(-100,100)1213#落笔1415self.tle.pd()1617#落笔的角度为-30°1819self.tle.seth(-30)2021#轮廓填充的起始标记2223self.tle.begin_fill()2425a=0.42627foriinrange(120):2829if0<=i<30或者60<=i<90:3031a=a+0.083233#向左转3度3435self.tle.lt(3)3637#向前走,步长为3839self.tle.fd(a)4041else:4243a=a-0.084445self.tle.lt(3)4647self.tle.fd(a)4849#根据轮廓填充5051self.tle.end_fill()5253#提起笔5455self.tle.pu()5657#笔的角度为90度5859self.tle.seth(90)6061#向前移动256263self.tle.fd(25)6465#将画笔的角度转换为06667self.tle.seth(0)6869self.tle.fd(10)7071self.tle.pd()7273#设置画笔颜色7475self.tle.pencolor(255,155,192)7677self.tle.seth(10)7879self.tle.begin_fill()8081#画一个半径为5的圆8283self.tle.circle(5)8485#设置画笔和填充颜色8687self.tle.color(160,82,45)8889self.tle.end_fill()9091self.tle.pu()9293self.tle.seth(0)9495self.tle.fd(20)9697self.tle.pd()9899self.tle.pencolor(255,155,192)100101self.tle.seth(10)102103self.tle.begin_fill()104105self.tle.circle(5)106107self.tle.color(160,82,45)108109self.tle.end_fill()定义头部绘制函数1#绘制小猪页头23defdraw_head(self):45self.tle.color((255,155,192),"pink")67self.tle.pu()89self.tle.seth(90)1011self.tle.fd(41)1213self.tle.seth(0)1415self.tle.fd(0)1617self.tle.pd()1819self.tle.begin_fill()2021self.tle.seth(180)2223#顺时针画一个半径为300,圆心角为30°的圆2425self.tle.circle(300,-30)2627self.tle.circle(100,-60)2829self.tle.circle(80,-100)3031self.tle.circle(150,-20)3233self.tle.circle(60,-95)3435self.tle.seth(161)3637self.tle.circle(-300,15)3839self.tle.pu()4041self.tle.goto(-100,100)4243self.tle.pd()4445self.tle.seth(-30)4647a=0.44849foriinrange(60):5051if0<=i<30or60<=i<90:5253a=a+0.085455#向左转3度5657self.tle.lt(3)5859#向前走步长6061self.tle.fd(a)6263else:6465a=a-0.086667self.tle.lt(3)6869self.tle.fd(a)7071self.tle.end_fill()defineeardrawingfunction1#drawpiggypage'sear23defdraw_ear(self):45self.tle.color((255,155,192),“粉红色”)67self.tle.pu()89self.tle.seth(90)1011self.tle.fd(-7)1213self.tle.seth(0)1415self.tle。fd(70)1617self.tle.pd()1819self.tle.begin_fill()2021self.tle.seth(100)2223self.tle.circle(-50,50)2425self.tle.circle(-10,120)2627self.tle.circle(-50,54)2829self.tle.end_fill()3031self.tle.pu()3233self.tle.seth(90)3435self.tle.fd(-12)3637self.tle.seth(0)3839self.tle.fd(30)4041self.tle.pd()4243self.tle.begin_fill()4445self.tle.seth(100)4647self.tle.circle(-50,50)4849self.tle.circle(-10,120)5051self.tle.circle(-50,56)5253self.tle.end_fill()定义眼画制函数1#画制小猪佩奇的眼球23defdraw_eye(self):45self.tle.color((255,155,192),"white")67self.tle.pu()89self.tle.seth(90)1011self.tle.fd(-20)1213self.tle.seth(0)1415self.tle.fd(-95)1617self.tle.pd()1819self.tle.begin_fill()2021self.tle.circle(15)2223self.tle.end_fill()2425self.tle.color(“黑色”)2627self.tle.pu()2829self.tle.seth(90)3031self.tle.fd(12)3233self.tle.seth(0)3435self.tle.fd(-3)3637self.tle.pd()3839self.tle.begin_fill()4041self.tle.circle(3)4243self.tle.end_fill()4445self.tle.color((255,155,192),"white")4647self.tle.pu()4849self.tle.seth(90)5051self.tle.fd(-25)5253self.tle.seth(0)5455self.tle.fd(40)5657self.tle.pd()5859self.tle.begin_fill()6061self.tle.circle(15)6263self.tle.end_fill()6465self.tle.color(“黑色”)6667self.tle.pu()6869self.tle.seth(90)7071self.tle.fd(12)7273self.tle。seth(0)7475self.tle.fd(-3)7677self.tle.pd()7879self.tle.begin_fill()8081self.tle.circle(3)8283self.tle.end_fill()定义绘图制作函数1#绘制小猪佩奇的皮肤23defdraw_cheek(self):45self.tle.color((255,155,192))67self.tle.pu()89self.tle.seth(90)1011self.tle.fd(-95)1213self.tle.seth(0)1415self.tle.fd(65)1617self.tle.pd()1819self.tle.begin_fill()2021self.圆圈(30)2223self.tle.end_fill()定义嘴巴绘制函数1#画小猪佩奇的嘴巴23defdraw_mouth(self):45self.tle.color(239,69,19)67self.tle.pu()89self.tle.seth(90)1011self.tle.fd(15)1213self.tle.seth(0)1415self.tle.fd(-100)1617self.tle.pd()1819自我。tle.seth(-80)2021self.tle.circle(30,40)2223self.tle.circle(40,80)定义身体绘制函数1#绘制小猪佩奇2的身体3defdraw_body(self):45self.tle.color("red",(255,99,71))67self.tle.pu()89self.tle.seth(90)1011self.tle.fd(-20)1213self.tle.seth(0)1415self.tle.fd(-78)1617self.tle.pd()1819self.tle.begin_fill()2021self.tle.seth(-130)2223self.tle.circle(100,10)2425self.tle.circle(300,30)2627self.tle.seth(0)2829self.tle.fd(230)3031self.tle.seth(90)3233self.tle.circle(300,30)3435self.tle.circle(100,3)3637self.tle.color((255,155,192),(255,100,100))3839self.tle.seth(-135)4041self.tle.circle(-80,63)4243self.tle.circle(-150,24)4445self.tle.89self.tle.seth(90)1011self.tle.fd(-40)1213self.tle.seth(0)1415self.tle.fd(-27)1617self.tle.pd()1819自我。tle.seth(-160)2021self.tle.circle(300,15)2223self.tle.pu()2425self.tle.seth(90)2627self.tle.fd(15)2829self.tle.seth(0)3031self.tle.fd(0)3233self.tle.pd()3435self.tle.seth(-10)3637self.tle.circle(-20,90)3839self.tle.pu()4041self.tle.seth(90)4243self.tle.fd(30)4445self.tle.seth(0)4647self.tle.fd(237)4849self.tle.pd()5051self.tle.seth(-20)5253self.tle.circle(-300,15)5455self.tle.pu()5657self.tle.seth(90)5859self.tle.fd(20)6061self.tle.seth(0)6263self.tle.fd(0)6465self.tle.pd()6667self.tle.seth(-170)6869self.tle.circle(20,90)定义脚绘制作数1#绘制小猪佩奇的脚23defdraw_foot(self):45self.tle.pensize(10)67self.tle.color((240,128,128))89self.tle.pu()1011self.tle.seth(90)1213self.tle.fd(-75)1415self.tle.seth(0)1617self.tle.fd(-180)1819self.tle.pd()2021self.tle.seth(-90)2223self.tle.fd(40)2425self.tle.seth(-180)2627self.tle.color("black")2829self.tle.pensize(15)3031self.tle.fd(20)3233self.tle.pensize(10)3435self.tle.color((240,128,128))3637self.tle.pu()3839self.tle.seth(90)4041self.tle.fd(40)4243self.tle.seth(0)4445self.tle.fd(90)4647self.tle.pd()4849self.tle.seth(-90)5051self.tle.fd(40)5253self.tle.seth(-180)5455self.tle.color("black")5657self.tle.pensize(15)5859self.tle.fd(20)定义画尾函数1#画小猪笔奇数tail23defdraw_tail(self):45self.tle.pensize(4)67self.tle.color((255,155,192))89self.tle.pu()1011self.tle.seth(90)1213self.tle.fd(70)1415self.tle.seth(0)1617self.tle.fd(95)1819self.tle.pd()2021self.tle.seth(0)2223self.tle.circle(70,20)2425self.tle.circle(10,330)2627self.tle.circle(70,30)definemanualendfunction1#manuallyenddrawing2defexec_end(self):3whileTrue:4#手动结束程序运行5str=input("Enterexit()toend:")6if'exit()'==str:7print('绘图完成')8break更多精彩前往微信【Python】集中营],专注python技术栈,数据采集,交流社区,干货分享,期待你的加入~