diff --git a/lindenmayer-system/lindenmeyer-system.html b/lindenmayer-system/lindenmeyer-system.html
index c5900aa..8ab6f9b 100644
--- a/lindenmayer-system/lindenmeyer-system.html
+++ b/lindenmayer-system/lindenmeyer-system.html
@@ -141,6 +141,40 @@ function sierpinski(noise) {
p.strokeColor = '#ff00ff';
}
+ /************************************************
+ * Hilbert Curve
+ ************************************************/
+
+ function hilbert() {
+ project.clear();
+ var r = generate(
+ 'ImjJA',
+ [
+ ['A', '-BF+AFA+FB-'],
+ ['B', '+AF-BFB-FA+']
+ ],
+ 6
+ );
+
+ var p = draw(
+ r,
+ {
+ 'F': draw_forward(),
+ 'I': draw_angle_init(Math.PI/2),
+ '-': draw_angle_turn(-1),
+ '+': draw_angle_turn(1),
+ 'j': draw_set_turn_noise(0.05),
+ 'J': draw_set_length_noise(0.1),
+ 'm': draw_forward(0.001),
+ }
+ );
+ p.scale(5);
+ p.translate(new Point(200, 200));
+ p.strokeWidth = 1;
+ p.strokeColor = '#ff00ff';
+ }
+
+
/************************************************
* Barnsley Fern
@@ -249,6 +283,7 @@ function sierpinski(noise) {
globals.dragon_curve = dragon_curve;
globals.sierpinski2 = sierpinski2;
globals.sierpinski = sierpinski;
+globals.hilbert = hilbert;
globals.barnsley_fern = barnsley_fern;
globals.other_tree = other_tree;
@@ -308,6 +343,10 @@ window.onload = function() {
window.globals.sierpinski(0.2);
});
+ document.getElementById('hilbert').addEventListener('click', function() {
+ window.globals.hilbert();
+ });
+
document.getElementById('barnsley-fern').addEventListener('click', function() {
window.globals.barnsley_fern();
});
@@ -333,6 +372,7 @@ window.onload = function() {
+