Context Free Art – Tutorial 1

After we can create different primitive shapes, we start to combine them together. We cannot simply put all the primitive shapes within one single shape rule, like:

startshape MyShape

rule MyShape {
     CIRCLE {}
     TRIANGLE {}
     SQUARE {}
}
Multiple shapes

Every shape command comes with parameters. We work with the translation parameters x and y to move the shape around in the canvas.

startshape MyShape

rule MyShape {
     CIRCLE {x -2}
     TRIANGLE {}
     SQUARE {x 2}
}

Multiple shapes
startshape MyShape

rule MyShape {
     CIRCLE {y 2}
     TRIANGLE {}
     SQUARE {y -2}
}
Multiple shapes

startshape MyShape

rule MyShape {
     CIRCLE {x 2 y 2 size 0.8}
     TRIANGLE {size 2}
     SQUARE {x -2 y -2 size 0.5}
}


Size variation