皮卡丘python turtle海龟绘图(电力球版)附源代码

news2024/12/24 21:48:41

皮卡丘python turtle海龟绘图(电力球版)附源代码

本文目录:

一、皮卡丘python turtle海龟成品效果图

二、皮卡丘背景介绍

三、皮卡丘卡角色形象

四、愿你拥有一只皮卡丘

五、Python 海龟画图主要方法

(1)海龟画图的主要步骤

(2)海龟画图的坐标体系

(3)海龟画图的一些建议

六、海龟画图常用命令

1、初始化

2、画笔属性

3、画笔运动命令

4、 画笔颜色控制命令

5、全局控制命令

七、我的皮卡丘python turtle海龟绘图源代码


前言:

    前段时间,【草莓熊python turtle绘图代码】一文弄得我心情多少有点灰灰,此版草莓熊是我应某网友请求画的,当时只是想找个地方放代码给他,没想到访问量使用量会有那么多,抖音b站等等到处都是我画的草莓熊, 就连CSDN都有几个盗我代码(他们删除了作者版权信息部分)当成自己原创,还都上了CSDN首页热门推荐。。。

    更有甚者,居然有人拿我草莓熊代码来卖钱!!!请记住,不要下载和购买这种代码(包括可执行的exe文件,小心代码被篡改有病毒) 

    我的代码是完整源代码,你从我博客拷贝代码后本机运行就能看到和我博客上同样的运行效果(只要我网络没有被全h)。我乐意分享,不需要你去关注任何账号,不强求任何人成为我的粉丝,也不需要你以任何形式购买源代码,只要你是个人学习用,或者通过我的代码能带给你身边的朋友开心快乐,我愿意为此尽一分力。

    另,请尊重作者原创的不易,转载请注明来源。代码里请保留作者相关的版权信息。这些不会影响代码展示效果。

一、皮卡丘python turtle海龟成品效果图

  当你知道得太多,当你独自清醒,当弱小善良的你无法逃脱某种无法言说的。。。时,当你孤单无助地面对强敌时,你会想起谁?谁会是那个信得过的战友?或许小精灵皮卡丘会是其中一个。皮卡丘总是能让自己保持快乐,也给人带来欢乐。它也会有情绪低落的时候,但它不会让这种情绪把自己打倒。
  它并不厉害,但即使失败了,小小的它也会再度勇敢站起来,保护自己的朋友们。当有人难过时,它会在一旁暖心鼓励。皮卡丘让你相信它也同样爱着你。

  虽然现实世界没有真的小精灵皮卡丘,但我们可以画一只,让它可爱的样子温暖每一个你。逆境清醒:愿你们都拥有一只会永远爱你的皮卡丘!

  这次我用python turtle海龟绘图皮卡丘,效果如下:

  没有底图的效果如下:


    我会陆续用python turtle海龟绘图画一系列的皮卡丘动画,如果喜欢皮卡丘,可以多留意一下本专栏。

    请尊重作者原创的不易,转载请注明来源。代码里请保留作者相关的版权信息。这些不会影响代码展示效果。

二、皮卡丘背景介绍

  皮卡丘是生活中常见的卡通形象,没玩过游戏、没看过动漫,大抵也知道它的存在。

  1996年,游戏《宝可梦 红/绿》在日本首次发行,玩家在虚拟世界里捕捉、训练小精灵们,和它们一起不断战斗和挑战。一众小精灵里最火的,当属皮卡丘,皮卡丘成为了宝可梦世界的主角,和主人公小智一路探险世界。(皮卡丘简介配图来源于网络,版权属原作者和版权公司,此处仅作介绍人物绘图前形象介绍用途)

中文名皮卡丘
外文名ピカチュウ  Pikachu
别    名比卡超、比卡丘、皮卡超
身    高0.4 m
体    重6 kg
属    性电属性鼠宝可梦
特    性静电。隐藏特性:避雷针
设计者西田敦子(皮卡丘);James Turner(超极巨皮卡丘)

三、皮卡丘卡角色形象

  Pikachu 里 pika 是电火花的响声,chu 则是老鼠声音的拟声,插画师西田敦子在创作的时候,则是以松鼠为原型。参考了松鼠囤果实时的样子为皮卡丘画上了圆圆的脸——“仓鼠囤食物时整个身体都会变圆,但松鼠就只有脸颊会圆起来”。


  皮卡丘擅长放电,是一只电气鼠,全身的皮毛都是黄色的,背上有两条褐色的条纹,尾巴是像锯齿状的闪电,与身体相接的部分也有一片褐色的皮毛。它有小小的嘴巴以及黑色的眼睛,脸颊上有着红色的电力袋,长长的耳朵尖端是黑色的。它的前爪短而粗,有五趾,后爪则只有三趾。越是能制造出强大电流的皮卡丘,脸颊上的囊就越柔软,同时也越有伸展性。由于它脸颊上的袋子中储存了电能,触摸了之后会觉得麻麻的。它跑动的时候是用四条腿着地快速地奔跑,但是更多时候它是站立着的并用两只后脚走路。
  自第四世代起,皮卡丘开始具有性别差异,雄性的皮卡丘的尾巴末端平整,雌性皮卡丘的尾巴末端为心形。

  它通过睡觉的方式给自己充电,当遇到危险时就会放电。它还会将尾巴竖起来,感知周围是否安全。皮卡丘害羞内向,未经允许触碰它就会被它电到。皮卡丘喜欢番茄酱,还喜欢吃苹果和浆果,遇到其他新的食物也一定会尝尝。

