转载:https://blog.csdn.net/csdnsevenn/article/details/80650456

图片源自网络

作者

丁彦军

如需转载,请联系原作者授权。

今年社交平台上最火的带货女王是谁?范冰冰?杨幂?Angelababy?不,是猪猪女孩小猪佩奇。

如果你经常用抖音、快手、B站、知乎、微博……或者类似的任何一个内容或社交平台,那你很大概率能答出这道题:

答案是:掌声送给社会人。

随着口号喊响,社会人小猪佩奇似乎一夜之间就在短视频平台和社交网络上爆火了,同时网络上遍布了小猪佩奇九步画法。于是我在儿童节这一天画了一下,结果,不忍直视......

我画的,哈哈

人家的画

观察这个图像可以发现,小猪佩奇在构图基本是各种曲线,类抛物线、类圆、类椭圆、类二次贝塞尔曲线。这里说的都是“类”,这也正是小猪佩奇的构图精髓,一种手绘风格,而不是标准刻板的线条。在前端技术选型上,画图首先想到的是svg、canvas,但它们本身就擅长画图,而且网上都有在线编辑svg的工具,这就没意思了,我想佩奇也不会答应的。于是我想用纯粹的Python来做,这样更有挑战,因为画图画曲线不是Python擅长的事情。

基本思路:选好画板大小,设置好画笔颜色,粗细,定位好位置,依次画鼻子,头、耳朵,眼睛,腮,嘴,身体,手脚,尾巴,完事。

都知道,turtle 是 python 内置的一个比较有趣味的模块,俗称 海龟绘图,它是基于 tkinter 模块打造,提供一些简单的绘图工具。

