ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

Python的基本绘图<三>

2022-02-27 15:13:51  阅读:259  来源: 互联网

标签:基本 150 Python seth 绘图 forward left 绘制 fill


学习目标:

今天继续对示例进行分析,进一步巩固Turtle库的相关语法。

学习内容

示例1 绘制圆+正方形,绘制要求:
a.绘制一个正方形并且内切一个填充的圆;
b.正方形边长为100并且轮廓线为红色;
c.内切圆轮廓线为红色并且填充为黄色;
d.绘图过程中隐藏画笔,可以清晰看见图形绘制过程。

代码演示:

import turtle as t
t.speed(8)
t.pencolor("red")
t.pensize(2)
t.seth(0)
t.forward(50)
t.left(90)
t.forward(100)
t.left(90)
t.forward(100)
t.left(90)
t.forward(100)
t.goto(0,0)

t.seth(0)
t.fillcolor("yellow")
t.begin_fill()
t.circle(50)
t.end_fill()
t.hideturtle()
t.done()

运行结果演示:
在这里插入图片描述

示例2 绘制半圆+三角形,上边是一个红色轮廓、黄色填充的边长为300的等边三角形,下边是一个绿色填充,半径为150的半圆,绘制要求:
a.画布背景为白色,等边三角形为红色轮廓,黄色填充;
b.半圆为绿色填充并且与等边三角形在底边的中点处相切;
c.能看见绘制过程并且隐藏画笔。

代码演示:

import turtle as t
t.speed(10)
t.pensize(2)
#画半圆
t.fillcolor("green")
t.begin_fill()
t.seth(0)
t.forward(150)
t.left(90)
t.circle(150, 180)
t.goto(0, 0)
t.end_fill()

t.penup()
t.goto(0, 150)
t.pendown()
t.pencolor("red")
t.pensize(2)
t.fillcolor("yellow")
t.begin_fill()
t.seth(0)
t.forward(150)
t.seth(120)
t.forward(300)
t.left(120)
t.forward(300)
t.goto(0, 150)
t.end_fill()

t.hideturtle()
t.done()

运行结果演示:
在这里插入图片描述
示例3 绘制正六边形,绘制要求:
a.背景为白色,正六边形和三角形的填充分别为红色和绿色;
b.图形中间为边长为150的正六边形,周围是六个等边三角形;
c.正六边形的上下两边要求与X轴方向平行;
d.绘图过程中隐藏画笔,并能清楚看见图形绘制过程。

代码演示:

import turtle as t
t.speed(10)

#绘制正六边形
t.fillcolor("red")
t.begin_fill()
t.seth(0)
t.penup()
t.forward(150)
t.pendown()
t.left(120)
t.forward(150)
for i in range(5):
    t.left(60)
    t.forward(150)
t.end_fill()
t.penup()
t.goto(0,0)

#绘制三角形
for i in range(6):
    t.penup()
    t.seth(i * 60)
    t.forward(150)
    t.left(60)
    t.pendown()
    t.fillcolor("green")
    t.begin_fill()
    t.forward(150)
    t.left(120)
    t.forward(150)
    t.left(120)
    t.forward(150)
    t.end_fill()
    t.penup()
    t.goto(0, 0)

t.hideturtle()
t.done()

运行结果演示:
在这里插入图片描述

标签:基本,150,Python,seth,绘图,forward,left,绘制,fill
来源: https://blog.csdn.net/TYJ00/article/details/123148987

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有