作阴阳词

2024-06-01 05:48:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我一直在尝试在Python上画阴阳圆,但到目前为止,我只能画一个黑色的半圆。在这里我附上了它对我来说是什么样的,它应该是什么样的。我还应该在代码中添加什么? *当填充时更容易理解。在

我的代码:

import turtle

turtle.begin_fill()
turtle.circle(50,180)
turtle.end_fill()
turtle.hideturtle()

对我来说是什么样子: results

它应该是怎样的: desired results


Tags: 代码importfillresultsendbegin黑色turtle
2条回答

你已经很接近了,如果你从数学上考虑阴阳符号,它只是一堆弧,两个大的在外面,两个在里面,长度的一半。 如果外部圆弧的长度为50,则内部圆弧的长度必须为25。海龟在默认情况下逆时针移动,因此要获得顺时针曲线,请使用负半径。是这样的:

turtle.begin_fill()
turtle.circle(50, 180)
turtle.circle(25, 180)
turtle.circle(-25, 180)
turtle.end_fill()
turtle.circle(-50, 180)

之后,乌龟会回到它开始的地方,圆圈的位置应该大约是海龟正下方50的四分之一和四分之三,在那里你只需要做两个完整的圆圈。在

虽然我很喜欢@CameronFerguson的单曲线法(+1),但对于初学者来说,将其简单地看作五个圆可能更容易。第一个,最大的圆是在一边填充的,正如您已经实现的那样。接下来的两个圆是原始圆半径的一半,以垂直轴为中心,颜色相反:

enter image description here

为最小的两个圆选择一个大小,上面的圆是原始半径的1/8,使用与前一个圆相同的中心点并再次反转颜色。现在,切换到最终颜色,并适当地提高笔以避免不需要的线条,我们得到:

enter image description here

通过一些额外的考虑,这两组内圈可以在一个循环中完成,从而将对turtle.circle()的调用次数减少一半。不过,如果你对@CameronFerguson的曲线方法感到满意,那就去吧!在

相关问题 更多 >