用python画五角星、填充不了颜色_python的turtle画五角星内部不能填充的解决办法...

本文介绍了使用Python的turtle库绘制五角星时遇到内部填充颜色问题的解决方法。通过额外绘制一个正五边形并填充红色,成功解决了五角星内部无法填充颜色的难题。详细步骤包括计算所需边长、调整角度,最终实现完美填充。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.网上画的五角星方法,本机发现内部五角星不能填充。

1.1代码如:

from turtle import* #从turtle中导出所有模块

color("black","red") #黑色画线,红色填充颜色

begin_fill()#开始填充

for i in range(5):

fd(200)#forward的缩写,设置五角星的大小

right(144) #向右的角度为144,固定角度

end_fill()#填充颜色完毕

exitonclick()#可以关闭窗口右上角的“×”

1.2图:

2.如何解决内部正五边形颜色填充问题

2.1其实再画一次正五边形,然后填充颜色为红色,就可以了。

2.2需要知道几个参数:

2.3 条件:|2-5|=200,角876=108°,角176=72°,角716=36°

求|2-7|=?=x和|7-6|=?=y

2x+y=200;sin18°=0.3

Y/2=xsin18°=0.3x

X=76.9,y=46.2

2.4画内部正五边形的代码:

pu()#提笔,不留痕迹

fd(76.9)#向前走76.9像素,即|2-7|的x长度

pd()#落笔,开始画线,即7点坐标位置,开始画五角星内的正五边形水平向左的边长

#画内部五边形,并且填充红色

fillcolor("red") #填充颜色

begin_fill()#开始填充颜色

for i in range(5):#一共有5条边,画5次,5个循环

fd(46.2)#第一次画,向右边长46.2

right(72)#转角72°

end_fill()#结束填充红色

2.5 效果图

3所以解决五角星内部正五边形无法填充红色的办法就是:

补充画一个正五边形,并填充红色。

4.完整代码为:

from turtle import * #从turtle中导出所有模块

fillcolor("red") #设置填充颜色

begin_fill() #开始填充

while True:

fd(200) #forward的缩写,设置五角星的大小

right(144)#向右的角度为144,固定角度

if abs(pos()) < 1:#查看,画笔是否回到原点,(回到原点时,为真)

break#如果回到,原点则跳出循环

end_fill()#填充完毕

pu()#提笔,不留痕迹

fd(76.9)#向前走76.9像素,即|2-7|的x长度

pd()#落笔,开始画线,即7点坐标位置,开始画五角星内的正五边形水平向左的边长

#画内部五边形,并且填充红色

fillcolor("red") #填充颜色

begin_fill()#开始填充颜色

for i in range(5):#一共有5条边,画5次,5个循环

fd(46.2)#第一次画,向右边长46.2

right(72)#转角72°

end_fill()#结束填充红色

exitonclick()#可以关闭窗口右上角的“×”

5.成功,发现问题,解决问题。加油。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值