Sierpinski square curve: Difference between revisions

Content added Content deleted
m (Minor edit)
m (Minor edit)
Line 135: Line 135:
<lang java>import java.io.*;
<lang java>import java.io.*;


public class SierpinskiSquareCurve implements AutoCloseable {
public class SierpinskiSquareCurve {
public static void main(final String[] args) {
public static void main(final String[] args) {
try (SierpinskiSquareCurve s = new SierpinskiSquareCurve("sierpinski_square.svg")) {
try (Writer writer = new BufferedWriter(new FileWriter("sierpinski_square.svg"))) {
SierpinskiSquareCurve s = new SierpinskiSquareCurve(writer);
s.currentAngle = 0;
s.currentAngle = 0;
s.currentX = 315;
s.currentX = 315;
Line 150: Line 151:
}
}


private SierpinskiSquareCurve(final String file) throws IOException {
private SierpinskiSquareCurve(final Writer writer) {
writer = new BufferedWriter(new FileWriter(file));
this.writer = writer;
}
}


Line 158: Line 159:
write("<rect width='100%%' height='100%%' fill='white'/>\n");
write("<rect width='100%%' height='100%%' fill='white'/>\n");
write("<path stroke-width='1' stroke='black' fill='none' d='");
write("<path stroke-width='1' stroke='black' fill='none' d='");
}

public void close() throws IOException {
writer.close();
}
}