/// <summary> /// Return the next pseudo-random number as a Color with a linear scale [0.0-1.0]. /// Use a range between <paramref name="min"/> [inclusive] and <paramref name="max"/> [inclusive] to reduce the color range. /// </summary> /// <param name="min">Minimum.</param> /// <param name="max">Max.</param> public Color color(float min, float max) { if ((max <= min) || (min < 0.0f) || (max > 1.0f)) { throw new ArgumentOutOfRangeException(); } return(WaveToRgb.LinearToRgb(ScaleFloatToRange((float)_rand.NextSingle(true), min, max, 0.0f, 1.0f))); }
// RANDOM RAINBOW COLOR public Color Rainbow(Normalization n, float t) { if (n == Normalization.STDNORMAL) { return(WaveToRgb.LinearToRgb((float)NormalDistribution.Normalize(_rand.NextSingle(true), t))); } else if (n == Normalization.POWERLAW) { return(WaveToRgb.LinearToRgb((float)PowerLaw.Normalize(_rand.NextSingle(true), t, 0, 1))); } else { return(WaveToRgb.LinearToRgb(_rand.NextSingle(true))); } }
// RANDOM RAINBOW COLOR public Color Rainbow() { return(WaveToRgb.LinearToRgb(_rand.NextSingle(true))); }