【Python】用turtle绘制“混沌皮”

news2024/10/5 12:56:00

画的不好看,不喜勿喷。

目录

展示​

设置界面

绘制全身 

绘制眼睛 

全部代码 


展示

我用的是turtle绘制的,不会的可以看这篇文章:【Python】turtle库的介绍及使用(计算机二级常考)_刘佳皓_Leo的博客-CSDN博客_tutle库https://blog.csdn.net/weixin_70445937/article/details/126414684?spm=1001.2014.3001.5501当然我写的可能不是很好,有大佬写的很好,可以去看看。

设置界面

首先设置一个画布,方便我们在上面操作。

p = t.pen()
t.hideturtle()

t.colormode(255)  # 颜色模式
t.speed(0)
t.screensize(800, 800, "#e7f1fb")  # 画布大小背景颜色
t.setup(width=800, height=800, startx=None, starty=None)  # 绘图窗口的大小和起始坐标
# t.bgpic("di_2_800.gif")
t.title("可爱的混沌皮")  # 设置绘图窗口的标题
t.resizemode('no-resize')  # 大小调整模式:auto,user,noresize
t.tracer(1)
t.hideturtle()

定义一个方法,这样可以让我们快速移动画笔。 

def pen(x, y):
    # 提笔
    t.penup()
    # 位移
    t.goto(x, y)
    # 落笔
    t.pendown()

绘制全身 

我没有用直线,全用的是曲线来绘制。

def face(x, y):
    # 身体
    t.begin_fill()
    t.fillcolor("#f7fbfe")
    t.pensize(3)
    t.begin_fill()
    pen(100, 100)
    # 设置海龟的方向
    t.setheading(90)
    t.circle(100, 180)
    t.setheading(230)
    t.circle(-300, 40)
    t.circle(40, 80)
    t.circle(10, 60)
    t.setheading(330)
    t.circle(-700, 30)
    t.setheading(55)
    t.circle(-700, 35)
    t.circle(10, 90)
    t.circle(100, 30)
    t.setheading(154)
    t.circle(-1080, 10)
    t.end_fill()
    t.setheading(190)
    t.circle(100, 30)
    t.circle(-100, 30)
    t.circle(-90, 40)
    t.setheading(130)
    t.circle(100, 30)

    
    # 嘴
    t.begin_fill()
    pen(1, 110)
    t.fillcolor('#ce545f')
    t.setheading(-20)
    t.circle(30, 60)
    t.setheading(290)
    t.circle(-15, 199)
    t.end_fill()

    # 左眉毛
    t.pensize(8)
    t.color('#3f383b')
    pen(-30, 177)
    t.fillcolor('#ce545f')
    t.setheading(180)
    t.circle(30, 45)
    # 右眉毛
    t.pensize(8)
    t.color('#3f383b')
    pen(40, 185)
    t.fillcolor('#ce545f')
    t.setheading(160)
    t.circle(30, 45)

    # 头巾
    t.color('#3e3739')
    t.pensize(8)
    pen(45, 190)
    t.setheading(165)
    t.circle(140, 50)

绘制眼睛 

眼睛绘制了一个,另一个是复制调了一下参数。

# 左眼
    pen(-20, 130)
    t.setheading(50)
    t.circle(20, 280)
    t.setheading(50)
    t.circle(-20, 80)
    t.begin_fill()
    pen(-21, 135)
    t.fillcolor('#d57436')
    t.setheading(50)
    t.circle(10, 280)
    t.setheading(50)
    t.circle(-10, 80)
    t.end_fill()
    t.begin_fill()
    pen(-24, 138)
    t.fillcolor('#25170a')
    t.setheading(50)
    t.circle(5)
    t.end_fill()

    # 右眼
    pen(60, 140)
    t.setheading(50)
    t.circle(20, 280)
    t.setheading(50)
    t.circle(-20, 80)
    t.begin_fill()
    pen(47, 143)
    t.fillcolor('#d57436')
    t.setheading(50)
    t.circle(10, 280)
    t.setheading(50)
    t.circle(-10, 80)
    t.end_fill()
    t.begin_fill()
    pen(43, 146)
    t.fillcolor('#25170a')
    t.setheading(50)
    t.circle(5)
    t.end_fill()

