在 Python 海龟绘图中,绘制多角星是个常见问题,在这里对多角星进行总结。
绘制方法
例如,在绘制边长为 100 的五角星的时候。使用方法为
for i in range(0,5): t.fd(100) t.rt(180-180/5)
例如,在绘制边长为 100 的七角星的时候。使用方法为
for i in range(0,7): t.fd(60) t.rt(180-180/7)
为什么没有偶数角星
偶数角星,不能一笔画。在一笔画问题中,要求图中交叉点的顶点数目等于0或者2。
而偶数角星不符合一笔画的要求。
在多角形绘制中,为什么转过的角度是 180-180 / n 呢?
每一个多角星都会有一个外接圆。圆周角的度数等于它所对的弧度数的一半。所以 n 角星,就是 360 / 2 / n=180 / n。
则转过的角度是 180-180 / n。