diff --git a/src/main/java/Presenter/Generator/DatasetGenerator.java b/src/main/java/Presenter/Generator/DatasetGenerator.java index 32bdb05..d00363f 100644 --- a/src/main/java/Presenter/Generator/DatasetGenerator.java +++ b/src/main/java/Presenter/Generator/DatasetGenerator.java @@ -59,8 +59,12 @@ public class DatasetGenerator extends Observable{ public LinkedList generateDataLines(){ LinkedList lines = new LinkedList<>(); - m = 1 + random.nextDouble(); - b = random.nextDouble(); + return generateDataLines(lines, 100); + } + + private LinkedList generateDataLines(LinkedList lines, int n){ + m = 5d; + b = 0d; int size = 0; @@ -68,8 +72,8 @@ public class DatasetGenerator extends Observable{ //speichere die Koordinaten in einer HashMap, damit keine Punkte //entstehen deren x-Koordinate zu sehr beieinander liegt. - while (size < 100){ - double y = (random.nextGaussian() * 100) % 100; + while (size < n){ + double y = random.nextGaussian(); double signal = m * y + b; signal *= -1; @@ -100,15 +104,17 @@ public class DatasetGenerator extends Observable{ LinkedList lines = new LinkedList<>(); double from = 0; - double to = Math.PI * 3; - int n = 100; + double to = Math.PI * 5; + //obere Grenze für die neuen Punkte + int n = 200 + lines.size(); //calculate the distance between every two points double distance = (to - from) / ((double) n); //create points double currentDistance= from; - for(int i=0; i < n; i++) + //an die aktuelle Liste dranhängen + for(int i=lines.size(); i < n; i++) { double x = Math.cos(currentDistance); double y = Math.sin(currentDistance); @@ -122,7 +128,8 @@ public class DatasetGenerator extends Observable{ currentDistance += distance; } - return lines; + + return generateDataLines(lines,200); } }