在海龟作图中,我们可以编写指令让一个虚拟的(想象中的)海龟在屏幕上来回移动。这个海龟带着一只钢笔,我们可以让海龟无论移动到哪都使用这只钢笔来绘制线条。通过编写代码,以各种很酷的模式移动海龟,我们可以绘制出令人惊奇的图片。使用海龟作图,我们不仅能够只用几行代码就创建出令人印象深刻的视觉效果,而且还可以跟随海龟看看每行代码如何影响到它的移动。这能够帮助我们理解代码的逻辑。所以海龟作图也常被用作新手学习 Python 的一种方式。更丰富详细的功能及知识可以参考:(官方文档:https://docs.python.org/3/library/turtle.html)

了解了tuttle的用法之后就可以开始实战了。哈哈,先看看效果视频:

详细代码如下:

from turtle import*

def nose(x,y):#鼻子   penup()#提起笔   goto(x,y)#定位   pendown()#落笔,开始画   setheading(-30)#将乌龟的方向设置为to_angle/为数字(0-东、90-北、180-西、270-南)   begin_fill()#准备开始填充图形   a=0.4   for i in range(120):       if 0<=i<30 or 60<=i<90:           a=a+0.08           left(3) #向左转3度           forward(a) #向前走a的步长       else:           a=a-0.08           left(3)           forward(a)   end_fill()#填充完成

   penup()   setheading(90)   forward(25)   setheading(0)   forward(10)   pendown()   pencolor(255,155,192)#画笔颜色   setheading(10)   begin_fill()   circle(5)   color(160,82,45)#返回或设置pencolor和fillcolor   end_fill()

   penup()   setheading(0)   forward(20)   pendown()   pencolor(255,155,192)   setheading(10)   begin_fill()   circle(5)   color(160,82,45)   end_fill()

def head(x,y):#头   color((255,155,192),"pink")   penup()   goto(x,y)   setheading(0)   pendown()   begin_fill()   setheading(180)   circle(300,-30)   circle(100,-60)   circle(80,-100)   circle(150,-20)   circle(60,-95)   setheading(161)   circle(-300,15)   penup()   goto(-100,100)   pendown()   setheading(-30)   a=0.4   for i in range(60):       if 0<=i<30 or 60<=i<90:           a=a+0.08           lt(3) #向左转3度           fd(a) #向前走a的步长       else:           a=a-0.08           lt(3)           fd(a)   end_fill()

def ears(x,y): #耳朵   color((255,155,192),"pink")   penup()   goto(x,y)   pendown()   begin_fill()   setheading(100)   circle(-50,50)   circle(-10,120)   circle(-50,54)   end_fill()

   penup()   setheading(90)   forward(-12)   setheading(0)   forward(30)   pendown()   begin_fill()   setheading(100)   circle(-50,50)   circle(-10,120)   circle(-50,56)   end_fill()

def eyes(x,y):#眼睛   color((255,155,

转载于:https://www.cnblogs.com/xudj/p/10291273.html

turtle 20秒画完小猪佩奇“社会人”相关推荐

  1. python画小猪佩奇视频_用 Python 20 秒画完小猪佩奇“社会人”!附效果视频+完整代码...

    原标题:用 Python 20 秒画完小猪佩奇"社会人"!附效果视频+完整代码 导读:今年社交平台上最火的带货女王是谁?范冰冰?杨幂?Angelababy?不,是猪猪女孩小猪佩奇. ...

  2. Python 20 秒画完小猪佩奇“社会人”!

    每天写代码的程序员,你们知道今年社交平台上最火的带货女王是谁吗?范冰冰?杨幂?Angelababy?不,是猪猪女孩小猪佩奇. 如果你经常用抖音.快手.B 站.知乎.微博--或者类似的任何一个内容或社交 ...

  3. 这个程序员用 Python 20 秒画完小猪佩奇“社会人”!

    点击上方"CSDN",选择"置顶公众号" 关键时刻,第一时间送达! 作者 | 丁彦军 责编 | 唐小引 每天写代码的程序员,你们知道今年社交平台上最火的带货女王 ...

  4. python写小猪佩奇_这个程序员用 Python 20 秒画完小猪佩奇“社会人”!

    点击上方"CSDN",选择"置顶公众号" 关键时刻,第一时间送达! 作者 | 丁彦军 责编 | 唐小引 每天写代码的程序员,你们知道今年社交平台上最火的带货女王 ...

  5. 用 Python 20秒画完小猪佩奇“社会人”

    Python中文社区全球Python中文开发者的精神部落 今年社交平台上最火的带货女王是谁?范冰冰?杨幂?Angelababy?不,是猪猪女孩小猪佩奇. 如果你经常用抖音.快手.B站.知乎.微博--或 ...

  6. python 20秒画完小猪佩奇“社会人”

    转自:恋习Python(微信号:sldata2017) 感觉这个特别有意思,哈哈哈 观察这个图像可以发现,小猪佩奇在构图基本是各种曲线,类抛物线.类圆.类椭圆.类二次贝塞尔曲线.这里说的都是" ...

  7. python画图小猪佩奇_吊炸天!Python 20秒画出小猪佩奇

    原标题:吊炸天!Python 20秒画出小猪佩奇 今年社交平台上的带货女王是谁?范冰冰?杨幂?Angelababy?不,是猪猪女孩小猪佩奇. 小猪佩奇在构图基本是各种曲线,类抛物线.类圆.类椭圆.类二 ...

  8. 用python turtle画人_Python中如何用turtle库画出小猪佩奇社会人

    1 from turtle import * 2 3 def nose(x,y):#鼻子 4 penup()#提起笔 5 goto(x,y)#定位 6 pendown()#落笔,开始画 7 sethe ...

  9. 小猪佩奇python_一段代码画出小猪佩奇社会人 Python

    复制内容到剪贴板 代码:# coding:utf-8 import turtle as t t.pensize(4) t.hideturtle() t.colormode(255) t.color(( ...

最新文章

  1. 企业智能化升级之路:CSDN《2017-2018中国人工智能产业路线图V1.0》重磅发布
  2. 人类吃屎用屎指南:用做肥料不如制咖啡、当展品、做炸弹
  3. windows bat 批处理 !vm 合并快播文件
  4. Java线程相关的热门面试题
  5. win7无损扩大c盘空间_无损网络导航的空间模型
  6. 火币辟谣:警惕假冒火币生态链网站
  7. Spring讲解二:Spring中的Bean配置0
  8. Windows下误删文件解决办法
  9. kalilinux装到u盘上的弊端_你有一个 U 盘制作多系统安装盘的需求吗,YUMI 帮你秒实现!...
  10. C# 注册Dll文件
  11. Atitit.编程语言新特性 通过类库框架模式增强 提升草案 v3 q27
  12. Java 集合练习题
  13. Vbs脚本编程简明教程
  14. java实现支付宝扫码付款
  15. 程序员月薪过3万,却感叹活得不如狗,北漂压力太大又不敢辞职
  16. 医疗管理系统软件 linux系统,MyPatients 4.0.2 发布,医疗信息管理系统
  17. 社会人文跨计算机考研,各位跨专业考研党,不要违反这个规则,不然结果会让人遗憾...
  18. 六款自适应引导页HTML源码
  19. Java基础面试题精选汇总,备战面试突破篇--直击offer
  20. gram矩阵的性质_矩阵分析(九)Gram矩阵

热门文章

  1. Anaconda自带Python编译器Jupyter Notebook显示代码行数
  2. linux桌面天气,Ubuntu 14.10中安装和配置天气应用
  3. read/fread write/fwrite 的区别
  4. php字符串连接符、三元运算符
  5. 计算机常用英语1000个,1000个常用英语单词.pdf
  6. c语言初始化字符数组为空,怎么把已经初始化的字符数组设置为空?
  7. uva 294 ——Divisors
  8. 排序算法时间复杂度和稳定性
  9. C语言中 \r, \n, \b
  10. visual studio 2015 配置好qt5后, 第一次运行出现 无法打开源文件“QtWidgets/QApplication”和无法运行rc.exe的解决方案