Javascript 如何保存/存储随机函数的输出?
我正在为不同季节的树编码(尽管树干和随机分支的原始代码不是我自己的)。对于冬天,我想让树随机化,但也有活泼的雪花 然而,每次调用生成树的函数时,随机数(显然)是不同的。有没有办法保存函数的输出(或者只保存其中的random()函数)并绘制输出Javascript 如何保存/存储随机函数的输出?,javascript,p5.js,Javascript,P5.js,我正在为不同季节的树编码(尽管树干和随机分支的原始代码不是我自己的)。对于冬天,我想让树随机化,但也有活泼的雪花 然而,每次调用生成树的函数时,随机数(显然)是不同的。有没有办法保存函数的输出(或者只保存其中的random()函数)并绘制输出 draw()函数调用生成树的函数,因此如果多次调用该函数,树将快速更改,因为它每次都是随机化的。树函数必须重复自身来绘制树,因此有很多随机数。最后,我只想画一棵随机树,然后反复画同一棵树,这样draw函数就可以反复运行,而不会覆盖树。下面是我想保存的随机数
draw()
函数调用生成树的函数,因此如果多次调用该函数,树将快速更改,因为它每次都是随机化的。树函数必须重复自身来绘制树,因此有很多随机数。最后,我只想画一棵随机树,然后反复画同一棵树,这样draw函数就可以反复运行,而不会覆盖树。下面是我想保存的随机数的两行代码:
rotate(random(-0.05,0.05));
if (random(1.0) < 0.6) {
旋转(随机(-0.05,0.05));
if(随机(1.0)<0.6){
您希望在此处使用randomSeed()函数。如果每次在draw()函数顶部使用相同的数字调用该函数,则会得到相同的“随机”树。如果更改数字,则会得到不同的“随机”树。如果您想要新树(可能在单击鼠标时),然后您可以更改号码。例如:
let-rs;
函数设置(){
rs=随机(0,1000);
//你的代码
}
函数绘图(){
随机种子(rs);
//你的代码
}
功能鼠标点击{
rs=随机(0,1000);
}
您可以通过将值存储在变量中来实现这一点。下面是一个简化的示例:
var x;
var y;
function setup(){
createCanvas(500, 500);
x = random(width);
y = random(height);
}
function draw(){
background(32);
ellipse(x, y, 25, 25);
}
这只是一个简单的例子,但是你可以通过使用一个类似于树的类来存储它自己的值,这样你会变得更加有趣。但是想法是一样的:生成一次随机值,将它存储在一个变量中,然后在你绘制它时使用这个变量
您还可以将树绘制到一个缓冲区,然后将该缓冲区绘制到屏幕上。createGraphics()
函数对于这种方法很有用。我们可以看更多的代码吗?