matlab海龟作图,Python学习之turtle绘图篇

2024-01-26 10:10

本文主要是介绍matlab海龟作图,Python学习之turtle绘图篇,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

画一个红色的五角星

from turtle import *color('red','red')

begin_fill()for i in range(5):

fd(200)

rt(144)

end_fill()

done()

效果图:

f802c5ace5fe369a5a64e2d5fa8a7ed6.png

画一条蟒蛇

#PythonDraw.py

importturtle#turtle.setup(650,350,200,200)

turtle.penup()

turtle.fd(-250)

turtle.pendown()

turtle.pensize(25)

turtle.pencolor("purple")

turtle.seth(-40)for i in range(4):

turtle.circle(40,80)

turtle.circle(-40,80)

turtle.circle(40,80/2)

turtle.fd(40)

turtle.circle(16,180)

turtle.fd(40*2/3)

效果图:

34b185170eeede90ebbfc017a362c4d0.png

画一组内切圆

importturtle

turtle.pensize(2)

turtle.circle(10)

turtle.circle(40)

turtle.circle(80)

turtle.circle(120)

效果图:

d2154cba8d5d9c76e3cdcddc8b72286b.png

画一个社会人小猪佩奇,代码是借鉴某位大佬的

from turtle import *

defnose(x,y):

pu()

goto(x,y)

pd()

seth(-30)

begin_fill()

a=0.4

for i in range(120):if 0<=i<30 or 60<=i<90:

a=a+0.08lt(3)

fd(a)else:

a=a-0.08lt(3)

fd(a)

end_fill()

pu()

seth(90)

fd(25)

seth(0)

fd(10)

pd()

pencolor(255,155,192)

seth(10)

begin_fill()

circle(5)

color(160,82,45)

end_fill()

pu()

seth(0)

fd(20)

pd()

pencolor(255,155,192)

seth(10)

begin_fill()

circle(5)

color(160,82,45)

end_fill()defhead(x,y):

color((255,155,192),"pink")

pu()

goto(x,y)

seth(0)

pd()

begin_fill()

seth(180)

circle(300,-30)

circle(100,-60)

circle(80,-100)

circle(150,-20)

circle(60,-95)

seth(161)

circle(-300,15)

pu()

goto(-100,100)

pd()

seth(-30)

a=0.4

for i in range(60):if 0<=i<30 or 60<=i<90:

a=a+0.08lt(3)

fd(a)else:

a=a-0.08lt(3)

fd(a)

end_fill()defears(x,y):

color((255,155,192),"pink")

pu()

goto(x,y)

pd()

begin_fill()

seth(100)

circle(-50,50)

circle(-10,120)

circle(-50,54)

end_fill()

pu()

seth(90)

fd(-12)

seth(0)

fd(30)

pd()

begin_fill()

seth(100)

circle(-50,50)

circle(-10,120)

circle(-50,56)

end_fill()defeyes(x,y):

color((255,155,192),"white")

pu()

seth(90)

fd(-20)

seth(0)

fd(-95)

pd()

begin_fill()

circle(15)

end_fill()

color("black")

pu()

seth(90)

fd(12)

seth(0)

fd(-3)

pd()

begin_fill()

circle(3)

end_fill()

color((255,155,192),"white")

pu()

seth(90)

fd(-25)

seth(0)

fd(40)

pd()

begin_fill()

circle(15)

end_fill()

color("black")

pu()

seth(90)

fd(12)

seth(0)

fd(-3)

pd()

begin_fill()

circle(3)

end_fill()defcheek(x,y):

color((255,155,192))

pu()

goto(x,y)

pd()

seth(0)

begin_fill()

circle(30)

end_fill()defmouth(x,y):

color(239,69,19)

pu()

goto(x,y)

pd()

seth(-80)

circle(30,40)

circle(40,80)defbody(x,y):

color("red",(255,99,71))

pu()

goto(x,y)

pd()

begin_fill()

seth(-130)

circle(100,10)

circle(300,30)

seth(0)

fd(230)

seth(90)

circle(300,30)

circle(100,3)

color((255,155,192),(255,100,100))

seth(-135)

circle(-80,63)

circle(-150,24)

end_fill()defhands(x,y):

color((255,155,192))

pu()

goto(x,y)

pd()

seth(-160)

circle(300,15)

pu()

seth(90)

fd(15)

seth(0)

fd(0)

pd()

seth(-10)

circle(-20,90)

pu()

seth(90)

fd(30)

seth(0)

fd(237)

pd()

seth(-20)

circle(-300,15)

pu()

seth(90)

fd(20)

seth(0)

fd(0)

pd()

seth(-170)

circle(20,90)deffoot(x,y):

pensize(10)

color((240,128,128))

pu()

goto(x,y)

pd()

seth(-90)

fd(40)

seth(-180)

color("black")

pensize(15)

fd(20)

pensize(10)

color((240,128,128))

pu()

seth(90)

fd(40)

seth(0)

fd(90)

pd()

seth(-90)

fd(40)

seth(-180)

color("black")

pensize(15)

fd(20)deftail(x,y):

pensize(4)

color((255,155,192))

pu()

goto(x,y)

pd()

seth(0)

circle(70,20)

circle(10,330)

circle(70,30)defsetting():

pensize(4)

hideturtle()

colormode(255)

color((255,155,192),"pink")

setup(840,500)

speed(10)defmain():

setting()

nose(-100,100)

head(-69,167)

ears(0,160)

eyes(0,140)

cheek(80,10)

mouth(-20,30)

body(-32,-8)

hands(-56,-45)

foot(2,-177)

tail(148,-155)

done()

main()

效果极佳:

3cbe3aafc994f6b7f3bad04000e29ac9.png

