2015-05-07 408 views
0

我想讓一個物體根據彩虹改變它的顏色。 因爲這沒有奏效,我試圖用visual.graph來想象這個問題: visual.graph 在x軸下可以看到可視化顏色的顏色。 它不會逐漸改變。如果酒吧應該建立一個很好的光譜。vPython - 逐漸改變顏色

from visual.graph import * 

def regenbogenfarben(ausgangsfarbe=(255,0,0)): 
    "liefert ausgehend vom input die nächste Farbe im Regenbogen" 
    # vergleiche http://www.mikrocontroller.net/topic/238304 
    step = 51 
    r,g,b = ausgangsfarbe  # split the tuple... 
    if r==255 and b==0 and g!=255: 
     g+=5    # mehr grün 
    elif b==0 and g==255 and r!=0: 
     r-=5    # weniger rot 
    elif r==0 and g==255 and b!=255: 
     b+=5    # mehr blau 
    elif b==255 and r==0 and g!=0: 
     g-=5    # weniger grün 
    elif g==0 and b==255 and r!=255: 
     r+=5    # mehr rot 
    elif g==0 and r==255 and b!=0: 
     b-=5    # weniger blau 
    #print((r,g,b)) 
    return r,g,b   # tupel zurückgeben 
gdisplay(background=color.white, foreground=color.black, 
     ytitle="Farbanteil", xtitle="step") 
r=gcurve(color=color.red) 
g=gcurve(color=color.green) 
b=gcurve(color=color.blue)  # drei Farbanteile veranschaulichen 

rgb=(255,0,0) 

farbe=gvbars(color=color.red) # Farbe darstellen 

for i in range(6*51+20): 
    r.plot(pos=(i,rgb[0])) 
    g.plot(pos=(i,rgb[1])) 
    b.plot(pos=(i,rgb[2])) 
    farbe.plot(pos=(i,-10),color=rgb) 
    rgb=regenbogenfarben(rgb) 

回答

0

好吧,我發現了錯誤: vPython只需從0到1的號碼的顏色。 所以所有的顏色除以255作品。

enter image description here