# ========================================= # # confree twisty_triangel.cfdg output.png 800 100 # ========================================= #
startshape TRIPLES
rule TRIPLES {
LINES { r 0 } LINES { r 120 } LINES { r -120 }
}
rule LINES {
UTRIANGLE { y 0.5 } LINES { r 20 b 0.15 y 0.75 x -0.4330125 s 0.754877 } LINER { r -60 b 0.15 y 0.75 x 0.4330125 s 0.754877 } }
rule LINER { LINER15 { } } rule LINER { LINER12 { } } rule LINER { LINER9 { } } rule LINER { LINER6 { } } rule LINER15 {
UTRIANGLE { y 0.5 } LINER { r -15 b 0.02 y 0.75 x 0.4330125 s 0.754877 } }
rule LINER12 {
UTRIANGLE { y 0.5 } LINER { r -12 b 0.02 y 0.75 x 0.4330125 s 0.754877 } }
rule LINER9 {
UTRIANGLE { y 0.5 } LINER { r -9 b 0.02 y 0.75 x 0.4330125 s 0.754877 } }
rule LINER6 {
UTRIANGLE { y 0.5 } LINER { r -6 b 0.02 y 0.75 x 0.4330125 s 0.754877 } }
// 0.754877 is the solution to // x^2 + x^3 = 1 // this allows double backed // triangles to exactly line up!
rule TESTU {
TESTU_background { } UTRIANGLE { } UTRIANGLE { y 0.5 x -0.866025 b 0.5 r 60 } UTRIANGLE { y 0.5 x +0.866025 b 0.5 r 60 }
} rule TESTU_background {
CIRCLE { b 0.5 } CIRCLE { y -1 } CIRCLE { y -0.5 x -0.866025 } CIRCLE { y -0.5 x 0.866025 } CIRCLE { y 0.5 x -0.866025 } CIRCLE { y 0.5 x 0.866025 } CIRCLE { y 1 }
}
rule UTRIANGLE {
TRIANGLE { r 42.5 s 0.525 }
} rule TRIANGLE{
ARM { r 0 } ARM { r 120 } ARM { r -120 }
}
rule ARM {
CIRCLE { } ARM { y 0.1 s 0.9 r 2 }
}