Merge "MathUtils: Remove static Random field."
This commit is contained in:
committed by
Android (Google) Code Review
commit
a444636d39
@@ -24,7 +24,6 @@ import java.util.Random;
|
||||
* @hide Pending API council approval
|
||||
*/
|
||||
public final class MathUtils {
|
||||
private static final Random sRandom = new Random();
|
||||
private static final float DEG_TO_RAD = 3.1415926f / 180.0f;
|
||||
private static final float RAD_TO_DEG = 180.0f / 3.1415926f;
|
||||
|
||||
@@ -185,28 +184,6 @@ public final class MathUtils {
|
||||
return maxStart + (maxStart - maxStop) * ((value - minStart) / (minStop - minStart));
|
||||
}
|
||||
|
||||
public static int random(int howbig) {
|
||||
return (int) (sRandom.nextFloat() * howbig);
|
||||
}
|
||||
|
||||
public static int random(int howsmall, int howbig) {
|
||||
if (howsmall >= howbig) return howsmall;
|
||||
return (int) (sRandom.nextFloat() * (howbig - howsmall) + howsmall);
|
||||
}
|
||||
|
||||
public static float random(float howbig) {
|
||||
return sRandom.nextFloat() * howbig;
|
||||
}
|
||||
|
||||
public static float random(float howsmall, float howbig) {
|
||||
if (howsmall >= howbig) return howsmall;
|
||||
return sRandom.nextFloat() * (howbig - howsmall) + howsmall;
|
||||
}
|
||||
|
||||
public static void randomSeed(long seed) {
|
||||
sRandom.setSeed(seed);
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns the sum of the two parameters, or throws an exception if the resulting sum would
|
||||
* cause an overflow or underflow.
|
||||
|
||||
@@ -25,6 +25,8 @@ import android.os.Bundle;
|
||||
import android.util.MathUtils;
|
||||
import android.view.View;
|
||||
|
||||
import java.util.Random;
|
||||
|
||||
/**
|
||||
* The point of this test is to ensure that we can cause many paths to be created, drawn,
|
||||
* and destroyed without causing hangs or crashes. This tests the native reference counting
|
||||
@@ -57,10 +59,11 @@ public class PathDestructionActivity extends Activity {
|
||||
|
||||
private Path getRandomPath() {
|
||||
float left, top, right, bottom;
|
||||
left = MathUtils.random(getWidth() - MIN_SIZE);
|
||||
top = MathUtils.random(getHeight() - MIN_SIZE);
|
||||
right = left + MathUtils.random(getWidth() - left);
|
||||
bottom = top + MathUtils.random(getHeight() - top);
|
||||
Random r = new Random();
|
||||
left = r.nextFloat() * (getWidth() - MIN_SIZE);
|
||||
top = r.nextFloat() * (getHeight() - MIN_SIZE);
|
||||
right = left + r.nextFloat() * (getWidth() - left);
|
||||
bottom = top + r.nextFloat() * (getHeight() - top);
|
||||
Path path = new Path();
|
||||
path.moveTo(left, top);
|
||||
path.lineTo(right, top);
|
||||
@@ -71,9 +74,10 @@ public class PathDestructionActivity extends Activity {
|
||||
}
|
||||
|
||||
private int getRandomColor() {
|
||||
int red = MathUtils.random(255);
|
||||
int green = MathUtils.random(255);
|
||||
int blue = MathUtils.random(255);
|
||||
Random r = new Random();
|
||||
int red = r.nextInt(255);
|
||||
int green = r.nextInt(255);
|
||||
int blue = r.nextInt(255);
|
||||
return 0xff000000 | red << 16 | green << 8 | blue;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user