Page 1 of 1
sierpensky is fun
Posted: Fri May 06, 2005 6:57 pm
by globalreset
Code: Select all
startshape meta_meta_meta_meta_triangle
include i_polygon.cfdg
rule meta_meta_meta_meta_meta_triangle {
meta_meta_meta_meta_triangle { y 7.68 }
meta_meta_meta_meta_triangle { x 8 y -6.4 }
meta_meta_meta_meta_triangle { x -8 y -6.4 }
}
rule meta_meta_meta_meta_triangle {
meta_meta_meta_triangle { y 3.84 }
meta_meta_meta_triangle { x 4 y -3.2 }
meta_meta_meta_triangle { x -4 y -3.2 }
}
rule meta_meta_meta_triangle {
meta_meta_triangle { y 1.92 }
meta_meta_triangle { x 2 y -1.6 }
meta_meta_triangle { x -2 y -1.6 }
}
rule meta_meta_triangle {
meta_triangle { y .96 }
meta_triangle { x 1 y -.8 }
meta_triangle { x -1 y -.8 }
}
rule meta_triangle {
triangle { y .48 }
triangle { x .5 y -.4 }
triangle { x -.5 y -.4 }
}
rule triangle {
polygon6sided { s .55 y .22 }
polygon6sided { s .55 y -.22 x -.25}
polygon6sided { s .55 y -.22 x .25 }
}
Posted: Fri May 06, 2005 8:26 pm
by mtnviewmark
You might try this construction that is recursive and shows how it fills the triangle:
Code: Select all
startshape Top
rule Top {
Sierpensky { r -13.5 }
}
rule Sierpensky {
Shape { }
Sierpensky { s 0.5
y -1 x 0 }
Sierpensky { s 0.5
y 0.5 x -0.866025 }
Sierpensky { s 0.5
y 0.5 x 0.866025 }
}
# comment out all but one of these rules for Shape:
rule Shape { CIRCLE { } }
#rule Shape { Triangle { s 0.5 } }
#rule Shape { Triangle { } }
// this last one fills the image
rule Triangle {
Arm { r 0 }
Arm { r 120 }
Arm { r -120 }
}
rule Arm {
CIRCLE { }
Arm { y 0.1 s 0.9 }
}
Posted: Sat May 07, 2005 9:15 am
by globalreset
Wow, very nice. Thanks for the cfdg!
Posted: Sat May 07, 2005 9:30 am
by globalreset
At first, I tried to do mine recursively but couldn't up with the right formulation. I see from yours how to do it now. I was building the border triangles, in a sense. If you start with 3 trianges, stacked in a triangle fashion, I was trying to figure out how to stack 3 of those recursively in a terminating fashion. But your formulation uses the space between those triangles (the newly formed anti-triangle?)... which converges nicely.
Thanks again!