0
for(int i = 1; i < 10; i++) {
var shape = new Shape();

shape.graphics.beginPath();
shape.graphics.moveTo(r1.nextInt(1500), r2.nextInt(1500));
shape.graphics.lineTo(r3.nextInt(1500), r4.nextInt(1500));
shape.graphics.strokeColor(Color.Green);
shape.graphics.closePath();
stage.addChild(shape);
 }

線の色をランダムに変更するにはどうすればよいですか?

4

2 に答える 2

1

StageXL では、色は実際には単なる整数です。したがって、@ bp74 が言うように、次のことができます。

var a = 255; // Assuming you want full opacity every time.
var r = random.nextInt(256); // red = 0..255
var g = random.nextInt(256); // green = 0..255
var b = random.nextInt(256); // blue = 0..255
var color = (a << 24) + (r << 16) + (g << 8) + b;
shape.graphics.strokeColor(color);

randomこれは、上記のどこかで定義したと仮定しています:

var random = new Random();

ほとんどの場合、複数のインスタンスは必要ないことに注意してください( 、、およびのように)。Randomr1r2r3r4

于 2016-05-24T16:36:43.647 に答える
0

StageXL (および Flash) の色は 32 ARGB 値です。アルファ、赤、緑、青のカラー チャネルには 4x8 ビットを使用します。次の例は、白の色 0xFFFFFFFF を示しています。

var a = 255; // alpha = 0..255
var r = 255; // red = 0..255
var g = 255; // green = 0..255
var b = 255; // blue = 0..255
var color = (a << 24) + (r << 16) + (g << 8) + b;
于 2016-05-08T20:12:16.040 に答える