简单总结一下好了,其实turtle库还是非常有用的,以后可以画张很有创意的图片去表白女神了,讲不好那天就用上了呢:

显示器和turtle窗体的左上角都是原点

turtle.setup(width,height,startx,starty)设置窗体大小及位置,后面两个参数可选,非必需

空间坐标:绝对坐标:右方向x轴,上方向为y轴,正中心为原点,turtle.goto(x,y)让在任何位置的海龟到达指定的位置

海龟坐标:turtle.fd(d)海龟向前行多少像素

turtle.bk(d)向海龟的反方向运行

turtle.circle(r,angle)以海龟左边的某一点为圆心进行曲线运行

角度坐标:绝对角度:turtle.seth(angle)angle为绝对度数,表示改变海龟的运行方向

海龟角度:turtle.right(angle),turtle.left(angle)改变海龟的运行方向

RGB体系:turtle.colormode(mode)mode=1.0则改用0和1表示,mode=255则改用255和0表示,默认为小数

库引用:import ,from import *或者from import ,import as

画笔控制函数:turtle.penup()别名:turtle.pu()抬起画笔,turtle.pendown()别名:turtle.pd()落下画笔,turtle.pensize(width)别名:turtle.width(width)设置画笔宽度,turtle.pencolor(color)设置画笔颜色,color有三种方式,颜色字符串,或者RGB小数值,或者RGB元组值,例如:turtle.pencolor((0.63,0.13,0.94))

运动控制函数:turtle.circle(r,angle),r(海龟左方向)表示半径,angle表示绘制的角度,默认是360度

方向控制函数:turtle.seth(angle)改变海龟的行进方向,顺时针转向

原文出处:https://www.cnblogs.com/andrew3/p/10604218.html

这篇关于matlab海龟作图,Python学习之turtle绘图篇的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/646468

相关文章

Django开发时如何避免频繁发送短信验证码(python图文代码)

《Django开发时如何避免频繁发送短信验证码(python图文代码)》Django开发时,为防止频繁发送验证码,后端需用Redis限制请求频率,结合管道技术提升效率,通过生产者消费者模式解耦业务逻辑... 目录避免频繁发送 验证码1. www.chinasem.cn避免频繁发送 验证码逻辑分析2. 避免频繁

精选20个好玩又实用的的Python实战项目(有图文代码)

《精选20个好玩又实用的的Python实战项目(有图文代码)》文章介绍了20个实用Python项目,涵盖游戏开发、工具应用、图像处理、机器学习等,使用Tkinter、PIL、OpenCV、Kivy等库... 目录① 猜字游戏② 闹钟③ 骰子模拟器④ 二维码⑤ 语言检测⑥ 加密和解密⑦ URL缩短⑧ 音乐播放

python panda库从基础到高级操作分析

《pythonpanda库从基础到高级操作分析》本文介绍了Pandas库的核心功能,包括处理结构化数据的Series和DataFrame数据结构,数据读取、清洗、分组聚合、合并、时间序列分析及大数据... 目录1. Pandas 概述2. 基本操作:数据读取与查看3. 索引操作:精准定位数据4. Group

Python pandas库自学超详细教程

《Pythonpandas库自学超详细教程》文章介绍了Pandas库的基本功能、安装方法及核心操作,涵盖数据导入(CSV/Excel等)、数据结构(Series、DataFrame)、数据清洗、转换... 目录一、什么是Pandas库(1)、Pandas 应用(2)、Pandas 功能(3)、数据结构二、安

Python使用Tenacity一行代码实现自动重试详解

《Python使用Tenacity一行代码实现自动重试详解》tenacity是一个专为Python设计的通用重试库,它的核心理念就是用简单、清晰的方式,为任何可能失败的操作添加重试能力,下面我们就来看... 目录一切始于一个简单的 API 调用Tenacity 入门:一行代码实现优雅重试精细控制:让重试按我

Python安装Pandas库的两种方法

《Python安装Pandas库的两种方法》本文介绍了三种安装PythonPandas库的方法,通过cmd命令行安装并解决版本冲突,手动下载whl文件安装,更换国内镜像源加速下载,最后建议用pipli... 目录方法一:cmd命令行执行pip install pandas方法二:找到pandas下载库,然后

Python实现网格交易策略的过程

《Python实现网格交易策略的过程》本文讲解Python网格交易策略,利用ccxt获取加密货币数据及backtrader回测,通过设定网格节点,低买高卖获利,适合震荡行情,下面跟我一起看看我们的第一... 网格交易是一种经典的量化交易策略,其核心思想是在价格上下预设多个“网格”,当价格触发特定网格时执行买

Python标准库之数据压缩和存档的应用详解

《Python标准库之数据压缩和存档的应用详解》在数据处理与存储领域,压缩和存档是提升效率的关键技术,Python标准库提供了一套完整的工具链,下面小编就来和大家简单介绍一下吧... 目录一、核心模块架构与设计哲学二、关键模块深度解析1.tarfile:专业级归档工具2.zipfile:跨平台归档首选3.

使用Python构建智能BAT文件生成器的完美解决方案

《使用Python构建智能BAT文件生成器的完美解决方案》这篇文章主要为大家详细介绍了如何使用wxPython构建一个智能的BAT文件生成器,它不仅能够为Python脚本生成启动脚本,还提供了完整的文... 目录引言运行效果图项目背景与需求分析核心需求技术选型核心功能实现1. 数据库设计2. 界面布局设计3

Python进行JSON和Excel文件转换处理指南

《Python进行JSON和Excel文件转换处理指南》在数据交换与系统集成中,JSON与Excel是两种极为常见的数据格式,本文将介绍如何使用Python实现将JSON转换为格式化的Excel文件,... 目录将 jsON 导入为格式化 Excel将 Excel 导出为结构化 JSON处理嵌套 JSON: