-
Notifications
You must be signed in to change notification settings - Fork 0
/
FileIO.pde
84 lines (64 loc) · 1.95 KB
/
FileIO.pde
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
/*
Liest zur Zeit nur Dateien mit gerader Zeilenzahl erfolgreich aus
*/
void buildingsFromFile(){
int recordCount = 0;
String[] lines = loadStrings("typos.tsv"); // jede Array Zelle enthält eine Zeile text
buildingPlans = new Building[lines.length-1]; // so vielel records wie anzahl zeieln
for (int i = 1; i < lines.length; i++) { //skip first line
String[] pieces = split(lines[i], '\t'); // tokenize the lines separated by tab
buildingPlans[recordCount] = new Building(pieces); // create a new building template
recordCount++;
}
}
/** Draws construction site to offview buffer and saves to file and history
*
*/
class ImageSave extends Thread{
ImageSave(){
}
public void run(){
// file drawing
try{
PGraphics pg;
pg = createGraphics(950, 450, JAVA2D);
pg.beginDraw();
background(250);
pg.smooth();
constructedBuildings.pgDisplay(pg);
urbanGround.pgDisplay(pg);
pg.endDraw();
pg.save("construction_site_"+year()+month()+day()+hour()+minute()+second()+".png");
}
catch(Exception e){ // saving might fail
}
// history drawing
PGraphics hpg;
hpg = createGraphics(950, 450, JAVA2D);
hpg.beginDraw();
background(250);
hpg.smooth();
urbanGround.pgDisplay(hpg);
constructedBuildings.historyDisplay(hpg);
hpg.endDraw();
imageHistory.add(hpg);
//saveFrame("construction_site_###.png");
}
void pdfSave(){
// file drawing
try{
PGraphics pdf;
pdf = createGraphics(950, 450, PDF, "construction_site_"+year()+month()+day()+hour()+minute()+second()+".pdf");
pdf.textMode(SHAPE);
pdf.beginDraw();
background(250);
pdf.smooth();
constructedBuildings.pgDisplay(pdf);
urbanGround.pgDisplay(pdf);
pdf.dispose();
pdf.endDraw();
}
catch(Exception e){ // saving might fail
}
}
}