四、愿你拥有一只皮卡丘

  一众小精灵里,皮卡丘不是最厉害的那一个。皮卡丘总是能让自己保持快乐,也给人带来欢乐。它也会有情绪低落的时候,但它不会让这种情绪把自己打倒。
  它没有绝对厉害,也有很多的弱点。但即使在战斗里失败了,小小的它也会再度勇敢站起来,保护自己的朋友们。
  一句“去吧,皮卡丘!”就足够让你对它充满信任。

  当有人难过时,它会在一旁暖心鼓励。“之所以爱皮卡丘,是因为皮卡丘有很多时刻让你相信它也爱着你。”

  皮卡丘和小智之间坚定而美好的友情也是吸引观众的另一个主要原因。他们是平日里一起幼稚玩闹的好伙伴。也会在需要的时候,给彼此一个大大的拥抱。两个人在一起,就可以勇敢地对抗冒险旅途中的一切危机。

五、Python 海龟画图主要方法

  海龟绘图(turtle库)是python的内部模块,使用前导入即可 import turtle 库

  海龟有几个关键属性:方向、位置和画笔属性

(1)海龟画图的主要步骤

  通常我们绘图时

  第一步,导入海龟库和绘图时可能用到的一些库,例如随机函数库random,numpy库等等,具体要看实际情况。

  使用方法:

  import turtle

  import random

  

  第二步,使用setup()设置画布尺寸

  画布(canvas):

  画布就是我们用于绘图的区域, 我们可以设置它的大小和初始位置

  设置画布大小:

  1. turtle.screensize(canvwidth=None, canvheight=None, bg=None)

  参数分别为画布的宽(单位像素), 高, 背景颜色

  turtle.screensize()默认大小(400, 300)

  例如:turtle.screensize(800, 600, “black”)

  2. turtle.setup(width=数值, height=数值, startx=None, starty=None)

  setup()设置窗体大小及位置。

  参数:

  width, height:为整数时, 表示像素;

  width, height:为小数时, 表示占据电脑屏幕的比例

  turtle.setup(width=0.5, height=0.85, startx=None, starty=None)

  turtle.setup(width=0.6, height=0.6)

  (startx, starty): 这一坐标表示 矩形窗口左上角顶点的位置, 如果为空,则窗口位于屏幕中心

  如:turtle.setup(width=800, height=800, startx=100, starty=100)

  第三步,设置画笔

  使用Pen()设定海龟画图对象,即画笔:turtle.Pen()

  t = turtle.Pen()

  使用t来代替turtle.Pen()。一劳永逸的做法,可简化输入代码。

(2)海龟画图的坐标体系

  代码执行后就建立了画布,屏幕中间可以看见海龟 (箭头arrow)

  在海龟绘图中,海龟的起点即画布中央为 (0,0),移动单位是像素 (pixel),海龟的头部是x轴方向,为0度。

    turtle绘图中, 就是使用位置方向描述海龟(画笔)的状态

  想象绘图区有一只机器海龟,起始位置在 x-y 平面的 (0, 0) 点。先执行 import turtle,再执行 turtle.forward(15),它将(在屏幕上)朝所面对的 x 轴正方向前进 15 像素,随着它的移动画出一条线段。再执行 turtle.right(25),它将原地右转 25 度。

  描述海龟时使用了两个词语:坐标原点(位置),面朝x轴正方向(方向),

  在画图过程中,如果没明确的指定坐标和角度,那此时所有的角度和位置都是相对的(相对于当前海龟的位置和角度)

画月饼常会用到画圆:turtle.circle(radius, extent=None, steps=None)

参数:

  • radius -- 一个数值

  • extent -- 一个数值 (或 None)

  • steps -- 一个整型数 (或 None)

  绘制一个 radius 指定半径的圆。

  圆心在海龟左边 radius 个单位;

  extent 为一个夹角,用来决定绘制圆的一部分。如未指定 extent* 则绘制整个圆。如果 *extent 不是完整圆周,则以当前画笔位置为一个端点绘制圆弧。如果 radius 为正值则朝逆时针方向绘制圆弧,否则朝顺时针方向。

  最终海龟的朝向会依据 extent 的值而改变。

  圆实际是以其内切正多边形来近似表示的,其边的数量由 steps 指定。

  如果未指定边数则会自动确定。此方法也可用来绘制正多边形。

  画一个半径为100的圆形,circle(100),注意画完后圆心位置不在原点。

