#include "svg.h"

void generate(int d, double x, double y, double len) {
    if (d<=0) return;
    
    triangle(x-len, y, x, y, x, y+len);
    generate(d-1, x-len/2, y-len/2, len/2);
    generate(d-1, x-len/2, y+len/2, len/2);
    generate(d-1, x+len/2, y+len/2, len/2);
}


int main(void) {
    start();
    rulers();
    
    stroke(0x808080);
    strokeWeight(0.5);
    noFill();

    /* 一番外側の三角形 */
    triangle(WIDTH/2.0-HEIGHT/3.0, HEIGHT/6.0, WIDTH/2.0-HEIGHT/3.0, 5*HEIGHT/6.0, WIDTH/2.0+HEIGHT/3.0, 5*HEIGHT/6.0);
    generate(5, WIDTH/2.0, HEIGHT/2.0, HEIGHT/3.0);
    
    finish();
    return 0;
}
