import java.awt.*; // Graphics import javax.swing.*; // JFrame, JPanel public class RecursiveDrawer2 { public static void main(String[] args) { JFrame frame=new JFrame(""); frame.setSize(700,400); DrawPanel p=new DrawPanel(); frame.add(p); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); } public static class DrawPanel extends JPanel // pretty much the same as RecursiveDrawer except this draws 2 diagonal lines and 1 straight up line giving a different pattern { public void paintComponent(Graphics g) { draw(g, 350,300,250,0); } public void draw(Graphics g, int x, int y, int size, int c) { if(c<8) { g.drawLine(x-size/4,y-size/4,x,y); g.drawLine(x,y-size/2,x,y); g.drawLine(x+size/4,y-size/4,x,y); draw(g,x-size/4,y-size/4,size/2,c+1); draw(g,x+size/4,y-size/4,size/2,c+1); draw(g,x,y-size/2,size/2,c+1); } } } }