(3)海龟画图的一些建议

      a、使用海龟绘图可以编写重复执行简单动作的程序画出精细复杂的形状。

from turtle import *

speed(0)

color('blue', '#87CEFA')

begin_fill()

while True:

    forward(200)

    left(170)

    if abs(pos()) < 1:

        break

end_fill()

将文字排成圆形:

import turtle as t

text="祝大家中秋节快乐"

for i in text:

    t.write(i,align="center",font=("黑体",20,"normal"))

    t.right(360/len(text))

    t.penup()   

    t.forward(40)

t.hideturtle()

t.done()

  b、隐藏画笔;设置速度,可以画得更快些;

  c、海龟绘图时的颜色代码可以参考下面链接

色彩颜色对照表系列(1~5)300种颜色,(16进制、RGB、CMYK、HSV、中英文名)

    挑选出自己喜欢的颜色,拷贝相应的颜色代码值放入海龟颜色设置中。

六、海龟画图常用命令

1、初始化

代码命令

作 用

import turtle

导入海龟库

t = turtle.Pen()

从工具箱子获取海龟画笔

turtle.setup()

画布设置(尺寸,距离)

turtle.bgcolor("black")

画布背景色(例如黑色)

turtle.title(title标题)   设置画布标题

screensize( )  

设置画布窗口的宽度、高度和背昱颜色

2、画笔属性

代码命令

作 用

turtle.pensize(width数字值)

画笔粗细,设置画笔线条的粗细为指定大小

turtle.color('画笔颜色')

画笔颜色   字符串"green", "red" 或者 RGB 3元组

turtle.speed(0)

设置画笔移动速度

画笔绘制的速度范围[0,10]整数,数字越大画笔速度越慢。值1~9,0最快t.speed(0)

turtle.hideturtle()

隐藏海龟图标(隐藏画笔箭头)

turtle.showturtle()

显示海龟图标(显示画笔箭头)

3、画笔运动命令

代码命令

作 用

turtle.forward()

fd(distance)         

向前移动,沿着当前方向前进指定距离

bk(distance)

向后移动,沿着当前相反方向后退指定距离

turtle.right(旋转角度)

画笔右转,turtle. right (90)海龟方向向右转90°

turtle.left(旋转角度)

画笔左转,turtle.left(90)海龟方向向左转90°

turtle.penup()

提笔,抬起画笔

turtle.pendown()

落笔,落下画笔

turtle.goto(x,y横,纵)

控制画笔移动到指定位置,海龟移动到(x,y)位置

turtle.setx(x)

海龟的x坐标移动到指定位置,纵坐标不变

turtle.sety(y)

海龟的y坐标移动到指定位置,横坐标不变

turtle.circle(指定半径, 弧度)

画圆,绘制一个指定半径和角度e的圆或弧线

turtle.dot(半径,color)

画一个圆点(实心)绘制一个指定半径和颜色的圆点

turtle.setheading(angle指向角度)

turtle.seth(angle)

设置当前朝向为angle角度。画笔的指向,右是0,逆时针0-360递增

turtle.home()

设置当前画笔位置为原点,朝向东(默认值)

4、 画笔颜色控制命令

代码命令

作 用

turtle.fillcolor('颜色')

设置 填充颜色

turtle.color(color1, color2)

设置 画笔颜色为color1,填充颜色为color2

可以使用颜色名称或十六进制RGB代码

turtle.begin_fill()

开始填充颜色

turtle.end_fill()

填充完成,结束填充

turtle. pencolor(‘颜色’)

设置画笔颜色

turtle. filling()

返回填充的状态,True为填充。False为未填充

5、全局控制命令

代码命令

作 用

turtle.clear()

清空turtle窗口,但是turtle的位置和状态不会改变(当前窗口清空,当前画笔位置不改变)

turtle.reset()

清空turtle窗口,重置turtle状态为起始状态(当前窗口清空,画笔位置等状态为初始时的默认值)

turtle.undo()

撤销上一个turtle动作(撤销画笔的最后一步动作)

turtle.isvisible()

返回当前turtle是否可见

turtle.done()

关闭画笔,结束绘制,但画面保留

              

代码命令

作 用

t.write("文本" ,align="center",font=("黑体",20,"normal"))

写文本,可指定显示字体,字体大小等align(可选):left,right,center;font(可选):字体名称,字体大小,字体类型(normal,bold,italic)

七、我的皮卡丘python turtle海龟绘图源代码

#-*- coding: UTF-8 -*-
import turtle as t
 
"""
=================================================
@Project ->Adversity Awake 皮卡丘系列
@类别     : 皮卡丘->皮卡丘之1
@Author  : 逆境清醒
@Date    : 2022/10/26 23:02
@Desc    :https://blog.csdn.net/weixin_69553582
=================================================
"""
# 设置背景颜色,窗口位置以及大小
 
