在python中利用海龟绘图画一个国旗?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
画之前肯定要知道规格图,我找了一个大致的图。
参考图片:
绘制大星的方法很简单,五角星的补角是144度。
绘制小五角星有点麻烦,因为我国国旗上的小五角星并不是平放的(美帝曾经这样把我们的国旗搞错过),而是总有一个角正对着大五角星的中心!我的方法是,定位到小五角星的中心点,然后根据角度后退一定的长度。这个角度可以根据反勾股定理算出来(这有计算工具),长度我是按照大五角星的中心点到角尖的距离除以3得到的。
代码:
from turtle import * screensize(2000,2000,'white')#设置画布大小 #绘制旗面 pencolor('red') pu() goto(-300,-200) pd() fillcolor('red') begin_fill() for i in range(0,2): fd(600) lt(90) fd(400) lt(90) end_fill() #绘制大五角星 pu() pencolor('yellow') goto(-260,120) pd() fillcolor('yellow') begin_fill() for i in range(0,5): fd(120) rt(144) end_fill() #绘制四个小五角星 list1 = [(-100,160),(-60,120),(-60,60),(-100,20)]#四个五角星的中心坐标 list2 = [31.98,8.13,-15.59,-38.66]#相对角度0的后退1.111需要左转的角度 for j in range(0,4): seth(0)#这是龟头角度为0 pu() goto(list1[j])#定位到五角星中心 lt(list2[j])#旋转角度,以背向指向大五角星的角尖 bk(1.111)#从五角星中心到指向大五角星的角尖(龟倒着爬) lt(18)#五角星的半角角度 pd() fillcolor('yellow') begin_fill() for i in range(0, 5): fd(40) rt(144) end_fill() pu()#抬起龟头 ht()#隐藏龟头 done()#保持
效果图:
关于在python中利用海龟绘图画一个国旗问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。