我需要弄清楚如何控制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