首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何随机改变颜色?Dart和StageXL

如何随机改变颜色?Dart和StageXL
EN

Stack Overflow用户
提问于 2016-05-09 03:13:12
回答 2查看 142关注 0票数 0
代码语言:javascript
复制
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);
 }

如何随机更改线条的颜色?

EN

回答 2

Stack Overflow用户

发布于 2016-05-25 00:36:44

在StageXL中,颜色实际上只是整数。所以,正如@bp74所说,你可以这样做:

代码语言:javascript
复制
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

代码语言:javascript
复制
var random = new Random();

请注意,您很可能不需要多个Random实例(就像r1r2r3r4一样,我假设是这样的)。

票数 1
EN

Stack Overflow用户

发布于 2016-05-09 04:12:16

StageXL (和Flash)中的颜色是32 ARGB值。alpha、红色、绿色和蓝色通道使用4x8位。下面的示例显示白色的0xFFFFFFFFF颜色:

代码语言:javascript
复制
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;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37103827

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档