Verlaufsfarbe des Kreises ändern?
-
21-12-2019 - |
Frage
Ich versuche, die Farbe eines Kreisverlaufs zu ändern, nachdem er instanziiert wurde.Ich habe versucht, einen Farbfilter anzuwenden, aber dieser scheint keine Farbverläufe zu unterstützen.Wie würde ich das erreichen?
Ich zeichne die Fackel so
flare.graphics
.beginRadialGradientFill(["#f15a29","#000"], [0, 1], 0, 0, 0, 0, 0, 250)
.drawCircle(0, 0, 250);
Danke
Lösung
Sie müssen es bei jedem Tick neu zeichnen, wenn Sie möchten, dass es sich ändert.Das hört sich so an, als wäre es keine leistungsstarke Option, aber die Graphics-Klasse macht dies trotzdem bei jedem Tick, sodass das Löschen und Neuzeichnen einer Form bei jedem Tick nicht viel anders ist.
Sie können auch in die schauen inject
-Methode, mit der Sie einige Methoden definieren können, die sich auf den Kontext auswirken können, wenn die Grafik jedes Mal neu gezeichnet wird:
Aus den Dokumenten:
function setColor(color) {
this.fillStyle = color;
}
// this will draw the rect in green:
myGraphics.beginFill("#000").inject(setColor, "green").drawRect(0,0,100,100);
http://www.createjs.com/Docs/EaselJS/classes/Graphics.html#method_inject