Ich versuche, ein Logo mit Javascript zu zeichnen, und ich muss eine zufällige Farbe aus einer festen Palette wählen.Zeichnen mit RGB-Farben aus einem Array
Ich habe die Farbpalette als ein Array von RGB-Werten eingerichtet, und dann verwende ich eine Zufallszahl, um eine der Farben aus dem Array auszuwählen.
Ich möchte das Ergebnis als die Farbe eines Kreises verwenden, der mit einem Leinwandbogen gezeichnet wird.
Also, das ist der Code, den ich bisher habe ...
// Define colour palette
var DarkColourPalette = [
{ r:45, g:10, b:55 }, // Dark purple
{ r:70, g:10, b:40 }, // Dark plum
{ r:0, g:5, b:70 }, // Dark blue
{ r:45, g:45, b:55 }, // Dark grey
{ r:50, g:40, b:40 }, // Dark brown
{ r:0, g:45, b:30 } // Dark green
];
var DarkColours = DarkColourPalette.concat();
// Draw O
contxt.beginPath();
contxt.arc(75, 40, 10, 0, 2 * Math.PI, false);
contxt.lineWidth = 10;
contxt.strokeStyle = "rgba(DarkColours[0],1)";
contxt.stroke();
die einen dunklen lila Kreis ziehen sollten, aber egal was ich versuche, habe ich nicht in der Lage gewesen, den Kontext zu erhalten. strokeStyle-Bit zum Akzeptieren der Farbwerte aus dem Array. Es verwendet nur Schwarz. http://codepen.io/RichardHolt/pen/mRRbpR
Ich bin neu in dieser Art der Sache: manuell eingefügt
Hier ist, wie es mit den Farbwerten aussieht. Bekomme ich hier nur die Syntax falsch oder belle ich den falschen Baum an?
Vielen Dank im Voraus für jede Hilfe ...
Wenn DarkColours [0] enthält "45,10,55" können Sie verwenden: contxt.strokeStyle = "rgba (" + DarkColours [0] + ", 1)"; – iguypouf
Sie müssen jedes Mal, wenn diese Funktion aufgerufen wird, Kreise mit unterschiedlichen Farben zeichnen? oder die Seite geladen ist, oder Sie möchten, dass der Kreis auf einmal verschiedene Farben hat –