【问题标题】:Colors are not filling in certain places某些地方没有填充颜色
【发布时间】:2019-04-25 08:30:22
【问题描述】:

我正在利用海龟制作 xmastree。任务是为各个部分着色。代码的“主干”部分工作并将正确填充。 Layer1()、Layer2() 和 Layer3() 未按应有的颜色填充颜色。任何帮助将不胜感激。

我已经查看了堆栈溢出的其他问题。我重新定位了我的变量。依然没有。

""" 实验 9 练习 3 作者:乔纳森·惠特利

定义一个函数 drawXmasTree(t, blc, scale = 1) 如果您愿意,您可以在前三个之外添加更多参数(注意:为任何其他参数提供默认值!)。您的 树应该类似于棕色树干上的三个重叠的绿色三角形(包含彩色球饰)。 blc 和 scale 应该像前面的练习一样工作。以两种不同的尺度显示结果。

"""

from turtle import Turtle
scale = 1.25

def drawXmasTree():
    a = trunk()
    b = Layer1()
    c = Layer2()
    d = Layer3()

def trunk():
    t = Turtle()
    t.pencolor("brown")
    t.fillcolor("brown")
    t.shape("turtle")
    t.up()
    t.goto((scale * -100), (scale * -100))
    t.down()
    for count in range(2):
        t.begin_fill()
        t.forward(scale * 10)
        t.left(90)
        t.forward(scale *100)
        t.left(90)
        t.end_fill()
    t.hideturtle()

def Layer1():
    t = Turtle()
    t.pencolor("green")
    t.fillcolor("green")
    t.shape("turtle")
    t.up()
    t.goto((scale * -150), 0)
    t.down()
    for count in range(3):
        t.begin_fill()
        t.forward(scale * 110)
        t. left(120)
        t.end_fill()
    t.hideturtle()

def Layer2():
    t = Turtle()
    t.pencolor("green")
    t.fillcolor("green")
    t.shape("turtle")
    t.up()
    t.goto((scale * -147), 15)
    t.down()
    for count in range(3):
        t.begin_fill()
        t.forward(scale * 104)
        t.left(120)
        t.end_fill()
    t.hideturtle()

def Layer3():
    t = Turtle()
    t.fillcolor("green")
    t.pencolor("green")
    t.shape("turtle")
    t.up()
    t.goto((scale * -145), 30)
    t.down()
    for count in range(3):
        t.begin_fill()
        t.forward(scale * 100)
        t.left(120)
        t.end_fill()
    t.hideturtle()

def main():
    u = drawXmasTree()
main()

当代码运行时,乌龟应该显示出来,绘制正确的彩色线,然后形状应该被填充。

【问题讨论】:

    标签: python-3.x turtle-graphics


    【解决方案1】:

    因此,在运行如此多的测试时,我似乎通过将 begin_fill() 和 end_fill 排除在 for 循环之外而获得了积极的结果。我不知道为什么这在 Trunk() 部分有效,但在后续部分中不起作用。

    如果您找到了使此代码更好的方法,请告诉我。我很想学习一些东西并改进我的编码。

    谢谢。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-07-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-12-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多