t.colormode(255)# 颜色模式
t.speed(0)
t.screensize(800,800,"white")#画布大小背景颜色
t.setup(width=800, height=800,startx=None, starty=None)#绘图窗口的大小和起始坐标
#t.bgpic("di_2_800.gif")
t.title("逆境清醒皮卡丘!")#设置绘图窗口的标题
t.resizemode('noresize')  #大小调整模式:auto,user,noresize
t.tracer(1)   
t.hideturtle()




def mlingpen(x, y):
    t.penup()
    t.goto(x, y)
    t.pendown()




def mlingpkqface(x,y):
    mlingpen(x, y)
    t.pensize(3)
    t.pencolor("#923E24")
    t.fillcolor('#FBD624')
    t.begin_fill()
    t.seth(40)
    t.circle(100, 30)
    t.circle(40, 60)
    t.right(30)
    t.circle(160, 20)
    t.seth(-20)
    t.circle(300, 30)
    t.circle(30, 50)
    t.left(85)
    t.circle(300,85)
    t.left(1)
    t.circle(300,35)
    t.circle(30, 40)
    t.seth(40)
    t.circle(300,32)
    t.right(150)
    t.circle(100, 30)
    t.circle(30, 60)
    t.left(180)
    t.circle(100, 60)
    t.right(30)
    t.circle(100, 60)
    t.circle(70, 120)
    t.circle(-120, 80)
    t.circle(35,140)
    t.right(60)
    t.circle(300,23)
    t.right(60)
    t.fd(10)
    t.left(90)
    t.fd(10)
    t.right(60)
    t.fd(10)
    t.left(90)
    t.circle(30,23)
    t.right(60)
    t.fd(10)
    t.left(90)
    t.circle(90,80)
    t.right(170)
    t.circle(70,65)
    t.right(20)
    t.circle(-150,20)
    t.circle(20,90)
    t.right(200)
    t.circle(50,50)
    t.goto(x, y)
    t.end_fill()
    t.penup()
    t.goto(-72, -25)
    t.pendown()
    t.pencolor("#923E24")
    t.fillcolor("#923E24")
    t.begin_fill()
    t.seth(-6)
    t.circle(120, 30)
    t.right(160)
    t.circle(-50, 65)
    t.end_fill()
    mlingpen(209.21,135.02)
    t.pensize(3)
    t.pencolor("#000000")
    t.fillcolor('#000000')
    t.seth(145)
    t.begin_fill()
    t.circle(300,12)
    t.left(50)
    t.circle(60,59)
    t.left(88)
    t.circle(190,30)
    t.end_fill()
    mlingpen(-253.14,-105.48)
    t.pensize(3)
    t.pencolor("#000000")
    t.fillcolor('#000000')
    t.seth(40)
    t.begin_fill()
    t.circle(300,12)
    t.left(50)
    t.circle(60,57)
    t.left(88)
    t.circle(190,30)
    t.end_fill()

def mlingpkqyingyinying():
    t.penup()
    t.seth(0)
    t.pensize(1)
    t.pencolor("#DDA120")
    t.fillcolor('#DDA120')
    t.begin_fill()
    t.left(220)
    mlingpen(-179,-90)
    t.circle(97, 60)
    t.circle(69, 122)
    t.circle(-120, 80)
    t.circle(33,135)
    t.left(90)
    t.circle(-25,150)
    t.left(175)
    t.circle(-60,140)
    t.left(175)
    t.circle(-60,100)
    t.right(5)
    t.circle(85,60)
    t.goto(-179,-90)
    t.end_fill()
    t.penup()
    t.penup()
    t.seth(0)
    mlingpen(115.87,-170.16)
    t.pencolor("#eca9a9")
    t.fillcolor('#eca9a9')
    t.begin_fill()
    t.left(45)
    t.circle(300,20)
    t.circle(8,155)
    t.left(3)
    t.circle(300,20)
    t.circle(9,155)
    t.goto(115.87,-170.16)
    t.end_fill()
    t.penup()


def mlingpkqjiao():
    mlingpen(-215,-160)
    t.pensize(3)
    t.pencolor("#FBD624")
    t.fillcolor('#FBD624')
    t.begin_fill()
    t.seth(-30)
    t.circle(30,70)
    t.left(20)
    t.circle(-50,150)
    t.circle(10,160)
    t.circle(80,80)
    t.left(5)
    t.circle(75,110)
    t.goto(-210,-160)
    t.penup()
    t.end_fill()
    mlingpen(-149,-191)
    t.pensize(3)
    t.pencolor("#923E24")
    t.fillcolor('#FBD624')
    t.begin_fill()
    t.seth(0)
    t.left(40)
    t.circle(148,55)
    t.right(38)
    t.fd(20)
    t.left(128)
    t.fd(15)
    t.right(88)
    t.fd(15)
    t.left(128)
    t.fd(15)
    t.right(88)
    t.fd(15)
    t.left(128)
    t.fd(15)
    t.right(45)
    t.circle(130,60)
    t.circle(23,75)
    t.end_fill()
    mlingpen(-149,-180)
    t.pensize(3)
    t.pencolor("#eca9a9")
    t.fillcolor('#eca9a9')
    t.begin_fill()
    t.seth(0)
    t.left(45)
    t.circle(148,45)
    t.left(45)
    t.circle(15,110)
    t.right(18)
    t.circle(130,40)
    t.circle(17,100)
    t.end_fill()


