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

War es hilfreich?

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

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top