2

境界内で乱数を取得するにはどうすればよいですか? 最小境界と最大境界の X、Y、Z 座標があります (これはビデオゲームです)。これらの境界内にあるランダムな座標を取得するにはどうすればよいですか?

4

3 に答える 3

1

これを試しましたか?

(Math.random() * upperLimit) + lowerLimit
于 2013-07-02T01:04:12.100 に答える
1

整数が必要な場合は、Random クラスを使用します。

import java.util.Random;

整数を生成するには:

Random r = new Random();
r.nextInt(max - min + 1) + min;  // This will return a random int between min and max

ランダムフロートを生成するには (Random クラスは必要ありません)

Min + (Math.random() * (Max - Min))
于 2013-07-02T01:04:24.030 に答える
0
float[] getRandomVect
(float minX, float minY, float minZ, float maxX, float maxY, float maxZ)
{
      //Vectors can be translated, multipled or scaled later
      float[] result=new float[3];
      result[0]=Math.random()*(maxX-minX)+minX;
      result[1]=Math.random()*(maxY-minY)+minY;
      result[2]=Math.random()*(maxZ-minZ)+minZ;
      return result;
}

 //later usage:
 float [] randomVector= getRandomVect(2,2,3,5,5,10); 
 // makes vector's X  between 2 and 5
 // Y between 2 and 5
 // Z between 3 and 10
于 2013-07-02T01:10:02.320 に答える