def mlingpkqcap():
    mlingpen(-210,95)
    t.pensize(4)
    t.pencolor("#000000")
    t.fillcolor('#CD0000')
    t.begin_fill()
    t.seth(290)
    t.circle(45,80)
    t.circle(345,30)
    t.circle(45,90)
    t.left(2)
    t.fd(120)
    t.left(45)
    t.circle(200,60)
    t.goto(-210,95)
    t.end_fill()
    t.left(175)
    t.circle(-290,50)
    t.pencolor("#000000")
    t.pensize(3)
    t.pencolor("#000000")
    t.fillcolor('#ffffff')
    mlingpen(-160,272)
    t.begin_fill()
    t.goto(-80,260)
    t.goto(-45,200)
    t.left(186)
    t.circle(230,41)
    t.goto(-210,200)
    t.goto(-180,270)
    t.goto(-160,272)
    t.end_fill()
    mlingpen(-175,265)
    t.seth(0)
    t.begin_fill()
    t.circle(13)
    t.end_fill()
    t.penup()
    mlingpen(-125,222)
    t.pensize(7)
    t.pencolor("#6ba65a")
    t.goto(-140,225)
    t.pensize(9)
    t.goto(-155,170)
    t.left(45)
    t.circle(-130,30)
    t.pensize(3)
    mlingpen(-205,96)
    t.pensize(3)
    t.pencolor("#ffffff")
    t.seth(286)
    t.circle(39,74)
    t.left(9)
    t.circle(331,32)
    t.circle(45,80)
    t.pensize(3)


def mlingpkqeye():
    t.color("#000000","#702c00")
    mlingpen(-110, 24)
    t.begin_fill()
    t.seth(0)
    t.circle(24)
    t.end_fill()
    mlingpen(-110,31)
    t.color("black","black")
    t.begin_fill()
    t.circle(20)
    t.end_fill()
    t.color("white", "white")
    mlingpen(-105, 53)
    t.begin_fill()
    t.circle(8)
    t.end_fill()
    t.color("#000000","#702c00")
    mlingpen(0,62)
    t.begin_fill()
    t.seth(0)
    t.circle(24)
    t.end_fill()
    mlingpen(2,70)
    t.color("black","black")
    t.begin_fill()
    t.circle(20)
    t.end_fill()
    mlingpen(5,92)
    t.color("white", "white")
    t.begin_fill()
    t.circle(8)
    t.penup()
    t.end_fill()
    t.hideturtle()


def mlingpkqcheek1():
    t.color("#9E4406", "#FE2C21")
    t.penup()
    t.goto(-130, -50)
    t.pendown()
    t.begin_fill()
    t.setheading(0)
    t.circle(27)
    t.end_fill()
    t.color("#9E4406", "#FE2C21")
    t.penup()
    mlingpen(53, -20)
    t.pendown()
    t.begin_fill()
    t.setheading(0)
    t.circle(27)
    t.end_fill()

def mlingweiba(x,y):
    mlingpen(x, y)
    t.pensize(3)
    t.pencolor("#923E24")
    t.fillcolor('#CD853F')
    t.begin_fill()
    t.seth(40)
    t.fd(200)
    t.seth(-80)
    t.fd(150)
    t.seth(210)
    t.fd(150)
    t.left(90)
    t.fd(100)
    t.right(95)
    t.fd(100)
    t.left(110)
    t.fd(70)
    t.right(110)
    t.fd(80)
    t.left(110)
    t.fd(30)
    t.right(110)
    t.fd(32)
    t.right(106)
    t.circle(100, 25)
    t.right(15)
    t.circle(-300, 2)
    t.seth(30)
    t.fd(40)
    t.left(100)
    t.fd(70)
    t.right(100)
    t.fd(80)
    t.left(100)
    t.fd(46)
    t.seth(66)
    t.circle(200, 38)
    t.right(10)
    t.fd(10)
    t.end_fill()
    mlingpen(202,250)
    t.pensize(3)
    t.pencolor("#923E24")
    t.fillcolor('#FBD624')
    t.begin_fill()
    t.seth(220)
    t.fd(120)
    t.circle(75, 120)
    t.left(50)
    t.fd(110)
    t.end_fill()


