72 return Next(exclusiveMaximum);
81 public int GetRandomInt(
int inclusiveMinimum,
int exclusiveMaximum)
83 return Next(inclusiveMinimum, exclusiveMaximum);
111 return NextDouble() >= 1 - probability;
122 return GetRandomBool((
float) tryNumberSinceLastPositive / (
float) maxNumberOfTries);
135 return GetRandomBool(Mathf.Pow(probability, 1.72689f) * tryNumberSinceLastPositive);
175 return Convert.ToSingle(NextDouble());
185 return Convert.ToSingle(NextDouble() * exclusiveMaximum);
196 return Convert.ToSingle(NextDouble() * (exclusiveMaximum - inclusiveMinimum)) + inclusiveMinimum;
235 NextBytes(bytesArray);
250 double angle = this.NextDouble() * 2 * Math.PI;
251 double r = radius * Math.Sqrt(NextDouble());
252 double x = center.x + r * Math.Cos(angle);
253 double y = center.y + r * Math.Sin(angle);
254 return new Vector2( Convert.ToSingle(x), Convert.ToSingle(y) );
276 double angle = 2.0 * Math.PI * this.NextDouble();
277 double x = center.x + radius * Math.Cos(angle);
278 double y = center.y + radius * Math.Sin(angle);
279 return new Vector2( Convert.ToSingle(x), Convert.ToSingle(y) );
304 public Color
GetColorHSV(
float hueMin = 0.0f,
float hueMax = 1f,
float saturationMin = 0.0f,
float saturationMax = 1f,
float valueMin = 0.0f,
float valueMax = 1f,
float alphaMin = 1f,
float alphaMax = 1f)
An easier to use and a feature-rich class to generate pseudo-random results.
Vector2 GetPointInsideCircle(float radius=1f)
Returns a random point inside a circle with center (0, 0).
RandomEssentials(int seed)
Creates a pseudo-random number generator, which is an algorithm that produces a sequence of numbers t...
float GetRandomFloat()
Returns a random float between 0 (included) and 1 (excluded)
int GetRandomInt(int inclusiveMinimum, int exclusiveMaximum)
Returns a random integer that is within a specified range.
static RandomEssentials GetNew()
Creates a pseudo-random number generator, which is an algorithm that produces a sequence of numbers t...
Vector2 GetRandomVector2(float inclusiveMinimum, float exclusiveMaximum)
Returns a random Vector2 with each parameter within a specified range.
bool GetPseudoRandomDistributedBool(int tryNumberSinceLastPositive, float probability)
Returns a random bool using pseudo-random distribution.
Vector2 GetPointOnCircle(float radius=1f)
Returns a random point inside a circle with center (0, 0).
void SetRandomBytes(Byte[] bytesArray)
Fills the elements of a specified array of bytes with random numbers.
float GetRandomFloat(float inclusiveMinimum, float exclusiveMaximum)
Returns a random float that is within a specified range.
Color GetColorHSV(float hueMin=0.0f, float hueMax=1f, float saturationMin=0.0f, float saturationMax=1f, float valueMin=0.0f, float valueMax=1f, float alphaMin=1f, float alphaMax=1f)
Vector2 GetPointInsideCircle(Vector2 center, float radius=1f)
Returns a random point inside a circle.
static RandomEssentials GetNew(int seed)
Creates a pseudo-random number generator, which is an algorithm that produces a sequence of numbers t...
int GetRandomInt(int exclusiveMaximum)
Returns a non-negative random integer that is less than the specified maximum.
RandomEssentials()
Creates a pseudo-random number generator, which is an algorithm that produces a sequence of numbers t...
float GetRandomFloat(float exclusiveMaximum)
Returns a random float that is less than the specified maximum.
Vector3 GetRandomVector3(float inclusiveMinimum, float exclusiveMaximum)
Returns a random Vector3 with each parameter within a specified range.
bool GetRandomBoolTrueEnsured(int tryNumberSinceLastPositive, int maxNumberOfTries)
Returns a random bool that will be true before the maximum number of tries is exceeded.
int GetRandomSign(float negativeProbability=0.5f)
Returns a random sign as -1 or +1.
bool GetRandomBool(float probability=0.5f)
Returns a random bool.
Vector2 GetPointOnCircle(Vector2 center, float radius=1f)
Returns a random point on a circle.