全部代码 

下面就是全部代码了,喜欢可以直接拿去,运行就可以执行。

import turtle as t

p = t.pen()
t.hideturtle()

t.colormode(255)  # 颜色模式
t.speed(0)
t.screensize(800, 800, "#e7f1fb")  # 画布大小背景颜色
t.setup(width=800, height=800, startx=None, starty=None)  # 绘图窗口的大小和起始坐标
# t.bgpic("di_2_800.gif")
t.title("可爱的混沌皮")  # 设置绘图窗口的标题
t.resizemode('no-resize')  # 大小调整模式:auto,user,noresize
t.tracer(1)
t.hideturtle()



def pen(x, y):
    # 提笔
    t.penup()
    # 位移
    t.goto(x, y)
    # 落笔
    t.pendown()


def face(x, y):
    # 身体
    t.begin_fill()
    t.fillcolor("#f7fbfe")
    t.pensize(3)
    t.begin_fill()
    pen(100, 100)
    # 设置海龟的方向
    t.setheading(90)
    t.circle(100, 180)
    t.setheading(230)
    t.circle(-300, 40)
    t.circle(40, 80)
    t.circle(10, 60)
    t.setheading(330)
    t.circle(-700, 30)
    t.setheading(55)
    t.circle(-700, 35)
    t.circle(10, 90)
    t.circle(100, 30)
    t.setheading(154)
    t.circle(-1080, 10)
    t.end_fill()
    t.setheading(190)
    t.circle(100, 30)
    t.circle(-100, 30)
    t.circle(-90, 40)
    t.setheading(130)
    t.circle(100, 30)

    # 左眼
    pen(-20, 130)
    t.setheading(50)
    t.circle(20, 280)
    t.setheading(50)
    t.circle(-20, 80)
    t.begin_fill()
    pen(-21, 135)
    t.fillcolor('#d57436')
    t.setheading(50)
    t.circle(10, 280)
    t.setheading(50)
    t.circle(-10, 80)
    t.end_fill()
    t.begin_fill()
    pen(-24, 138)
    t.fillcolor('#25170a')
    t.setheading(50)
    t.circle(5)
    t.end_fill()

    # 右眼
    pen(60, 140)
    t.setheading(50)
    t.circle(20, 280)
    t.setheading(50)
    t.circle(-20, 80)
    t.begin_fill()
    pen(47, 143)
    t.fillcolor('#d57436')
    t.setheading(50)
    t.circle(10, 280)
    t.setheading(50)
    t.circle(-10, 80)
    t.end_fill()
    t.begin_fill()
    pen(43, 146)
    t.fillcolor('#25170a')
    t.setheading(50)
    t.circle(5)
    t.end_fill()

    # 嘴
    t.begin_fill()
    pen(1, 110)
    t.fillcolor('#ce545f')
    t.setheading(-20)
    t.circle(30, 60)
    t.setheading(290)
    t.circle(-15, 199)
    t.end_fill()

    # 左眉毛
    t.pensize(8)
    t.color('#3f383b')
    pen(-30, 177)
    t.fillcolor('#ce545f')
    t.setheading(180)
    t.circle(30, 45)
    # 右眉毛
    t.pensize(8)
    t.color('#3f383b')
    pen(40, 185)
    t.fillcolor('#ce545f')
    t.setheading(160)
    t.circle(30, 45)

    # 头巾
    t.color('#3e3739')
    t.pensize(8)
    pen(45, 190)
    t.setheading(165)
    t.circle(140, 50)

    # 足球
    pen(-210, -30)
    t.pensize(3)
    t.circle(28)
    t.circle(28, 15)
    t.left(56)
    t.fd(15)
    t.right(56)
    t.fd(15)
    t.left(56)
    t.circle(28, 15)
    t.left(56)
    t.fd(15)
    t.right(56)
    t.fd(15)
    t.left(56)
    t.circle(28, 15)
    t.left(56)
    t.fd(15)
    t.right(56)
    t.fd(15)
    t.left(56)
    t.circle(28, 15)
    t.left(56)
    t.fd(15)
    t.right(56)
    t.fd(15)
    t.left(56)
    t.circle(28, 15)
    t.left(56)
    t.fd(15)
    t.right(56)
    t.fd(15)
    t.right(180)
    t.fd(15)
    t.right(62)
    t.fd(10)
    t.left(45)
    t.fd(11)
    t.left(77)
    t.fd(11)
    t.left(180)
    t.fd(11)
    t.left(30)
    t.fd(11)
    t.left(90)
    t.fd(9.1)
    t.left(180)
    t.fd(9)
    t.left(15)
    t.fd(11)
    t.left(90)
    t.fd(7.1)
    t.left(180)
    t.fd(7.1)
    t.left(15)
    t.fd(11)
    t.left(77)
    t.fd(9)
    t.left(180)
    t.fd(9)
    t.left(41)
    t.fd(10)