def mlingpkqcheek2(x, y, fx):
    mlingpen(x, y)
    t.seth(fx)
    t.pencolor("#840101")
    t.fillcolor('#CD0000')
    t.begin_fill()
    n = 1.8
    for i in range(120):
        if 0 <= i < 30 or 60 <= i < 90:
            n -= 0.05
            t.left(3)
            t.fd(n)
        else:
            n += 0.05
            t.left(3)
            t.fd(n)
    t.end_fill()



def mlingpkqmouth():
    mlingpen(-60,20)
    t.pensize(3)
    t.pencolor("#923E24")
    t.seth(-48)
    t.begin_fill()
    t.circle(15,110)
    t.right(90)
    t.circle(15,110)
    t.seth(0)
    mlingpen(-50,45)
    t.circle(5,180)



def mlingpkqshou1():
    mlingpen(-130,-30)
    t.pensize(3)
    t.pencolor("#923E24")
    t.fillcolor('#FBD624')
    t.seth(100)
    t.begin_fill()
    t.circle(130,30)
    t.right(100)
    t.fd(10)
    t.left(90)
    t.fd(10)
    t.right(60)
    t.fd(10)
    t.left(90)
    t.fd(10)
    t.right(30)
    t.fd(10)
    t.left(90)
    t.fd(10)
    t.right(30)
    t.fd(10)
    t.left(90)
    t.fd(10)
    t.right(50)
    t.circle(70,150)
    t.end_fill()

    mlingpen(-138,-67)
    t.pensize(2)
    t.pencolor("#DDA120")
    t.fillcolor('#DDA120')
    t.left(90)
    t.begin_fill()
    t.circle(40,40)
    t.left(10)
    t.circle(-60,70)
    t.left(40)
    t.circle(30,40)
    t.left(83)
    t.circle(70,110)
    t.end_fill()


def mlingpkqshou2():
    mlingpen(0,-40)
    t.pensize(3)
    t.pencolor("#923E24")
    t.fillcolor('#FBD624')
    t.seth(200)
    t.begin_fill()
    t.circle(55,90)
    t.fd(10)
    t.left(90)
    t.fd(10)
    t.right(60)
    t.fd(10)
    t.left(90)
    t.fd(10)
    t.right(90)
    t.fd(10)
    t.left(90)
    t.fd(10)
    t.right(60)
    t.fd(10)
    t.left(90)
    t.fd(10)
    t.right(50)
    t.circle(60,80)
    t.end_fill()


def mlingpkqball():
    mlingpen(-30,-250)
    t.pensize(3)
    t.pencolor("#000000")
    t.fillcolor('#CD0000')
    t.seth(0)
    t.begin_fill()
    t.circle(80)
    t.end_fill()
    mlingpen(-110,-170)
    t.seth(-90)
    t.pencolor("#000000")
    t.fillcolor('#ffffff')
    t.begin_fill()
    t.circle(80,180)
    t.end_fill()
    t.pensize(12)
    mlingpen(-105,-170)
    t.pencolor("#000000")
    t.goto(44,-170)
    t.pensize(3)
    mlingpen(-4,-170)
    t.pencolor("#000000")
    t.fillcolor('#000000')
    t.begin_fill()
    t.circle(28)
    t.end_fill()
    mlingpen(-11,-170)
    t.pencolor("#000000")
    t.fillcolor('#ffffff')
    t.begin_fill()
    t.circle(20)
    t.end_fill()
    mlingpen(-21,-170)
    t.pencolor("#000000")
    t.fillcolor('#ffffff')
    t.begin_fill()
    t.circle(10)
    t.end_fill()


def main():
    mlingweiba(50,120)
    mlingpkqface(30,0)
    mlingpkqyingyinying()
    mlingpkqcap()
    mlingpkqcheek2(-140,-10,300)
    mlingpkqcheek2(60, 50,80)
    mlingpkqshou1()
    mlingpkqjiao()
    mlingpkqball()
    mlingpkqshou2()
    mlingpkqmouth()
    mlingpkqeye()

t.color('#321320')
t.penup()
t.goto(260,-40)
t.pendown()
t.write("愿\n你\n拥\n有\n一\n只\n会\n永\n远\n爱\n你\n的\n皮\n卡\n丘\n",align="center",font=("黑体",15,"normal"))
t.penup()
t.goto(290,215)
t.pendown()
t.write("逆\n境\n清\n醒\n",align="center",font=("黑体",10,"normal"))



if __name__ == '__main__':
    main()
    t.done()
    t.hideturtle()

  如果你有自己喜欢的底图,可以将第19行的 “# t.bgpic("di_2_800.gif")” 这句里的图片文件名替换成你自己的图片文件名,记得将注释的 # 符号取消。

  本例草莓熊绘制窗口大小是800*800,绘制环境是python 3.10。 

逆境清醒 原创Python 绘图作品:

草莓熊python turtle绘图(风车版)附源代码

草莓熊python turtle绘图(玫瑰花版)附源代码

皮卡丘python 海龟绘图 (电力球版)附源代码

生日蛋糕系列(1)

立体多层玫瑰绘图(附源码)

