脚本专栏 
首页 > 脚本专栏 > 浏览文章

python海龟绘图之画国旗实例代码

(编辑:jimmy 日期: 2025/1/7 浏览:3 次 )

画之前肯定要知道规格图,我找了一个大致的图。

参考图片:

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海龟绘图之画国旗实例代码

总结

上一篇:Django自定义YamlField实现过程解析
下一篇:Python监听剪切板实现方法代码实例
一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?