diff options
Diffstat (limited to 'rand.c')
| -rw-r--r-- | rand.c | 30 |
1 files changed, 14 insertions, 16 deletions
@@ -3,7 +3,20 @@ #include "balls.h" -static float randFloat(float lo, float hi); +float +randFloat(float lo, float hi) { + float r, diff; + static int isInitialized = 0; + + if (!isInitialized) { /* First call. */ + srand(time(0)); + isInitialized = 1; + } + + r = (float) rand() / RAND_MAX; + diff = hi - lo; + return lo + r*diff; +} float2 randPtInRect(Rectangle r) { @@ -19,18 +32,3 @@ randVec(float xmin, float xmax, float ymin, float ymax) { float2 v = {randFloat(xmin, xmax), randFloat(ymin, ymax)}; return v; } - -static float -randFloat(float lo, float hi) { - float r, diff; - static int isInitialized = 0; - - if (!isInitialized) { /* First call. */ - srand(time(0)); - isInitialized = 1; - } - - r = (float) rand() / RAND_MAX; - diff = hi - lo; - return lo + r*diff; -} |