DIY披萨饼系列python绘图(1)

 

   推荐阅读:

 19​​​
18草莓熊手持玫瑰花版python turtle绘图源代码
17

立体多层玫瑰绘图源码__玫瑰花python 绘图源码集锦

16

皮卡丘python turtle海龟绘图

15

【CSDN云IDE】个人使用体验和建议(含超详细操作教程)(python、webGL方向)

14

草莓熊python turtle绘图代码

13用代码过中秋,python海龟月饼你要不要尝一口?
12Python List 列表(创建、索引和切片、列表反转、添加删除修改查找元素)__实例详解(全)
11用代码写出浪漫合集(python 绘制爱心、玫瑰花,字符画爱心、前端特效玫瑰、爱心)
10Python函数方法实例详解全集(更新中...)
9matplotlib 自带绘图样式效果展示速查(全)
8手机屏幕坏了____怎么把里面的资料导出(18种方法)
72022年11月多家权威机构____编程语言排行榜__薪酬状况
6Python中Print()函数的用法___详解(全,例多)
5色彩颜色对照表系列(1~5)(16进制、RGB、CMYK、HSV、中英文名)
4Tomcat端口配置(详细)
3Tomcat 启动闪退问题解决集(八大类详细)
2Apache Tomcat 各版本发行时间( v10.1.0-M17~v3.0)
1草莓熊python turtle绘图(风车版)附源代码

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/5012.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Allegro在PCB上制作二维码和条形码操作指导

Allegro在PCB上制作二维码和条形码操作指导 当我们需要在PCB放置一个二维码或者条形码的时候,可以不需要额外去贴标签,可以直接在PCB上制作,如下图 制作出来的二维码和条形码是可以直接用扫码程序扫描的 具体操作步骤如下 首先要用was performance allegro productivity…

python Clickhouse 分布式表介绍和创建、插入和查询数据,以及解决遇到的问题

目录 一、分布式表和本地表 原理解析&#xff1a; 二、Clickhouse创建分布式表结构 三、python代码实现&#xff08;亲测有效&#xff09; 四、解决遇到的问题 解决 DB::Exception: Missing columns: wefgrgrfew while processing query: wefgrgrfew, required columns: …

【深度学习】第三章:卷积神经网络

文章目录1. 为什么要使用卷积神经网络&#xff1f;2. 卷积2.1 数学上的卷积2.2 深度学习的卷积3. 卷积的构成4. 卷积的特征5. 卷积的计算(1) 一维卷积计算(2) 二维卷积计算(黑白图片)(2) 三维卷积计算(彩色图片)6. 卷积的优势7. 卷积神经网络7.1 卷积层7.2 池化层7.3 全连接层8…

浅聊一下Nginx

目录 Nginx的下载与安装 去Nginx官网安装&#xff1a;nginx news 直接进入下载页面进行安装 直接安装&#xff1a; 在服务器上使用命令对nginx的安装过程 Nginx命令 Nginx配置文件结构 Nginx配置文件&#xff08;conf/nginx.conf&#xff09;正题分为三个部分&#xff1…

Vue框架的学习(Vue操作指令学习三 V-bind )第三课

Vue框架的学习(Vue操作指令学习三 V-bind )第三课 语法的学习关键在于实操 案例一 V-bind基本操作 通过这个案例了解基本的操作 <div id"app"><img src"./img/1-1 (1).jpg" alt""><!--! 绑定图片利用V-bind指令 --><img v-…

一本通1073;救援(c++)

#include <iostream> #include <cmath> using namespace std; int main() {// 屋顶数目、人数int n, m;// x坐标、y坐标、实际距离、所需时间double x, y, s, sum 0;cin >> n; // 输入屋顶数目for (int i 1; i < n; i){// 输入x、y坐标和人数cin >&g…

Rockland丨艾美捷Rockland大鼠γ-球蛋白说明书

艾美捷Rockland大鼠γ-球蛋白&#xff1a; 大鼠γ-球蛋白组分由含有全抗体和其他非白蛋白血浆蛋白的血清组分组成。丙种球蛋白可用于治疗&#xff0c;以暂时提高患者的免疫力&#xff08;如免疫抑制感染后&#xff09;或增加接受肾移植的可能性。γ-球蛋白级分可作为对照试剂用…

【问题记录与解决】jupyter notebook 无法重命名,无法运行测试代码 || jupyter notebook 中常用的两个快捷键。

可以回顾下之前遇到的小问题&#xff0c;因为这次的问题解决就有赖于之前记录的内容喔&#xff01; 一、问题记录与解决】启动Jupyter&#xff0c;运行代码时报错【Error】 || 通过 Jupyter 建立的Python文件在哪儿 || Jupyter 中 移动 Python 文件 到 指定文件夹 二、【记录】…

nosql期末

