我正在学习。我想知道如何在-1到1之间生成。那是因为opengl标准化的设备坐标仅在-1和1之间。有人提到随机浮点数仅在0.0到0.9999999之间。
这是我的代码
points.addParticles(new GeoPoint(-random.nextFloat(),random.nextFloat(),random.nextFloat()),180);
多数民众赞成在x,y,z和随机颜色。
我只想在屏幕内部生成具有随机位置的随机点。
最佳答案
Random.nextFloat
的值大于或等于0,小于1-即[0,1)的范围。因此,要将其映射到[-1, 1)
范围,您只需要乘以2并减去1。
float value = random.nextFloat() * 2 - 1;
通常,要获得
[x, y)
范围内的值,可以使用random.nextFloat() * (x - y) + x