我需要弄清楚如何控制tu.py.py中的self._newline()。在我的Python Mandelbrot套装程序中,当我开始做奇怪的事情时,我发现了这件事;有关更多详细信息,请参阅Why is turtle lightening pixels?。但是,当我试图制作一个极其类似的程序来绘制复数的切线时,同样的事情也没有发生......但是随着时间的推移,程序显着减速。如何控制龟的self._newline()?
基本上,我问3个问题:
是什么这些程序导致这种差异的区别? (智力询问)
如何激活/停止self._newline()? (必要的,主要问题)
如何保持self._newline()不会导致颜色偏差(DSM建议我将self._pencolor()引用插入到turtle.py中,但我不知道如何执行此操作) ? (不需要,但希望)
即使你没有回答中间的问题,你的输入仍将不胜感激!
复杂的切线代码:
import turtle
import math
import cmath
turtle.speed(0)
def bengant(size, onelen):
turtle.left(90)
for x in range(-size*onelen, size*onelen+1):
turtle.up()
turtle.goto(x, -size*onelen-1)
turtle.down()
for y in range(-size*onelen, size*onelen+1):
c = complex(x*1.0/onelen,y*1.0/onelen)
k = cmath.tan(c)
turtle.pencolor(0,math.atan(k.real)/math.pi+1/2,math.atan(k.imag)/math.pi+1/2)
turtle.forward(1)
bengant(2,100)
x = raw_input("Press Enter to Exit")
我试过这种方法与' benoit()'上面的例子,它可以有效地消除这个问题。但是,我发现如果你不小心,它也会产生额外的行文物和/或严重影响你的代码的性能。我很好奇,看到你使用这种技术修复了有问题的代码。 – cdlane 2017-07-20 03:30:32