文章目录第一章 绪论选择判断题简答题1. NoSQL和关系型数据库在设计目标上有何主要区别&#xff1f;2. 简要总结一下NoSQL数据库的技术特点。第二章 NoSQL数据库的基本原理选择判断简答题1. 描述分布式数据管理的特点。2 什么是CAP原理&#xff1f;CAP原理是否适用于单机环境&a…

数据结构之顺序表

目录一、什么是顺序表二、顺序表的分类1、静态顺序表2、动态顺序表(重要)三、C语言实现顺序表1、顺序表的基本结构&#xff08;2&#xff09;、动态顺序表2、动态顺序表中常见的函数接口&#xff08;1&#xff09;、初始化&#xff08;2&#xff09;、销毁函数&#xff08;3&am…

Java:什么是Quarkus?

Quarkus是一个全栈Kubernetes原生Java框架&#xff0c;用于Java虚拟机(JVM)和原生编译&#xff0c;专门针对容器优化Java&#xff0c;使其成为无服务器、云和Kubernete环境的有效平台。 Quarkus旨在与流行的Java标准、框架和库(如Eclipse MicroProfile和Spring)以及Apache Kafk…

基于FOC电路低次谐波抑制Simulink仿真

Foc电路如下图 当Sa导通时当Sb导通时当Sa导通时 Dc电压全被C2吃了 Lr电流向→ 当Sb导通时 Dc电压全被C1吃了 Lr电流向← 假设C1C2C&#xff0c;开关频率接近无穷、占空比为50%时 Uc1Uc2Udc/2、Ilr0 当占空比D>50%,Uc2增大&#xff0c;Ilr→增大 当占空比D<50%,Uc1增…

【java基础系列】13- java的面向对象

面向对象 程序是为了模拟现实世界&#xff0c;解决现实问题而使用计算机语言编写的指令集合。 1、面向对象的思想&#xff08;Object Oriented Programming&#xff09; 一切客观存在的事物都是对象&#xff0c;万物皆对象。任何对象&#xff0c;一定具有自己的特征和行为 特…

【计算机网络】HTTPS协议的加密流程

文章目录HTTPS简介关于加密过程中的名词SSL中的加密操作对称加密非对称加密证书HTTPS执行流程总结HTTPS简介 HTTPS协议也是应用层的协议&#xff0c;它是在HTTP协议的基础上引入了加密层&#xff0c;称为SSL&#xff08;旧的叫法&#xff09;或TLS&#xff08;新的叫法&#x…

如何用卡片翻转动画制作一个星座运势页面

效果展示&#xff1a;前置准备&#xff1a; 图片素材 有文案素材的detail页面 配置按钮组件触发器 具体步骤&#xff1a; 添加配置按钮、图片组件 配置图片组件动画和触发器步骤分解&#xff1a; 添加配置轮播图基础组件 添加 按钮 组件 添加 图片 组件 选中 按钮 组件 在 数据…

【菜鸡读论文】Learning-based Video Motion Magnification

Learning-based Video Motion Magnification 哈喽&#xff0c;大家好呀&#xff01; 这周有点开心&#xff0c;看到了一篇很有趣的论文。最近天气好热&#xff0c;明明已经十一月了&#xff0c;最近的温度却一直在25度以上&#xff0c;甚至有种可以过夏天&#xff0c;穿裙子的…

怎么给图片添加贴纸?介绍几个简单的方法

不知道大家会不会跟我有同样的想法&#xff0c;不论是经过精心调整拍摄出来的照片&#xff0c;还是平时随手一拍的照片&#xff0c;要发到社交软件上时&#xff0c;都想要添加一些有趣的贴纸或者文字进去。如果照片的内容过于空乏&#xff0c;添加贴纸文字进去会增加照片的趣味…

数学基础之博弈论

1.移棋子游戏 mex为最小的不存在的自然数 #include<bits/stdc.h> using namespace std; const int N2e310,M2e410; int h[N],e[M],ne[M],idx; int n,m,k; int f[N]; void add(int a,int b) {e[idx]b,ne[idx]h[a],h[a]idx; } int sg(int u)//求sg函数 {if(f[u]!-1) return…

Ubuntu16.04搭建UbertoothOne环境

Ubuntu16.04搭建UbertoothOne环境 【支持原创&#xff0c;转载需经过作者同意&#xff0c;否则追究相关责任】 相关链接 ubertoothone 主页ubertoothone github 环境说明 操作系统&#xff1a;Ubuntu 16.04.3 LTSUbertooth软件版本&#xff1a;ubertooth 2020-12-R1Libbtb…

想要精通算法和SQL的成长之路 - 跳跃游戏系列

想要精通算法和SQL的成长之路 - 跳跃游戏系列前言一. 跳跃游戏二. 跳跃游戏II前言 想要精通算法和SQL的成长之路 - 系列导航 一. 跳跃游戏 原题链接 给定一个非负整数数组 nums &#xff0c;你最初位于数组的第一个下标 。数组中的每个元素代表你在该位置可以跳跃的最大长度。…