package com.jleo;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
public class NormTest {
public static double normrnd(double mu, double sigma) {
double N = 12;
double x = 0, temp = N;
do {
x = 0;
for (int i = 0; i < N; i++)
x = x + (Math.random());
x = (x - temp / 2) / (Math.sqrt(temp / 12));
x = mu + x * Math.sqrt(sigma);
} while (x <= 0);
return x;
}
public static double[] addInv(double[] r) {
double[] result = new double[r.length * 2];
for (int i = 0; i < result.length; i += 2) {
result[i] = r[i / 2];
result[i + 1] = -r[i / 2];
}
return result;
}
public static double[] normrnd(double sigma, int num) {
double[] r = new double[num];
for (int i = 0; i < num; i++) {
r[i] = normrnd(0, sigma);
}
return addInv(r);
}
public static Position[] generateMap() {
int numberOfDots = 5000;
// int magnify = 1;
double mu = 3;
double sigma = 1;
double[] x = new double[numberOfDots];
double[] y = new double[numberOfDots];
Position[]positionCollection=new Position[numberOfDots];
for (int i = 0; i < numberOfDots; i++) {
x[i] = (normrnd(mu, sigma)-3)*5000;
y[i] = (normrnd(mu, sigma)-3)*5000;
positionCollection[i] = new Position(x[i], y[i]);
//System.out.println(x[i] + "," + y[i]);
}
//
// for (int i = 0; i < positionCollection.length; i=i+2) {
// positionCollection[i] = new Position(x[i], x[i+1]);
// }
return positionCollection;
}
public static void main(String[] args) {
NormTest.generateMap();
}
}
assaas
最新推荐文章于 2024-11-29 18:50:41 发布