def main():
    face(-132, 115)


if __name__ == '__main__':
    main()
t.mainloop()

代码中有的借鉴一些大佬,第一次用海龟画东西,一个新的尝试。

好了以上就是全部内容,感谢您的观看。

4171ce0ed063a8f376f4200bd638f145.gif

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

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

相关文章

肝了一周总结的SpringBoot常用注解大全,一目了然!

平时使用SpringBoot开发项目,少不了要使用到它的注解。这些注解让我们摆脱了繁琐的传统Spring XML配置,让我们开发项目更加高效,今天我们就来聊聊SpringBoot中常用的注解! SpringBoot实战电商项目mall(50kstar&#xf…

aardio工程实例——MIDI音乐盒(源码)

前段时间,aardio增强了midiOut库相关功能,我结合这个库写了个程序,一方面自娱自乐,同时也给新接触aardio的朋友做个参考。 主要界面: 奉送两个乐谱: 外婆的澎湖湾 ________, 晚风轻拂澎湖湾 3,__,5,__,5,_…

车载以太网DoIP测试专栏 - 总纲

本专栏的目的:无论你是刚入行的小白还是对DoIP有一定工作经验的从业人员,保证在你完成这块的讲解后,首先让你了解DoIP要测试哪些?再者为何要测试这些是否还有更多的内容需要去测试,最后如何实现DoIP协议的测试&#xf…

智能制造工业互联简述

智能制造系统架构通过生命周期、系统层级和智能功能三个维度构建完成,主要解决智能制造标准体系结构和框架的建模研究 生命周期是由设计、生产、物流、销售、服务等一系列相互联系的价值创造活动组成的链式集合。生命周期中各项活动相互关联、相互影响。不同行业的生…

构造函数、原型和实例的关系

构造函数、原型和实例的关系: 每个构造函数都有一个原型对象,原型有一个属性指回构造函数,而实例有一个内部指针指向原型。如果原型是另一个类型的实例呢?那就意味着这个原型本身有一个内部指针指向另一个原型,相应地另…

[附源码]计算机毕业设计Python第三方游戏零售平台(程序+源码+LW文档)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程 项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等…

Unity实战篇 |Unity 打包exe 实现隐藏窗口标题栏、隐藏最小化最大化关闭按钮

🎬 博客主页:https://xiaoy.blog.csdn.net 🎥 本文由 呆呆敲代码的小Y 原创,首发于 CSDN🙉 🎄 学习专栏推荐:Unity系统学习专栏 🌲 游戏制作专栏推荐:游戏制作 &…

【疾病分类】模糊逻辑分类叶病严重程度分级系统【含GUI Matlab源码 194期】

⛄一、模糊逻辑(Fuzzy Logic)简介 理论知识参考:模糊逻辑(Fuzzy Logic) ⛄二、部分源代码 function varargout LeafDiseaseGradingSystemGUI(varargin) % LeafDiseaseGradingSystemGUI MATLAB code for LeafDiseaseGradingSystemGUI.fig % LeafDiseaseGradingSy…

云原生 | go-micro@v4.9.0源码解析(建议收藏)

go-microv4.9.0源码阅读一、前言二、创建微服务三、源码阅读操作一:注册服务处理操作二:组件配置操作三:启动微服务Step 1 :启动微服务Step 2 :开启服务关闭监听Step 3 :停⽌Server组件Step 4 :…

毕业设计 基于java web的网上零食销售系统的设计与实现

文章目录前言一、项目设计1. 模块设计功能分析前台功能后台功能2. 实现效果二、部分源码项目源码前言 今天学长向大家分享一个 web项目: 基于java web的网上零食销售系统的设计与实现 一、项目设计 1. 模块设计 功能分析 经过对时下大型电商网站的调查,对该系统…

计算机毕业设计 SSM与Vue的垃圾分类系统(源码+论文)

文章目录1 项目简介2 实现效果2.1 界面展示3 设计方案3.1 概述3.2 系统流程3.2.1 系统开发流程3.2.2 登录流程3.3 系统结构设计4 最后1 项目简介 Hi,各位同学好呀,这里是M学姐! 今天向大家分享一个今年(2022)最新完成的毕业设计项目作品&am…

学人工智能好找工作吗 ?Python就业前景怎么样?

学人工智能好找工作吗?Python就业前景怎么样?人工智能前景很好,中国正在产业升级,工业机器人和人工智能方面都会是热点,而且正好是学习的好时机。但是,也有一个问题大家要注意: 学习的难度比较高…

[附源码]Python计算机毕业设计Django智能衣橱APP

项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等等。 环境需要 1.运行环境:最好是python3.7.7,…

数据类型相关笔记

C、C、java强调类型&#xff1b; JavaScript、python、php不看重类型&#xff0c;甚至不需要事先定义。 类型 ○ 整数 ○ 浮点数 ○ 逻辑 ○ 指针 ○ 自定义类型 sizeof 查看所占字节 给出某个类型或变量在内存中所占据的字节数 # include <stdio.h>int main(void) …

怎么把avi转成mp4格式?

怎么把avi转成mp4格式&#xff1f;这是最近大家问的比较频繁的一个问题&#xff0c;avi是一种音频视频的交错格式&#xff0c;可以极大的压缩视频文件本身所占用的内存空间&#xff0c;但是同时引起的负面缺点是使视频画质受损&#xff0c;所以大家在遇到avi格式视频时。可以转…

编程明明是程序员的工作,关学生什么事?

写在前面&#xff1a; 我手里这个魔方&#xff0c;任何一个人都可以轻松地把它打乱&#xff0c;但要想把它复原&#xff0c;就不是每个人都能做到的了。我会还原魔方&#xff0c;而你不会&#xff0c;这能不能说明我比你聪明呢&#xff1f;并不能。 还原一个三阶魔方是有特定的…

12基于储能电站服务的冷热电多微网系统双层优化配置(matlab程序)

参考文献 基于储能电站服务的冷热电多微网系统双层优化配置——吴盛军&#xff08;2020电网技术&#xff09; 主要内容 分析共享储能电站的运行方式和盈利机制。将储能电站服务应用到冷热电联供型多微网系统中&#xff0c;建立考虑两个不同时间尺度问题的双层规划模型&#…

pyTorch入门(四)——导出Minist模型,C++ OpenCV DNN进行识别

学更好的别人&#xff0c;做更好的自己。——《微卡智享》本文长度为2548字&#xff0c;预计阅读8分钟前言前三章介绍了pyTorch训练的相关&#xff0c;我们也保存模型成功了&#xff0c;今天这篇就是使用C OpenCV的DNN模块进行手写图片的推理。实现效果导出的推理模型使用的是M…

基于JSP数码产品交易

开发工具(eclipse/idea/vscode等)&#xff1a; 数据库(sqlite/mysql/sqlserver等)&#xff1a; 功能模块(请用文字描述&#xff0c;至少200字)&#xff1a; 网站前台&#xff1a;网站介绍、帮助信息、数码资讯、数码产品、讨论信息 管理员功能&#xff1a; 1、管理网站介绍、帮…

运维基础【黑马系列笔记整理分享(上)】

运维基础【黑马系列笔记整理分享(上&#xff09;】 因为笔记所记内容太多&#xff0c;所以我分成了上下两部分来分享给大家查看学习&#xff01;同时我会持续更新博客发布更加优质的文章&#xff0c;希望大家多多支持与关注&#xff01;感谢&#xff01; 一、运维概述 1、运维…