- トップページ
- 書庫
- Context Free for beginners
- シェイプをいくつも描く

今度はプリミティブ・シェイプを並べてみましょう。 円、正方形、正三角形をShapesというルールにまとめて、startshapeで呼び出してみます。
startshape Shapes rule Shapes { CIRCLE {} SQUARE {} TRIANGLE {} }

全てのシェイプが同じ位置に書かれ、中央に突起の付いた正方形のような形になってしまいました。位置を変更する必要があります。
startshape Shapes rule Shapes { CIRCLE {} SQUARE {x 1} TRIANGLE {x 2} }

プリミティブ・シェイプ名称に続く中カッコの中に、そのシェイプの属性を記述できます。 上記の例では、正方形(SQUARE)を円からx軸方向に1つ分動かし、正三角形(TRIANGLE)を円からx軸方向に2つ分動かして描画しています。 中カッコ内のx 1がx軸方向に1つ分移動、x 2がx軸方向に2つ分移動をあらわします。
startshape Shapes rule Shapes { CIRCLE {} SQUARE {x -1.5 r 45} TRIANGLE {x 1 y 1} }

移動はy軸方向にも可能です。また、負の方向に動かしたり、回転させることもできます。 上記の例では、正方形(SQUARE)を円からx軸の逆方向に1.5個分動かして45度回転、正三角形(TRIANGLE)を円からx軸方向に1個分、y軸方向に1個分動かして描画しています。 中カッコ内のx -1.5がx軸逆方向に1.5個分移動、r 45が45度回転、y 1がy軸方向に1個分移動をあらわします。
できるようになった(はずの)こと- 複数のシェイプをまとめて描画できる
- シェイプの位置を変えて描画できる
- シェイプを回転させて描画できる