paar datasets gefunden, indexierungsfehler beim importer gefixt, beim rm fast select eingepflegt
This commit is contained in:
parent
9819616bed
commit
71a853c781
|
@ -0,0 +1,17 @@
|
||||||
|
0,23.1,10.5
|
||||||
|
1,32.8,16.7
|
||||||
|
2,31.8,18.2
|
||||||
|
3,32.0,17.0
|
||||||
|
4,30.4,16.3
|
||||||
|
5,24.0,10.5
|
||||||
|
6,39.5,23.1
|
||||||
|
7,24.2,12.4
|
||||||
|
8,52.5,24.9
|
||||||
|
9,37.9,22.8
|
||||||
|
10,30.5,14.1
|
||||||
|
11,25.1,12.9
|
||||||
|
12,12.4,8.8
|
||||||
|
13,35.1,17.4
|
||||||
|
14,31.5,14.9
|
||||||
|
15,21.1,10.5
|
||||||
|
16,27.6,16.1
|
|
|
@ -0,0 +1,62 @@
|
||||||
|
0,4,4
|
||||||
|
1,5,2
|
||||||
|
2,5,4
|
||||||
|
3,5,8
|
||||||
|
4,5,8
|
||||||
|
5,7,7
|
||||||
|
6,7,7
|
||||||
|
7,8,8
|
||||||
|
8,8,9
|
||||||
|
9,8,11
|
||||||
|
10,8,13
|
||||||
|
11,9,5
|
||||||
|
12,9,5
|
||||||
|
13,9,13
|
||||||
|
14,10,8
|
||||||
|
15,10,14
|
||||||
|
16,10,17
|
||||||
|
17,12,11
|
||||||
|
18,12,19
|
||||||
|
19,12,21
|
||||||
|
20,13,15
|
||||||
|
21,13,18
|
||||||
|
22,13,27
|
||||||
|
23,14,14
|
||||||
|
24,14,16
|
||||||
|
25,15,16
|
||||||
|
26,16,14
|
||||||
|
27,16,19
|
||||||
|
28,16,34
|
||||||
|
29,17,22
|
||||||
|
30,17,29
|
||||||
|
31,18,29
|
||||||
|
32,18,34
|
||||||
|
33,18,47
|
||||||
|
34,19,30
|
||||||
|
35,20,48
|
||||||
|
36,21,39
|
||||||
|
37,21,42
|
||||||
|
38,21,55
|
||||||
|
39,24,56
|
||||||
|
40,25,33
|
||||||
|
41,25,48
|
||||||
|
42,25,56
|
||||||
|
43,25,59
|
||||||
|
44,26,39
|
||||||
|
45,26,41
|
||||||
|
46,27,57
|
||||||
|
47,27,78
|
||||||
|
48,28,64
|
||||||
|
49,28,84
|
||||||
|
50,29,54
|
||||||
|
51,29,68
|
||||||
|
52,30,60
|
||||||
|
53,30,67
|
||||||
|
54,30,101
|
||||||
|
55,31,77
|
||||||
|
56,35,85
|
||||||
|
57,35,107
|
||||||
|
58,36,79
|
||||||
|
59,39,138
|
||||||
|
60,40,110
|
||||||
|
61,40,134
|
|
|
@ -0,0 +1,768 @@
|
||||||
|
0,514.50,294.00
|
||||||
|
1,514.50,294.00
|
||||||
|
2,514.50,294.00
|
||||||
|
3,514.50,294.00
|
||||||
|
4,563.50,318.50
|
||||||
|
5,563.50,318.50
|
||||||
|
6,563.50,318.50
|
||||||
|
7,563.50,318.50
|
||||||
|
8,588.00,294.00
|
||||||
|
9,588.00,294.00
|
||||||
|
10,588.00,294.00
|
||||||
|
11,588.00,294.00
|
||||||
|
12,612.50,318.50
|
||||||
|
13,612.50,318.50
|
||||||
|
14,612.50,318.50
|
||||||
|
15,612.50,318.50
|
||||||
|
16,637.00,343.00
|
||||||
|
17,637.00,343.00
|
||||||
|
18,637.00,343.00
|
||||||
|
19,637.00,343.00
|
||||||
|
20,661.50,416.50
|
||||||
|
21,661.50,416.50
|
||||||
|
22,661.50,416.50
|
||||||
|
23,661.50,416.50
|
||||||
|
24,686.00,245.00
|
||||||
|
25,686.00,245.00
|
||||||
|
26,686.00,245.00
|
||||||
|
27,686.00,245.00
|
||||||
|
28,710.50,269.50
|
||||||
|
29,710.50,269.50
|
||||||
|
30,710.50,269.50
|
||||||
|
31,710.50,269.50
|
||||||
|
32,735.00,294.00
|
||||||
|
33,735.00,294.00
|
||||||
|
34,735.00,294.00
|
||||||
|
35,735.00,294.00
|
||||||
|
36,759.50,318.50
|
||||||
|
37,759.50,318.50
|
||||||
|
38,759.50,318.50
|
||||||
|
39,759.50,318.50
|
||||||
|
40,784.00,343.00
|
||||||
|
41,784.00,343.00
|
||||||
|
42,784.00,343.00
|
||||||
|
43,784.00,343.00
|
||||||
|
44,808.50,367.50
|
||||||
|
45,808.50,367.50
|
||||||
|
46,808.50,367.50
|
||||||
|
47,808.50,367.50
|
||||||
|
48,514.50,294.00
|
||||||
|
49,514.50,294.00
|
||||||
|
50,514.50,294.00
|
||||||
|
51,514.50,294.00
|
||||||
|
52,563.50,318.50
|
||||||
|
53,563.50,318.50
|
||||||
|
54,563.50,318.50
|
||||||
|
55,563.50,318.50
|
||||||
|
56,588.00,294.00
|
||||||
|
57,588.00,294.00
|
||||||
|
58,588.00,294.00
|
||||||
|
59,588.00,294.00
|
||||||
|
60,612.50,318.50
|
||||||
|
61,612.50,318.50
|
||||||
|
62,612.50,318.50
|
||||||
|
63,612.50,318.50
|
||||||
|
64,637.00,343.00
|
||||||
|
65,637.00,343.00
|
||||||
|
66,637.00,343.00
|
||||||
|
67,637.00,343.00
|
||||||
|
68,661.50,416.50
|
||||||
|
69,661.50,416.50
|
||||||
|
70,661.50,416.50
|
||||||
|
71,661.50,416.50
|
||||||
|
72,686.00,245.00
|
||||||
|
73,686.00,245.00
|
||||||
|
74,686.00,245.00
|
||||||
|
75,686.00,245.00
|
||||||
|
76,710.50,269.50
|
||||||
|
77,710.50,269.50
|
||||||
|
78,710.50,269.50
|
||||||
|
79,710.50,269.50
|
||||||
|
80,735.00,294.00
|
||||||
|
81,735.00,294.00
|
||||||
|
82,735.00,294.00
|
||||||
|
83,735.00,294.00
|
||||||
|
84,759.50,318.50
|
||||||
|
85,759.50,318.50
|
||||||
|
86,759.50,318.50
|
||||||
|
87,759.50,318.50
|
||||||
|
88,784.00,343.00
|
||||||
|
89,784.00,343.00
|
||||||
|
90,784.00,343.00
|
||||||
|
91,784.00,343.00
|
||||||
|
92,808.50,367.50
|
||||||
|
93,808.50,367.50
|
||||||
|
94,808.50,367.50
|
||||||
|
95,808.50,367.50
|
||||||
|
96,514.50,294.00
|
||||||
|
97,514.50,294.00
|
||||||
|
98,514.50,294.00
|
||||||
|
99,514.50,294.00
|
||||||
|
100,563.50,318.50
|
||||||
|
101,563.50,318.50
|
||||||
|
102,563.50,318.50
|
||||||
|
103,563.50,318.50
|
||||||
|
104,588.00,294.00
|
||||||
|
105,588.00,294.00
|
||||||
|
106,588.00,294.00
|
||||||
|
107,588.00,294.00
|
||||||
|
108,612.50,318.50
|
||||||
|
109,612.50,318.50
|
||||||
|
110,612.50,318.50
|
||||||
|
111,612.50,318.50
|
||||||
|
112,637.00,343.00
|
||||||
|
113,637.00,343.00
|
||||||
|
114,637.00,343.00
|
||||||
|
115,637.00,343.00
|
||||||
|
116,661.50,416.50
|
||||||
|
117,661.50,416.50
|
||||||
|
118,661.50,416.50
|
||||||
|
119,661.50,416.50
|
||||||
|
120,686.00,245.00
|
||||||
|
121,686.00,245.00
|
||||||
|
122,686.00,245.00
|
||||||
|
123,686.00,245.00
|
||||||
|
124,710.50,269.50
|
||||||
|
125,710.50,269.50
|
||||||
|
126,710.50,269.50
|
||||||
|
127,710.50,269.50
|
||||||
|
128,735.00,294.00
|
||||||
|
129,735.00,294.00
|
||||||
|
130,735.00,294.00
|
||||||
|
131,735.00,294.00
|
||||||
|
132,759.50,318.50
|
||||||
|
133,759.50,318.50
|
||||||
|
134,759.50,318.50
|
||||||
|
135,759.50,318.50
|
||||||
|
136,784.00,343.00
|
||||||
|
137,784.00,343.00
|
||||||
|
138,784.00,343.00
|
||||||
|
139,784.00,343.00
|
||||||
|
140,808.50,367.50
|
||||||
|
141,808.50,367.50
|
||||||
|
142,808.50,367.50
|
||||||
|
143,808.50,367.50
|
||||||
|
144,514.50,294.00
|
||||||
|
145,514.50,294.00
|
||||||
|
146,514.50,294.00
|
||||||
|
147,514.50,294.00
|
||||||
|
148,563.50,318.50
|
||||||
|
149,563.50,318.50
|
||||||
|
150,563.50,318.50
|
||||||
|
151,563.50,318.50
|
||||||
|
152,588.00,294.00
|
||||||
|
153,588.00,294.00
|
||||||
|
154,588.00,294.00
|
||||||
|
155,588.00,294.00
|
||||||
|
156,612.50,318.50
|
||||||
|
157,612.50,318.50
|
||||||
|
158,612.50,318.50
|
||||||
|
159,612.50,318.50
|
||||||
|
160,637.00,343.00
|
||||||
|
161,637.00,343.00
|
||||||
|
162,637.00,343.00
|
||||||
|
163,637.00,343.00
|
||||||
|
164,661.50,416.50
|
||||||
|
165,661.50,416.50
|
||||||
|
166,661.50,416.50
|
||||||
|
167,661.50,416.50
|
||||||
|
168,686.00,245.00
|
||||||
|
169,686.00,245.00
|
||||||
|
170,686.00,245.00
|
||||||
|
171,686.00,245.00
|
||||||
|
172,710.50,269.50
|
||||||
|
173,710.50,269.50
|
||||||
|
174,710.50,269.50
|
||||||
|
175,710.50,269.50
|
||||||
|
176,735.00,294.00
|
||||||
|
177,735.00,294.00
|
||||||
|
178,735.00,294.00
|
||||||
|
179,735.00,294.00
|
||||||
|
180,759.50,318.50
|
||||||
|
181,759.50,318.50
|
||||||
|
182,759.50,318.50
|
||||||
|
183,759.50,318.50
|
||||||
|
184,784.00,343.00
|
||||||
|
185,784.00,343.00
|
||||||
|
186,784.00,343.00
|
||||||
|
187,784.00,343.00
|
||||||
|
188,808.50,367.50
|
||||||
|
189,808.50,367.50
|
||||||
|
190,808.50,367.50
|
||||||
|
191,808.50,367.50
|
||||||
|
192,514.50,294.00
|
||||||
|
193,514.50,294.00
|
||||||
|
194,514.50,294.00
|
||||||
|
195,514.50,294.00
|
||||||
|
196,563.50,318.50
|
||||||
|
197,563.50,318.50
|
||||||
|
198,563.50,318.50
|
||||||
|
199,563.50,318.50
|
||||||
|
200,588.00,294.00
|
||||||
|
201,588.00,294.00
|
||||||
|
202,588.00,294.00
|
||||||
|
203,588.00,294.00
|
||||||
|
204,612.50,318.50
|
||||||
|
205,612.50,318.50
|
||||||
|
206,612.50,318.50
|
||||||
|
207,612.50,318.50
|
||||||
|
208,637.00,343.00
|
||||||
|
209,637.00,343.00
|
||||||
|
210,637.00,343.00
|
||||||
|
211,637.00,343.00
|
||||||
|
212,661.50,416.50
|
||||||
|
213,661.50,416.50
|
||||||
|
214,661.50,416.50
|
||||||
|
215,661.50,416.50
|
||||||
|
216,686.00,245.00
|
||||||
|
217,686.00,245.00
|
||||||
|
218,686.00,245.00
|
||||||
|
219,686.00,245.00
|
||||||
|
220,710.50,269.50
|
||||||
|
221,710.50,269.50
|
||||||
|
222,710.50,269.50
|
||||||
|
223,710.50,269.50
|
||||||
|
224,735.00,294.00
|
||||||
|
225,735.00,294.00
|
||||||
|
226,735.00,294.00
|
||||||
|
227,735.00,294.00
|
||||||
|
228,759.50,318.50
|
||||||
|
229,759.50,318.50
|
||||||
|
230,759.50,318.50
|
||||||
|
231,759.50,318.50
|
||||||
|
232,784.00,343.00
|
||||||
|
233,784.00,343.00
|
||||||
|
234,784.00,343.00
|
||||||
|
235,784.00,343.00
|
||||||
|
236,808.50,367.50
|
||||||
|
237,808.50,367.50
|
||||||
|
238,808.50,367.50
|
||||||
|
239,808.50,367.50
|
||||||
|
240,514.50,294.00
|
||||||
|
241,514.50,294.00
|
||||||
|
242,514.50,294.00
|
||||||
|
243,514.50,294.00
|
||||||
|
244,563.50,318.50
|
||||||
|
245,563.50,318.50
|
||||||
|
246,563.50,318.50
|
||||||
|
247,563.50,318.50
|
||||||
|
248,588.00,294.00
|
||||||
|
249,588.00,294.00
|
||||||
|
250,588.00,294.00
|
||||||
|
251,588.00,294.00
|
||||||
|
252,612.50,318.50
|
||||||
|
253,612.50,318.50
|
||||||
|
254,612.50,318.50
|
||||||
|
255,612.50,318.50
|
||||||
|
256,637.00,343.00
|
||||||
|
257,637.00,343.00
|
||||||
|
258,637.00,343.00
|
||||||
|
259,637.00,343.00
|
||||||
|
260,661.50,416.50
|
||||||
|
261,661.50,416.50
|
||||||
|
262,661.50,416.50
|
||||||
|
263,661.50,416.50
|
||||||
|
264,686.00,245.00
|
||||||
|
265,686.00,245.00
|
||||||
|
266,686.00,245.00
|
||||||
|
267,686.00,245.00
|
||||||
|
268,710.50,269.50
|
||||||
|
269,710.50,269.50
|
||||||
|
270,710.50,269.50
|
||||||
|
271,710.50,269.50
|
||||||
|
272,735.00,294.00
|
||||||
|
273,735.00,294.00
|
||||||
|
274,735.00,294.00
|
||||||
|
275,735.00,294.00
|
||||||
|
276,759.50,318.50
|
||||||
|
277,759.50,318.50
|
||||||
|
278,759.50,318.50
|
||||||
|
279,759.50,318.50
|
||||||
|
280,784.00,343.00
|
||||||
|
281,784.00,343.00
|
||||||
|
282,784.00,343.00
|
||||||
|
283,784.00,343.00
|
||||||
|
284,808.50,367.50
|
||||||
|
285,808.50,367.50
|
||||||
|
286,808.50,367.50
|
||||||
|
287,808.50,367.50
|
||||||
|
288,514.50,294.00
|
||||||
|
289,514.50,294.00
|
||||||
|
290,514.50,294.00
|
||||||
|
291,514.50,294.00
|
||||||
|
292,563.50,318.50
|
||||||
|
293,563.50,318.50
|
||||||
|
294,563.50,318.50
|
||||||
|
295,563.50,318.50
|
||||||
|
296,588.00,294.00
|
||||||
|
297,588.00,294.00
|
||||||
|
298,588.00,294.00
|
||||||
|
299,588.00,294.00
|
||||||
|
300,612.50,318.50
|
||||||
|
301,612.50,318.50
|
||||||
|
302,612.50,318.50
|
||||||
|
303,612.50,318.50
|
||||||
|
304,637.00,343.00
|
||||||
|
305,637.00,343.00
|
||||||
|
306,637.00,343.00
|
||||||
|
307,637.00,343.00
|
||||||
|
308,661.50,416.50
|
||||||
|
309,661.50,416.50
|
||||||
|
310,661.50,416.50
|
||||||
|
311,661.50,416.50
|
||||||
|
312,686.00,245.00
|
||||||
|
313,686.00,245.00
|
||||||
|
314,686.00,245.00
|
||||||
|
315,686.00,245.00
|
||||||
|
316,710.50,269.50
|
||||||
|
317,710.50,269.50
|
||||||
|
318,710.50,269.50
|
||||||
|
319,710.50,269.50
|
||||||
|
320,735.00,294.00
|
||||||
|
321,735.00,294.00
|
||||||
|
322,735.00,294.00
|
||||||
|
323,735.00,294.00
|
||||||
|
324,759.50,318.50
|
||||||
|
325,759.50,318.50
|
||||||
|
326,759.50,318.50
|
||||||
|
327,759.50,318.50
|
||||||
|
328,784.00,343.00
|
||||||
|
329,784.00,343.00
|
||||||
|
330,784.00,343.00
|
||||||
|
331,784.00,343.00
|
||||||
|
332,808.50,367.50
|
||||||
|
333,808.50,367.50
|
||||||
|
334,808.50,367.50
|
||||||
|
335,808.50,367.50
|
||||||
|
336,514.50,294.00
|
||||||
|
337,514.50,294.00
|
||||||
|
338,514.50,294.00
|
||||||
|
339,514.50,294.00
|
||||||
|
340,563.50,318.50
|
||||||
|
341,563.50,318.50
|
||||||
|
342,563.50,318.50
|
||||||
|
343,563.50,318.50
|
||||||
|
344,588.00,294.00
|
||||||
|
345,588.00,294.00
|
||||||
|
346,588.00,294.00
|
||||||
|
347,588.00,294.00
|
||||||
|
348,612.50,318.50
|
||||||
|
349,612.50,318.50
|
||||||
|
350,612.50,318.50
|
||||||
|
351,612.50,318.50
|
||||||
|
352,637.00,343.00
|
||||||
|
353,637.00,343.00
|
||||||
|
354,637.00,343.00
|
||||||
|
355,637.00,343.00
|
||||||
|
356,661.50,416.50
|
||||||
|
357,661.50,416.50
|
||||||
|
358,661.50,416.50
|
||||||
|
359,661.50,416.50
|
||||||
|
360,686.00,245.00
|
||||||
|
361,686.00,245.00
|
||||||
|
362,686.00,245.00
|
||||||
|
363,686.00,245.00
|
||||||
|
364,710.50,269.50
|
||||||
|
365,710.50,269.50
|
||||||
|
366,710.50,269.50
|
||||||
|
367,710.50,269.50
|
||||||
|
368,735.00,294.00
|
||||||
|
369,735.00,294.00
|
||||||
|
370,735.00,294.00
|
||||||
|
371,735.00,294.00
|
||||||
|
372,759.50,318.50
|
||||||
|
373,759.50,318.50
|
||||||
|
374,759.50,318.50
|
||||||
|
375,759.50,318.50
|
||||||
|
376,784.00,343.00
|
||||||
|
377,784.00,343.00
|
||||||
|
378,784.00,343.00
|
||||||
|
379,784.00,343.00
|
||||||
|
380,808.50,367.50
|
||||||
|
381,808.50,367.50
|
||||||
|
382,808.50,367.50
|
||||||
|
383,808.50,367.50
|
||||||
|
384,514.50,294.00
|
||||||
|
385,514.50,294.00
|
||||||
|
386,514.50,294.00
|
||||||
|
387,514.50,294.00
|
||||||
|
388,563.50,318.50
|
||||||
|
389,563.50,318.50
|
||||||
|
390,563.50,318.50
|
||||||
|
391,563.50,318.50
|
||||||
|
392,588.00,294.00
|
||||||
|
393,588.00,294.00
|
||||||
|
394,588.00,294.00
|
||||||
|
395,588.00,294.00
|
||||||
|
396,612.50,318.50
|
||||||
|
397,612.50,318.50
|
||||||
|
398,612.50,318.50
|
||||||
|
399,612.50,318.50
|
||||||
|
400,637.00,343.00
|
||||||
|
401,637.00,343.00
|
||||||
|
402,637.00,343.00
|
||||||
|
403,637.00,343.00
|
||||||
|
404,661.50,416.50
|
||||||
|
405,661.50,416.50
|
||||||
|
406,661.50,416.50
|
||||||
|
407,661.50,416.50
|
||||||
|
408,686.00,245.00
|
||||||
|
409,686.00,245.00
|
||||||
|
410,686.00,245.00
|
||||||
|
411,686.00,245.00
|
||||||
|
412,710.50,269.50
|
||||||
|
413,710.50,269.50
|
||||||
|
414,710.50,269.50
|
||||||
|
415,710.50,269.50
|
||||||
|
416,735.00,294.00
|
||||||
|
417,735.00,294.00
|
||||||
|
418,735.00,294.00
|
||||||
|
419,735.00,294.00
|
||||||
|
420,759.50,318.50
|
||||||
|
421,759.50,318.50
|
||||||
|
422,759.50,318.50
|
||||||
|
423,759.50,318.50
|
||||||
|
424,784.00,343.00
|
||||||
|
425,784.00,343.00
|
||||||
|
426,784.00,343.00
|
||||||
|
427,784.00,343.00
|
||||||
|
428,808.50,367.50
|
||||||
|
429,808.50,367.50
|
||||||
|
430,808.50,367.50
|
||||||
|
431,808.50,367.50
|
||||||
|
432,514.50,294.00
|
||||||
|
433,514.50,294.00
|
||||||
|
434,514.50,294.00
|
||||||
|
435,514.50,294.00
|
||||||
|
436,563.50,318.50
|
||||||
|
437,563.50,318.50
|
||||||
|
438,563.50,318.50
|
||||||
|
439,563.50,318.50
|
||||||
|
440,588.00,294.00
|
||||||
|
441,588.00,294.00
|
||||||
|
442,588.00,294.00
|
||||||
|
443,588.00,294.00
|
||||||
|
444,612.50,318.50
|
||||||
|
445,612.50,318.50
|
||||||
|
446,612.50,318.50
|
||||||
|
447,612.50,318.50
|
||||||
|
448,637.00,343.00
|
||||||
|
449,637.00,343.00
|
||||||
|
450,637.00,343.00
|
||||||
|
451,637.00,343.00
|
||||||
|
452,661.50,416.50
|
||||||
|
453,661.50,416.50
|
||||||
|
454,661.50,416.50
|
||||||
|
455,661.50,416.50
|
||||||
|
456,686.00,245.00
|
||||||
|
457,686.00,245.00
|
||||||
|
458,686.00,245.00
|
||||||
|
459,686.00,245.00
|
||||||
|
460,710.50,269.50
|
||||||
|
461,710.50,269.50
|
||||||
|
462,710.50,269.50
|
||||||
|
463,710.50,269.50
|
||||||
|
464,735.00,294.00
|
||||||
|
465,735.00,294.00
|
||||||
|
466,735.00,294.00
|
||||||
|
467,735.00,294.00
|
||||||
|
468,759.50,318.50
|
||||||
|
469,759.50,318.50
|
||||||
|
470,759.50,318.50
|
||||||
|
471,759.50,318.50
|
||||||
|
472,784.00,343.00
|
||||||
|
473,784.00,343.00
|
||||||
|
474,784.00,343.00
|
||||||
|
475,784.00,343.00
|
||||||
|
476,808.50,367.50
|
||||||
|
477,808.50,367.50
|
||||||
|
478,808.50,367.50
|
||||||
|
479,808.50,367.50
|
||||||
|
480,514.50,294.00
|
||||||
|
481,514.50,294.00
|
||||||
|
482,514.50,294.00
|
||||||
|
483,514.50,294.00
|
||||||
|
484,563.50,318.50
|
||||||
|
485,563.50,318.50
|
||||||
|
486,563.50,318.50
|
||||||
|
487,563.50,318.50
|
||||||
|
488,588.00,294.00
|
||||||
|
489,588.00,294.00
|
||||||
|
490,588.00,294.00
|
||||||
|
491,588.00,294.00
|
||||||
|
492,612.50,318.50
|
||||||
|
493,612.50,318.50
|
||||||
|
494,612.50,318.50
|
||||||
|
495,612.50,318.50
|
||||||
|
496,637.00,343.00
|
||||||
|
497,637.00,343.00
|
||||||
|
498,637.00,343.00
|
||||||
|
499,637.00,343.00
|
||||||
|
500,661.50,416.50
|
||||||
|
501,661.50,416.50
|
||||||
|
502,661.50,416.50
|
||||||
|
503,661.50,416.50
|
||||||
|
504,686.00,245.00
|
||||||
|
505,686.00,245.00
|
||||||
|
506,686.00,245.00
|
||||||
|
507,686.00,245.00
|
||||||
|
508,710.50,269.50
|
||||||
|
509,710.50,269.50
|
||||||
|
510,710.50,269.50
|
||||||
|
511,710.50,269.50
|
||||||
|
512,735.00,294.00
|
||||||
|
513,735.00,294.00
|
||||||
|
514,735.00,294.00
|
||||||
|
515,735.00,294.00
|
||||||
|
516,759.50,318.50
|
||||||
|
517,759.50,318.50
|
||||||
|
518,759.50,318.50
|
||||||
|
519,759.50,318.50
|
||||||
|
520,784.00,343.00
|
||||||
|
521,784.00,343.00
|
||||||
|
522,784.00,343.00
|
||||||
|
523,784.00,343.00
|
||||||
|
524,808.50,367.50
|
||||||
|
525,808.50,367.50
|
||||||
|
526,808.50,367.50
|
||||||
|
527,808.50,367.50
|
||||||
|
528,514.50,294.00
|
||||||
|
529,514.50,294.00
|
||||||
|
530,514.50,294.00
|
||||||
|
531,514.50,294.00
|
||||||
|
532,563.50,318.50
|
||||||
|
533,563.50,318.50
|
||||||
|
534,563.50,318.50
|
||||||
|
535,563.50,318.50
|
||||||
|
536,588.00,294.00
|
||||||
|
537,588.00,294.00
|
||||||
|
538,588.00,294.00
|
||||||
|
539,588.00,294.00
|
||||||
|
540,612.50,318.50
|
||||||
|
541,612.50,318.50
|
||||||
|
542,612.50,318.50
|
||||||
|
543,612.50,318.50
|
||||||
|
544,637.00,343.00
|
||||||
|
545,637.00,343.00
|
||||||
|
546,637.00,343.00
|
||||||
|
547,637.00,343.00
|
||||||
|
548,661.50,416.50
|
||||||
|
549,661.50,416.50
|
||||||
|
550,661.50,416.50
|
||||||
|
551,661.50,416.50
|
||||||
|
552,686.00,245.00
|
||||||
|
553,686.00,245.00
|
||||||
|
554,686.00,245.00
|
||||||
|
555,686.00,245.00
|
||||||
|
556,710.50,269.50
|
||||||
|
557,710.50,269.50
|
||||||
|
558,710.50,269.50
|
||||||
|
559,710.50,269.50
|
||||||
|
560,735.00,294.00
|
||||||
|
561,735.00,294.00
|
||||||
|
562,735.00,294.00
|
||||||
|
563,735.00,294.00
|
||||||
|
564,759.50,318.50
|
||||||
|
565,759.50,318.50
|
||||||
|
566,759.50,318.50
|
||||||
|
567,759.50,318.50
|
||||||
|
568,784.00,343.00
|
||||||
|
569,784.00,343.00
|
||||||
|
570,784.00,343.00
|
||||||
|
571,784.00,343.00
|
||||||
|
572,808.50,367.50
|
||||||
|
573,808.50,367.50
|
||||||
|
574,808.50,367.50
|
||||||
|
575,808.50,367.50
|
||||||
|
576,514.50,294.00
|
||||||
|
577,514.50,294.00
|
||||||
|
578,514.50,294.00
|
||||||
|
579,514.50,294.00
|
||||||
|
580,563.50,318.50
|
||||||
|
581,563.50,318.50
|
||||||
|
582,563.50,318.50
|
||||||
|
583,563.50,318.50
|
||||||
|
584,588.00,294.00
|
||||||
|
585,588.00,294.00
|
||||||
|
586,588.00,294.00
|
||||||
|
587,588.00,294.00
|
||||||
|
588,612.50,318.50
|
||||||
|
589,612.50,318.50
|
||||||
|
590,612.50,318.50
|
||||||
|
591,612.50,318.50
|
||||||
|
592,637.00,343.00
|
||||||
|
593,637.00,343.00
|
||||||
|
594,637.00,343.00
|
||||||
|
595,637.00,343.00
|
||||||
|
596,661.50,416.50
|
||||||
|
597,661.50,416.50
|
||||||
|
598,661.50,416.50
|
||||||
|
599,661.50,416.50
|
||||||
|
600,686.00,245.00
|
||||||
|
601,686.00,245.00
|
||||||
|
602,686.00,245.00
|
||||||
|
603,686.00,245.00
|
||||||
|
604,710.50,269.50
|
||||||
|
605,710.50,269.50
|
||||||
|
606,710.50,269.50
|
||||||
|
607,710.50,269.50
|
||||||
|
608,735.00,294.00
|
||||||
|
609,735.00,294.00
|
||||||
|
610,735.00,294.00
|
||||||
|
611,735.00,294.00
|
||||||
|
612,759.50,318.50
|
||||||
|
613,759.50,318.50
|
||||||
|
614,759.50,318.50
|
||||||
|
615,759.50,318.50
|
||||||
|
616,784.00,343.00
|
||||||
|
617,784.00,343.00
|
||||||
|
618,784.00,343.00
|
||||||
|
619,784.00,343.00
|
||||||
|
620,808.50,367.50
|
||||||
|
621,808.50,367.50
|
||||||
|
622,808.50,367.50
|
||||||
|
623,808.50,367.50
|
||||||
|
624,514.50,294.00
|
||||||
|
625,514.50,294.00
|
||||||
|
626,514.50,294.00
|
||||||
|
627,514.50,294.00
|
||||||
|
628,563.50,318.50
|
||||||
|
629,563.50,318.50
|
||||||
|
630,563.50,318.50
|
||||||
|
631,563.50,318.50
|
||||||
|
632,588.00,294.00
|
||||||
|
633,588.00,294.00
|
||||||
|
634,588.00,294.00
|
||||||
|
635,588.00,294.00
|
||||||
|
636,612.50,318.50
|
||||||
|
637,612.50,318.50
|
||||||
|
638,612.50,318.50
|
||||||
|
639,612.50,318.50
|
||||||
|
640,637.00,343.00
|
||||||
|
641,637.00,343.00
|
||||||
|
642,637.00,343.00
|
||||||
|
643,637.00,343.00
|
||||||
|
644,661.50,416.50
|
||||||
|
645,661.50,416.50
|
||||||
|
646,661.50,416.50
|
||||||
|
647,661.50,416.50
|
||||||
|
648,686.00,245.00
|
||||||
|
649,686.00,245.00
|
||||||
|
650,686.00,245.00
|
||||||
|
651,686.00,245.00
|
||||||
|
652,710.50,269.50
|
||||||
|
653,710.50,269.50
|
||||||
|
654,710.50,269.50
|
||||||
|
655,710.50,269.50
|
||||||
|
656,735.00,294.00
|
||||||
|
657,735.00,294.00
|
||||||
|
658,735.00,294.00
|
||||||
|
659,735.00,294.00
|
||||||
|
660,759.50,318.50
|
||||||
|
661,759.50,318.50
|
||||||
|
662,759.50,318.50
|
||||||
|
663,759.50,318.50
|
||||||
|
664,784.00,343.00
|
||||||
|
665,784.00,343.00
|
||||||
|
666,784.00,343.00
|
||||||
|
667,784.00,343.00
|
||||||
|
668,808.50,367.50
|
||||||
|
669,808.50,367.50
|
||||||
|
670,808.50,367.50
|
||||||
|
671,808.50,367.50
|
||||||
|
672,514.50,294.00
|
||||||
|
673,514.50,294.00
|
||||||
|
674,514.50,294.00
|
||||||
|
675,514.50,294.00
|
||||||
|
676,563.50,318.50
|
||||||
|
677,563.50,318.50
|
||||||
|
678,563.50,318.50
|
||||||
|
679,563.50,318.50
|
||||||
|
680,588.00,294.00
|
||||||
|
681,588.00,294.00
|
||||||
|
682,588.00,294.00
|
||||||
|
683,588.00,294.00
|
||||||
|
684,612.50,318.50
|
||||||
|
685,612.50,318.50
|
||||||
|
686,612.50,318.50
|
||||||
|
687,612.50,318.50
|
||||||
|
688,637.00,343.00
|
||||||
|
689,637.00,343.00
|
||||||
|
690,637.00,343.00
|
||||||
|
691,637.00,343.00
|
||||||
|
692,661.50,416.50
|
||||||
|
693,661.50,416.50
|
||||||
|
694,661.50,416.50
|
||||||
|
695,661.50,416.50
|
||||||
|
696,686.00,245.00
|
||||||
|
697,686.00,245.00
|
||||||
|
698,686.00,245.00
|
||||||
|
699,686.00,245.00
|
||||||
|
700,710.50,269.50
|
||||||
|
701,710.50,269.50
|
||||||
|
702,710.50,269.50
|
||||||
|
703,710.50,269.50
|
||||||
|
704,735.00,294.00
|
||||||
|
705,735.00,294.00
|
||||||
|
706,735.00,294.00
|
||||||
|
707,735.00,294.00
|
||||||
|
708,759.50,318.50
|
||||||
|
709,759.50,318.50
|
||||||
|
710,759.50,318.50
|
||||||
|
711,759.50,318.50
|
||||||
|
712,784.00,343.00
|
||||||
|
713,784.00,343.00
|
||||||
|
714,784.00,343.00
|
||||||
|
715,784.00,343.00
|
||||||
|
716,808.50,367.50
|
||||||
|
717,808.50,367.50
|
||||||
|
718,808.50,367.50
|
||||||
|
719,808.50,367.50
|
||||||
|
720,514.50,294.00
|
||||||
|
721,514.50,294.00
|
||||||
|
722,514.50,294.00
|
||||||
|
723,514.50,294.00
|
||||||
|
724,563.50,318.50
|
||||||
|
725,563.50,318.50
|
||||||
|
726,563.50,318.50
|
||||||
|
727,563.50,318.50
|
||||||
|
728,588.00,294.00
|
||||||
|
729,588.00,294.00
|
||||||
|
730,588.00,294.00
|
||||||
|
731,588.00,294.00
|
||||||
|
732,612.50,318.50
|
||||||
|
733,612.50,318.50
|
||||||
|
734,612.50,318.50
|
||||||
|
735,612.50,318.50
|
||||||
|
736,637.00,343.00
|
||||||
|
737,637.00,343.00
|
||||||
|
738,637.00,343.00
|
||||||
|
739,637.00,343.00
|
||||||
|
740,661.50,416.50
|
||||||
|
741,661.50,416.50
|
||||||
|
742,661.50,416.50
|
||||||
|
743,661.50,416.50
|
||||||
|
744,686.00,245.00
|
||||||
|
745,686.00,245.00
|
||||||
|
746,686.00,245.00
|
||||||
|
747,686.00,245.00
|
||||||
|
748,710.50,269.50
|
||||||
|
749,710.50,269.50
|
||||||
|
750,710.50,269.50
|
||||||
|
751,710.50,269.50
|
||||||
|
752,735.00,294.00
|
||||||
|
753,735.00,294.00
|
||||||
|
754,735.00,294.00
|
||||||
|
755,735.00,294.00
|
||||||
|
756,759.50,318.50
|
||||||
|
757,759.50,318.50
|
||||||
|
758,759.50,318.50
|
||||||
|
759,759.50,318.50
|
||||||
|
760,784.00,343.00
|
||||||
|
761,784.00,343.00
|
||||||
|
762,784.00,343.00
|
||||||
|
763,784.00,343.00
|
||||||
|
764,808.50,367.50
|
||||||
|
765,808.50,367.50
|
||||||
|
766,808.50,367.50
|
||||||
|
767,808.50,367.50
|
|
|
@ -1,30 +1,30 @@
|
||||||
1,39,144
|
0,39,144
|
||||||
2,47,220
|
1,47,220
|
||||||
3,45,138
|
2,45,138
|
||||||
4,47,145
|
3,47,145
|
||||||
5,65,162
|
4,65,162
|
||||||
6,46,142
|
5,46,142
|
||||||
7,67,170
|
6,67,170
|
||||||
8,42,124
|
7,42,124
|
||||||
9,67,158
|
8,67,158
|
||||||
10,56,154
|
9,56,154
|
||||||
11,64,162
|
10,64,162
|
||||||
12,56,150
|
11,56,150
|
||||||
13,59,140
|
12,59,140
|
||||||
14,34,110
|
13,34,110
|
||||||
15,42,128
|
14,42,128
|
||||||
16,48,130
|
15,48,130
|
||||||
17,45,135
|
16,45,135
|
||||||
18,17,114
|
17,17,114
|
||||||
19,20,116
|
18,20,116
|
||||||
20,19,124
|
29,19,124
|
||||||
21,36,136
|
20,36,136
|
||||||
22,50,142
|
21,50,142
|
||||||
23,39,120
|
22,39,120
|
||||||
24,21,120
|
23,21,120
|
||||||
25,44,160
|
24,44,160
|
||||||
26,53,158
|
25,53,158
|
||||||
27,63,144
|
26,63,144
|
||||||
28,29,130
|
27,29,130
|
||||||
29,25,125
|
28,25,125
|
||||||
30,69,175
|
29,69,175
|
|
File diff suppressed because it is too large
Load Diff
|
@ -25,9 +25,9 @@ public class RepeatedMedianEstimator extends Observable implements Algorithm {
|
||||||
private Interval interval;
|
private Interval interval;
|
||||||
|
|
||||||
//in der Literatur als L_i, C_i, und R_i bekannt
|
//in der Literatur als L_i, C_i, und R_i bekannt
|
||||||
private ArrayList<Integer> countLeftSlab;
|
private ArrayList<Double> countLeftSlab;
|
||||||
private ArrayList<Integer> countCenterSlab;
|
private ArrayList<Double> countCenterSlab;
|
||||||
private ArrayList<Integer> countRightSlab;
|
private ArrayList<Double> countRightSlab;
|
||||||
|
|
||||||
//die Mengen L,C und R
|
//die Mengen L,C und R
|
||||||
private ArrayList<Line> linesInLeftSlab;
|
private ArrayList<Line> linesInLeftSlab;
|
||||||
|
@ -56,9 +56,9 @@ public class RepeatedMedianEstimator extends Observable implements Algorithm {
|
||||||
countRightSlab = new ArrayList<>();
|
countRightSlab = new ArrayList<>();
|
||||||
|
|
||||||
for (int i = 0; i < n; i++) {
|
for (int i = 0; i < n; i++) {
|
||||||
countLeftSlab.add(0);
|
countLeftSlab.add(0d);
|
||||||
countRightSlab.add(0);
|
countRightSlab.add(0d);
|
||||||
countCenterSlab.add(n - 1);
|
countCenterSlab.add(n - 1.0);
|
||||||
intersectionAbscissas.put(set.get(i), new ArrayList<>());
|
intersectionAbscissas.put(set.get(i), new ArrayList<>());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -143,9 +143,11 @@ public class RepeatedMedianEstimator extends Observable implements Algorithm {
|
||||||
IntersectionCounter intersectionCounter = new IntersectionCounter();
|
IntersectionCounter intersectionCounter = new IntersectionCounter();
|
||||||
intersections = intersectionCounter.calculateIntersectionAbscissas(linesInCenterSlab, sampledLine);
|
intersections = intersectionCounter.calculateIntersectionAbscissas(linesInCenterSlab, sampledLine);
|
||||||
|
|
||||||
Collections.sort(intersections);
|
//Collections.sort(intersections);
|
||||||
double ki = Math.ceil((n - 1) / 2) - countLeftSlab.get(index);
|
//double ki = Math.ceil((n - 1) / 2) - countLeftSlab.get(index);
|
||||||
double i = (Math.ceil((Math.sqrt(n) * ki) / countCenterSlab.get(index)));
|
//double i = (Math.ceil((Math.sqrt(n) * ki) / countCenterSlab.get(index)));
|
||||||
|
double ki = Math.ceil((n - 1) / 2) - FastElementSelector.randomizedSelect(countLeftSlab, index);
|
||||||
|
double i = (Math.ceil((Math.sqrt(n) * ki) / FastElementSelector.randomizedSelect(countCenterSlab, index)));
|
||||||
int accessIndex;
|
int accessIndex;
|
||||||
if (i < 0)
|
if (i < 0)
|
||||||
accessIndex = 0;
|
accessIndex = 0;
|
||||||
|
@ -156,7 +158,8 @@ public class RepeatedMedianEstimator extends Observable implements Algorithm {
|
||||||
|
|
||||||
//System.out.println(accessIndex);
|
//System.out.println(accessIndex);
|
||||||
|
|
||||||
return intersections.get(accessIndex);
|
//return intersections.get(accessIndex);
|
||||||
|
return FastElementSelector.randomizedSelect(intersections, accessIndex);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -202,9 +205,9 @@ public class RepeatedMedianEstimator extends Observable implements Algorithm {
|
||||||
}
|
}
|
||||||
|
|
||||||
//System.out.println("Linie: "+line.getId()+"\tLeft: "+left+"\t Center: "+center+"\t Right: "+right);
|
//System.out.println("Linie: "+line.getId()+"\tLeft: "+left+"\t Center: "+center+"\t Right: "+right);
|
||||||
countLeftSlab.set(index, left);
|
countLeftSlab.set(index, (double) left);
|
||||||
countCenterSlab.set(index, center);
|
countCenterSlab.set(index, (double) center);
|
||||||
countRightSlab.set(index, right);
|
countRightSlab.set(index, (double) right);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -215,11 +218,11 @@ public class RepeatedMedianEstimator extends Observable implements Algorithm {
|
||||||
public void contractIntervals() {
|
public void contractIntervals() {
|
||||||
for (int i = 0; i < linesInCenterSlab.size(); i++) {
|
for (int i = 0; i < linesInCenterSlab.size(); i++) {
|
||||||
|
|
||||||
int left = countLeftSlab.get(i);
|
double left = countLeftSlab.get(i);
|
||||||
int center = countCenterSlab.get(i);
|
double center = countCenterSlab.get(i);
|
||||||
int right = countRightSlab.get(i);
|
double right = countRightSlab.get(i);
|
||||||
|
|
||||||
int max = Math.max(left, Math.max(center, right));
|
double max = Math.max(left, Math.max(center, right));
|
||||||
|
|
||||||
if (left == max){
|
if (left == max){
|
||||||
linesInLeftSlab.add(linesInCenterSlab.get(i));
|
linesInLeftSlab.add(linesInCenterSlab.get(i));
|
||||||
|
@ -318,27 +321,27 @@ public class RepeatedMedianEstimator extends Observable implements Algorithm {
|
||||||
this.interval = interval;
|
this.interval = interval;
|
||||||
}
|
}
|
||||||
|
|
||||||
public ArrayList<Integer> getCountLeftSlab() {
|
public ArrayList<Double> getCountLeftSlab() {
|
||||||
return countLeftSlab;
|
return countLeftSlab;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setCountLeftSlab(ArrayList<Integer> countLeftSlab) {
|
public void setCountLeftSlab(ArrayList<Double> countLeftSlab) {
|
||||||
this.countLeftSlab = countLeftSlab;
|
this.countLeftSlab = countLeftSlab;
|
||||||
}
|
}
|
||||||
|
|
||||||
public ArrayList<Integer> getCountCenterSlab() {
|
public ArrayList<Double> getCountCenterSlab() {
|
||||||
return countCenterSlab;
|
return countCenterSlab;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setCountCenterSlab(ArrayList<Integer> countCenterSlab) {
|
public void setCountCenterSlab(ArrayList<Double> countCenterSlab) {
|
||||||
this.countCenterSlab = countCenterSlab;
|
this.countCenterSlab = countCenterSlab;
|
||||||
}
|
}
|
||||||
|
|
||||||
public ArrayList<Integer> getCountRightSlab() {
|
public ArrayList<Double> getCountRightSlab() {
|
||||||
return countRightSlab;
|
return countRightSlab;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setCountRightSlab(ArrayList<Integer> countRightSlab) {
|
public void setCountRightSlab(ArrayList<Double> countRightSlab) {
|
||||||
this.countRightSlab = countRightSlab;
|
this.countRightSlab = countRightSlab;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -78,7 +78,7 @@ public class TheilSenEstimator extends Observable implements Algorithm {
|
||||||
*/
|
*/
|
||||||
public void run() {
|
public void run() {
|
||||||
//damit eine initiale Ordnung herscht
|
//damit eine initiale Ordnung herscht
|
||||||
Collections.sort(intervalIntersections);
|
//Collections.sort(intervalIntersections);
|
||||||
|
|
||||||
interval = new Interval(NEGATIV_INF, POSITIV_INF);
|
interval = new Interval(NEGATIV_INF, POSITIV_INF);
|
||||||
while (true) {
|
while (true) {
|
||||||
|
|
|
@ -32,7 +32,7 @@ public class DataImporter extends Observable{
|
||||||
this.model = new Arrangement();
|
this.model = new Arrangement();
|
||||||
this.presenter = presenter;
|
this.presenter = presenter;
|
||||||
this.presenter.setModel(this.model);
|
this.presenter.setModel(this.model);
|
||||||
System.out.println(this.model.getLines().size()+ " die Anzahl der aktuellen Lines.");
|
//System.out.println(this.model.getLines().size()+ " die Anzahl der aktuellen Lines.");
|
||||||
|
|
||||||
|
|
||||||
this.file = file;
|
this.file = file;
|
||||||
|
@ -52,23 +52,25 @@ public class DataImporter extends Observable{
|
||||||
String[] result = {"import", lines.size()+"", ""};
|
String[] result = {"import", lines.size()+"", ""};
|
||||||
//System.out.println("+-------------------------------------------------------------------------------+");
|
//System.out.println("+-------------------------------------------------------------------------------+");
|
||||||
for(String[] nextLine : lines) {
|
for(String[] nextLine : lines) {
|
||||||
counter++;
|
|
||||||
// nextLine[] is an array of values from the line
|
// nextLine[] is an array of values from the line
|
||||||
int id = Integer.parseInt(nextLine[0]);
|
|
||||||
Double x = Double.parseDouble(nextLine[1]);
|
Double x = Double.parseDouble(nextLine[1]);
|
||||||
Double y = Double.parseDouble(nextLine[2]);
|
Double y = Double.parseDouble(nextLine[2]);
|
||||||
Line line = new Line(x,y);
|
Line line = new Line(x,y);
|
||||||
line.setId(id+"");
|
line.setId(counter+"");
|
||||||
this.presenter.getModel().addLine(line);
|
this.presenter.getModel().addLine(line);
|
||||||
//System.out.format("|\t\t\t\t\t %-11d \t|\t\t\t\t\t %-11f \t|\t\t\t\t\t %-11f \t\t\t\t\t|\n", id,x,y);
|
//System.out.format("|\t\t\t\t\t %-11d \t|\t\t\t\t\t %-11f \t|\t\t\t\t\t %-11f \t\t\t\t\t|\n", id,x,y);
|
||||||
setChanged();
|
setChanged();
|
||||||
|
counter++;
|
||||||
result[2] = counter + "";
|
result[2] = counter + "";
|
||||||
|
Thread.sleep(20);
|
||||||
notifyObservers(result);
|
notifyObservers(result);
|
||||||
}
|
}
|
||||||
|
|
||||||
//System.out.println("+-------------------------------------------------------------------------------+");
|
//System.out.println("+-------------------------------------------------------------------------------+");
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
|
} catch (InterruptedException e) {
|
||||||
|
e.printStackTrace();
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,6 +10,7 @@ import Presenter.Algorithms.TheilSenEstimator;
|
||||||
import Presenter.Import.DataImporter;
|
import Presenter.Import.DataImporter;
|
||||||
import View.MainFrame;
|
import View.MainFrame;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
import javax.swing.*;
|
import javax.swing.*;
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.util.LinkedList;
|
import java.util.LinkedList;
|
||||||
|
@ -32,34 +33,34 @@ public class Presenter implements Observer {
|
||||||
public Presenter(Arrangement model, MainFrame view) {
|
public Presenter(Arrangement model, MainFrame view) {
|
||||||
this.model = model;
|
this.model = model;
|
||||||
this.view = view;
|
this.view = view;
|
||||||
// Double[] x = {1d, 2d, 3d, 4d, 10d, 12d, 18d};
|
/* Double[] x = {1d, 2d, 3d, 4d, 10d, 12d, 18d};
|
||||||
// Double[] y = {9d, 15d, 19d, 20d, 45d, 55d, 78d};
|
Double[] y = {9d, 15d, 19d, 20d, 45d, 55d, 78d};
|
||||||
Double[] x = {18d, 24d, 30d, 34d, 38d};
|
Double[] x = {18d, 24d, 30d, 34d, 38d};
|
||||||
Double[] y = {18d, 26d, 30d, 40d, 70d};
|
Double[] y = {18d, 26d, 30d, 40d, 70d};
|
||||||
// Double[] x = {1d,3d,4d,5d,8d};
|
Double[] x = {1d,3d,4d,5d,8d};
|
||||||
// Double[] y = {4d,2d,1d,0d,0d};
|
Double[] y = {4d,2d,1d,0d,0d};
|
||||||
view.logHeading("Duale Darstellung der Punkte als Geraden:");
|
view.logHeading("Duale Darstellung der Punkte als Geraden:");
|
||||||
for (int j = 0; j < x.length; j++) {
|
for (int j = 0; j < x.length; j++) {
|
||||||
Line p = new Line(x[j], y[j]);
|
Line p = new Line(x[j], y[j]);
|
||||||
p.setId(j+"");
|
p.setId(j+"");
|
||||||
view.log("f(x) = " + p.getM() + "x + " + p.getB());
|
view.log("f(x) = " + p.getM() + "x + " + p.getB());
|
||||||
this.model.addLine(p);
|
this.model.addLine(p);
|
||||||
}
|
}
|
||||||
//
|
|
||||||
calcArrangementNodes();
|
calcArrangementNodes();
|
||||||
// //print
|
//print
|
||||||
// List<String> heading = new LinkedList<>();
|
List<String> heading = new LinkedList<>();
|
||||||
// List<List<String>> rows = new LinkedList<>();
|
List<List<String>> rows = new LinkedList<>();
|
||||||
// heading.add("X - Koordinate");
|
heading.add("X - Koordinate");
|
||||||
// heading.add("Y - Koordinate");
|
heading.add("Y - Koordinate");
|
||||||
// for (Point p : model.getNodes()) {
|
for (Point p : model.getNodes()) {
|
||||||
// LinkedList<String> rowEntry = new LinkedList<>();
|
LinkedList<String> rowEntry = new LinkedList<>();
|
||||||
// rowEntry.add(p.getX().toString());
|
rowEntry.add(p.getX().toString());
|
||||||
// rowEntry.add(p.getY().toString());
|
rowEntry.add(p.getY().toString());
|
||||||
// rows.add(rowEntry);
|
rows.add(rowEntry);
|
||||||
// }
|
}
|
||||||
// view.logHeading("Schnittpunkte der Dualen Geraden:");
|
view.logHeading("Schnittpunkte der Dualen Geraden:");
|
||||||
// view.createTable(heading, rows);
|
view.createTable(heading, rows); */
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -109,6 +110,15 @@ public class Presenter implements Observer {
|
||||||
getView().getProgressDialog().dispose();
|
getView().getProgressDialog().dispose();
|
||||||
});
|
});
|
||||||
setup();
|
setup();
|
||||||
|
Thread t = new Thread(() -> {
|
||||||
|
calcArrangementNodes();
|
||||||
|
});
|
||||||
|
t.start();
|
||||||
|
try {
|
||||||
|
t.join();
|
||||||
|
} catch (InterruptedException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
SwingUtilities.invokeLater(() -> {
|
SwingUtilities.invokeLater(() -> {
|
||||||
getView().showImportProgress(progress);
|
getView().showImportProgress(progress);
|
||||||
|
@ -165,38 +175,41 @@ public class Presenter implements Observer {
|
||||||
public void setup(){
|
public void setup(){
|
||||||
getView().logHeading("Duale Darstellung der Punkte als Geraden:");
|
getView().logHeading("Duale Darstellung der Punkte als Geraden:");
|
||||||
|
|
||||||
for (int j = 0; j < getModel().getLines().size(); j++) {
|
|
||||||
Line p = getModel().getLines().get(j);
|
|
||||||
p.setId(j+"");
|
|
||||||
getView().log("f(x) = " + p.getM() + "x + " + p.getB());
|
|
||||||
}
|
|
||||||
getView().log("<hr>");
|
|
||||||
calcArrangementNodes();
|
|
||||||
|
|
||||||
//Darstellung der Schnittpunkte in einer Tabelle
|
//Darstellung der Schnittpunkte in einer Tabelle
|
||||||
// List<String> heading = new LinkedList<>();
|
List<String> heading = new LinkedList<>();
|
||||||
// List<List<String>> rows = new LinkedList<>();
|
List<List<String>> rows = new LinkedList<>();
|
||||||
// heading.add("X - Koordinate");
|
heading.add("Geraden");
|
||||||
// heading.add("Y - Koordinate");
|
for (int j = 0; j < getModel().getLines().size()-2; j++) {
|
||||||
// for (Point p : getModel().getNodes()) {
|
LinkedList<String> rowEntry = new LinkedList<>();
|
||||||
// LinkedList<String> rowEntry = new LinkedList<>();
|
Line p1 = getModel().getLines().get(j);
|
||||||
// rowEntry.add(p.getX().toString());
|
rowEntry.add("f(x) = " + p1.getM() + "x + " + p1.getB());
|
||||||
// rowEntry.add(p.getY().toString());
|
|
||||||
// rows.add(rowEntry);
|
if (j+1 < getModel().getLines().size()){
|
||||||
// }
|
Line p2 = getModel().getLines().get(j+1);
|
||||||
// getView().logHeading("Schnittpunkte der Dualen Geraden:");
|
rowEntry.add("f(x) = " + p2.getM() + "x + " + p2.getB());
|
||||||
// getView().createTable(heading, rows);
|
}
|
||||||
|
|
||||||
|
if (j+2 < getModel().getLines().size()){
|
||||||
|
Line p3 = getModel().getLines().get(j+2);
|
||||||
|
rowEntry.add("f(x) = " + p3.getM() + "x + " + p3.getB());
|
||||||
|
}
|
||||||
|
rows.add(rowEntry);
|
||||||
|
}
|
||||||
|
getView().logHeading("Schnittpunkte der Dualen Geraden:");
|
||||||
|
getView().createTable(heading, rows);
|
||||||
|
|
||||||
|
getView().log("<hr>");
|
||||||
}
|
}
|
||||||
|
|
||||||
public Point calcIntersection(Line a, Line b) {
|
// public Point calcIntersection(Line a, Line b) {
|
||||||
Line p1 = a;
|
// Line p1 = a;
|
||||||
Line p2 = b;
|
// Line p2 = b;
|
||||||
|
//
|
||||||
Double x = (p1.getB() - p2.getB()) / (p2.getM() - p1.getM());
|
// Double x = (p1.getB() - p2.getB()) / (p2.getM() - p1.getM());
|
||||||
Double y = ((p1.getM() * p2.getB()) - (p2.getM() * p1.getB())) / (p1.getM() - p2.getM());
|
// Double y = ((p1.getM() * p2.getB()) - (p2.getM() * p1.getB())) / (p1.getM() - p2.getM());
|
||||||
|
//
|
||||||
return new Point(x, y);
|
// return new Point(x, y);
|
||||||
}
|
// }
|
||||||
|
|
||||||
public void calcArrangementNodes() {
|
public void calcArrangementNodes() {
|
||||||
try {
|
try {
|
||||||
|
|
|
@ -166,13 +166,13 @@ public class ArrangementDialog extends JPanel {
|
||||||
Double val = e.getPreciseWheelRotation() * -1;
|
Double val = e.getPreciseWheelRotation() * -1;
|
||||||
|
|
||||||
if(ctrlPressed == true){
|
if(ctrlPressed == true){
|
||||||
System.out.println("CTRL + ZOOM");
|
//System.out.println("CTRL + ZOOM");
|
||||||
min = range.getLowerBound();
|
min = range.getLowerBound();
|
||||||
max = range.getUpperBound();
|
max = range.getUpperBound();
|
||||||
DateRange dateRangeX = move(val, min, max);
|
DateRange dateRangeX = move(val, min, max);
|
||||||
range.setRange(dateRangeX);
|
range.setRange(dateRangeX);
|
||||||
} else if (shiftPressed == true){
|
} else if (shiftPressed == true){
|
||||||
System.out.println("SHIFT + ZOOM");
|
//System.out.println("SHIFT + ZOOM");
|
||||||
min = domain.getLowerBound();
|
min = domain.getLowerBound();
|
||||||
max = domain.getUpperBound();
|
max = domain.getUpperBound();
|
||||||
DateRange dateRangeY = move(val, min, max);
|
DateRange dateRangeY = move(val, min, max);
|
||||||
|
|
|
@ -1,96 +0,0 @@
|
||||||
package View;
|
|
||||||
|
|
||||||
import Model.Point;
|
|
||||||
import java.awt.BasicStroke;
|
|
||||||
import java.awt.BorderLayout;
|
|
||||||
import java.awt.Color;
|
|
||||||
import java.awt.Dimension;
|
|
||||||
import java.awt.Graphics;
|
|
||||||
import java.awt.Graphics2D;
|
|
||||||
import java.awt.RenderingHints;
|
|
||||||
import java.awt.geom.Line2D;
|
|
||||||
import java.util.LinkedList;
|
|
||||||
import javax.swing.JPanel;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Implementierung verschiedener Algorithmen zur Berechnung von Ausgleichsgeraden.
|
|
||||||
*
|
|
||||||
* @Author: Armin Wolf
|
|
||||||
* @Email: a_wolf28@uni-muenster.de
|
|
||||||
* @Date: 03.06.2017.
|
|
||||||
*/
|
|
||||||
public class ArrangementDialog2 extends JPanel {
|
|
||||||
|
|
||||||
private int min = 0;
|
|
||||||
private int max = 800;
|
|
||||||
private int zero = max / 2;
|
|
||||||
private double scale = 1.0;
|
|
||||||
private int pointThicknes = 5;
|
|
||||||
|
|
||||||
|
|
||||||
private Dimension dimension;
|
|
||||||
private LinkedList<LinkedList<Point>> lines;
|
|
||||||
private LinkedList<Point> points;
|
|
||||||
private LinkedList<Line2D.Double> line2Ds;
|
|
||||||
|
|
||||||
|
|
||||||
public ArrangementDialog2() {
|
|
||||||
super();
|
|
||||||
this.dimension = new Dimension(max, max);
|
|
||||||
this.setPreferredSize(dimension);
|
|
||||||
this.setLayout(new BorderLayout());
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setPrameters(LinkedList<LinkedList<Point>> lines, LinkedList<Point> points) {
|
|
||||||
this.lines = lines;
|
|
||||||
this.points = points;
|
|
||||||
this.repaint();
|
|
||||||
}
|
|
||||||
|
|
||||||
public double getScale() {
|
|
||||||
return scale;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setScale(double scale) {
|
|
||||||
this.scale = scale;
|
|
||||||
}
|
|
||||||
|
|
||||||
public int getPointThicknes() {
|
|
||||||
return pointThicknes;
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setPointThicknes(int pointThicknes) {
|
|
||||||
this.pointThicknes = pointThicknes;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void paintComponent(Graphics g) {
|
|
||||||
super.paintComponent(g);
|
|
||||||
Graphics2D g2 = (Graphics2D) g;
|
|
||||||
g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
|
|
||||||
line2Ds = new LinkedList<>();
|
|
||||||
g2.translate(zero, zero);
|
|
||||||
g2.scale(scale, scale);
|
|
||||||
g2.translate(-1 * zero, -1 * zero);
|
|
||||||
|
|
||||||
//draw the lines
|
|
||||||
g2.setColor(Color.BLACK);
|
|
||||||
g2.setStroke(new BasicStroke(5f / (float) scale));
|
|
||||||
for (LinkedList<Point> line : lines) {
|
|
||||||
line2Ds.add(new Line2D.Double(zero + line.getFirst().getX().intValue(),
|
|
||||||
zero + line.getFirst().getY().intValue(), zero + line.getLast().getX().intValue(),
|
|
||||||
zero + line.getLast().getY().intValue()));
|
|
||||||
}
|
|
||||||
for (Line2D.Double line : line2Ds) {
|
|
||||||
g2.draw(line);
|
|
||||||
}
|
|
||||||
|
|
||||||
//draw intersections of the lines
|
|
||||||
g2.setColor(Color.RED);
|
|
||||||
for (Point point : points) {
|
|
||||||
g2.fillOval(zero + point.getX().intValue(), zero + point.getY().intValue(), pointThicknes,
|
|
||||||
pointThicknes);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -175,13 +175,14 @@ public class MainFrame extends JFrame {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setDimensions() {
|
private void setDimensions() {
|
||||||
//this.setMinimumSize(new Dimension(1366,768));
|
this.setMinimumSize(new Dimension(1366,768));
|
||||||
this.setExtendedState(JFrame.MAXIMIZED_BOTH);
|
this.setExtendedState(JFrame.MAXIMIZED_BOTH);
|
||||||
lmsPanel.setMinimumSize(new Dimension(400, 500));
|
lmsPanel.setMinimumSize(new Dimension(400, 500));
|
||||||
rmPanel.setMinimumSize(new Dimension(400, 500));
|
rmPanel.setMinimumSize(new Dimension(400, 500));
|
||||||
tsPanel.setMinimumSize(new Dimension(400, 500));
|
tsPanel.setMinimumSize(new Dimension(400, 500));
|
||||||
output.setMinimumSize(new Dimension(400, 500));
|
output.setMinimumSize(new Dimension(400, 500));
|
||||||
progressDialog.setSize(300, 100);
|
progressDialog.setSize(300, 80);
|
||||||
|
progressDialog.setResizable(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setLayouts() {
|
private void setLayouts() {
|
||||||
|
@ -265,9 +266,7 @@ public class MainFrame extends JFrame {
|
||||||
File file = null;
|
File file = null;
|
||||||
JFileChooser chooser = new JFileChooser();
|
JFileChooser chooser = new JFileChooser();
|
||||||
chooser.setPreferredSize(new Dimension(800,700));
|
chooser.setPreferredSize(new Dimension(800,700));
|
||||||
ClassLoader classLoader = getClass().getClassLoader();
|
File workingDirectory = new File(System.getProperty("user.dir"));
|
||||||
File workingDirectory = null;
|
|
||||||
workingDirectory = new File(System.getProperty("user.dir"));
|
|
||||||
chooser.setCurrentDirectory(workingDirectory);
|
chooser.setCurrentDirectory(workingDirectory);
|
||||||
chooser.setFileFilter(new FileNameExtensionFilter("Comma-Separated Value", "csv", "text"));
|
chooser.setFileFilter(new FileNameExtensionFilter("Comma-Separated Value", "csv", "text"));
|
||||||
|
|
||||||
|
@ -276,8 +275,7 @@ public class MainFrame extends JFrame {
|
||||||
|
|
||||||
|
|
||||||
if (chooser.showOpenDialog(null) == JFileChooser.APPROVE_OPTION){
|
if (chooser.showOpenDialog(null) == JFileChooser.APPROVE_OPTION){
|
||||||
System.out.println ("Datei "+chooser.getSelectedFile()+
|
//System.out.println ("Datei "+chooser.getSelectedFile()+ " ausgewählt.");
|
||||||
" ausgewählt.");
|
|
||||||
file = chooser.getSelectedFile();
|
file = chooser.getSelectedFile();
|
||||||
final File input = file;
|
final File input = file;
|
||||||
Thread t = new Thread(() -> this.getPresenter().startImport(input));
|
Thread t = new Thread(() -> this.getPresenter().startImport(input));
|
||||||
|
@ -291,12 +289,14 @@ public class MainFrame extends JFrame {
|
||||||
public void enableFunctionality(){
|
public void enableFunctionality(){
|
||||||
this.getLmsPanel().getStartButton().setEnabled(true);
|
this.getLmsPanel().getStartButton().setEnabled(true);
|
||||||
this.getRmPanel().getStartButton().setEnabled(true);
|
this.getRmPanel().getStartButton().setEnabled(true);
|
||||||
|
this.getTsPanel().getStartButton().setEnabled(true);
|
||||||
this.getArrangementButton().setEnabled(true);
|
this.getArrangementButton().setEnabled(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void disableFunctionality(){
|
public void disableFunctionality(){
|
||||||
this.getLmsPanel().getStartButton().setEnabled(false);
|
this.getLmsPanel().getStartButton().setEnabled(false);
|
||||||
this.getRmPanel().getStartButton().setEnabled(false);
|
this.getRmPanel().getStartButton().setEnabled(false);
|
||||||
|
this.getTsPanel().getStartButton().setEnabled(false);
|
||||||
this.getArrangementButton().setEnabled(false);
|
this.getArrangementButton().setEnabled(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -446,4 +446,12 @@ public class MainFrame extends JFrame {
|
||||||
public void setProgressDialog(JDialog progressDialog) {
|
public void setProgressDialog(JDialog progressDialog) {
|
||||||
this.progressDialog = progressDialog;
|
this.progressDialog = progressDialog;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public TSPanel getTsPanel() {
|
||||||
|
return tsPanel;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTsPanel(TSPanel tsPanel) {
|
||||||
|
this.tsPanel = tsPanel;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -68,9 +68,14 @@ public class OutputPanel extends JPanel {
|
||||||
content.append("<center>");
|
content.append("<center>");
|
||||||
content.append("<table style=\" width:80%; border: 1px solid black; \">");
|
content.append("<table style=\" width:80%; border: 1px solid black; \">");
|
||||||
content.append("<tr>");
|
content.append("<tr>");
|
||||||
for (String str : heading) {
|
if (heading.size()>1){
|
||||||
content.append("<th style=\" border: 1px solid black; \">" + str + "</th>");
|
for (String str : heading) {
|
||||||
|
content.append("<th style=\" border: 1px solid black; \">" + str + "</th>");
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
content.append("<th style=\" border: 1px solid black;\" colspan=\""+ rows.get(0).size() +"\"; >" + heading.get(0) + "</th>");
|
||||||
}
|
}
|
||||||
|
|
||||||
content.append("</tr>");
|
content.append("</tr>");
|
||||||
for (List<String> row : rows) {
|
for (List<String> row : rows) {
|
||||||
content.append("<tr>");
|
content.append("<tr>");
|
||||||
|
|
Loading…
Reference in New Issue