!SVGとJavaScript

- Translate, Rotate, Scaleはうまく階層であつかえそう

>> code javascript
 new Translate(100,100,[
   new Rotate(10,[
     new Rect(100,100)
   ])
 ]);
<<

- 栓の太さや色はContextみたいなもので渡す必要がありそう

>> code javascript
 new Stroke("red", [
   new Translate(100,100,[
     new Rotate(10,[
       new Rect(100,100)
     ])
   ])
 ])
<<

内側から解決していくのでこれだとRender時にContextを作っていくことになりそう。
できるかな

できた。Render時にContextをひきまわすことで実現できた

この方式なら魔法陣言語と相性がよさそう。
変数tを使っていろいろやるのはSVGアニメーションと相性が悪そうなので、互換性は一旦捨てる方向で考える。

あと作りたい機能
- Fill
- LineWidth
- Text
- Font

今のMCLは実行するとCanvas用の中間言語を吐き出すようになっている
SVGだとどうするのが良いかな。

上記ソースコードみたいなものが最終的にはほしいのだがどういう構造にしておくと良いかな
>>
ss("red")
 shift(100,100)
  rotate(10)
    rect(100,100)
<<
魔法陣言語だとこう書くはず
もっとストレートにJSに変換できそう。そうすると途中に数式などを入れられなくなる。
ループなどを作るときに数式は必須だと思うのでMCLは引き続き必要か

5643382
wiki
1456413602