I've been working on a Crop Circle Generator, but I can't make anything _insane_ because I have no idea how to do mirroring.
I wish to create a mad circle-with-in-a-circle mess, then mirror it on X or Y so it would look symmetrical. So far I've made it using objects that are symmetrical:
Code: Select all
startshape CROPCIRCLE
background { a -1 }
rule CROPCIRCLE {
MUTATE{}
}
rule MUTATE {
CONSTRUCT {}
CONSTRUCT { y -1 }
CONSTRUCT { b 0 y 2 }
CONSTRUCT { b 0 y 1 }
}
//----------------- CONSTRUCT ----------------------------
rule CREATECIRCLE 50 {}
rule CREATECIRCLE {
BASIC {}
}
rule CREATECIRCLE {
BASIC { x -2.66 }
BASIC { x 2.66 }
}
rule CREATECIRCLE {
BASIC { s 1.5 y -2 }
}
rule CREATECIRCLE {
BASIC { s 2 y 2 }
}
rule CREATECIRCLE {
BASIC { s 0.5 }
}
rule CREATECIRCLE {
BASIC { s 0.5 x -1 }
BASIC { s 0.5 x 1 }
}
rule CREATECIRCLE {
BASIC { s 0.5 y -1 }
BASIC { s 0.5 y 1 }
}
rule CREATECIRCLE {
BASIC { s 0.5 y -1 }
}
rule CREATECIRCLE {
BASIC { s 0.5 y 1 }
}
//------------
rule CREATECIRCLE 20{
BASIC {}
CIRCLE {s 1 y -1}
}
rule CREATECIRCLE {
BASIC { s 2 x -2.66 }
BASIC { s 2 x 2.66 }
CIRCLE {s 4 y -2}
CIRCLE {s 4 y 2}
}
rule CREATECIRCLE {
BASIC { y -2 }
CIRCLE {s 4 y -1}
}
rule CREATECIRCLE {
BASIC { y 2 }
CIRCLE {s 5 y -3}
}
rule CREATECIRCLE {
CIRCLE {s 4 y -2}
BASIC { s 0.5 }
}
rule CREATECIRCLE {
BASIC { s 0.5 x -1 }
BASIC { s 0.5 x 1 }
CIRCLE {s 3 y -1}
}
rule CREATECIRCLE {
BASIC { s 0.5 y -1 }
BASIC { s 0.5 y 1 }
CIRCLE {s 4 y 3}
CIRCLE {s 4 y -3}
}
rule CREATECIRCLE {
BASIC { s 0.5 y -1 }
CIRCLE {s 2 y 1}
}
rule CREATECIRCLE {
BASIC { s 0.5 y 1 }
CIRCLE {s 1 y -1}
}
//-------------
rule CONSTRUCT {
CREATECIRCLE {}
CREATECIRCLE {s 2}
}
rule CONSTRUCT {
CREATECIRCLE {y -2}
CREATECIRCLE {y -1}
CREATECIRCLE {}
CREATECIRCLE {y 1}
}
//----------------- BASIC SHAPES -------------------------
rule BASIC {
CIRCLE { s 2 }
CIRCLE { s 1.5 b 1 }
ADDOTS {}
}
//----------------- ADD DETAILS TO SHAPES ----------------
rule ADDOTS {
CIRCLE { s 0.25 y -1.33 }
CIRCLE { s 0.25 y 1.33 }
CIRCLE { s 0.25 x -1.33 }
CIRCLE { s 0.25 x 1.33 }
}