Algodoo 初心者入門スクリプト

Algodoo物理エンジン

物理シュミレーションで有名なのは、Blender・Unityですが機能が豊富で使い方難しいです。子供でも簡単に使えるAlgodooを勉強中です。

本家英語サイト:ipadでも使えるようです。

使い方は簡単です

いたずらしてれば、わかります。

複雑なものスクリプトが必要です

丸と3角のピラミッドをつくるサンプルコード

for(30, (m) => { for(30-m, (n) =>{ scene.addCircle({ pos = [ n*2+m , m*2 ]; radius = 1.0 }) })});
for(30, (m) => { for(30-m+1, (n) =>{ scene.addPolygon({ pos = [ n*2+m+70 , m*1.0 ];surfaces := [[[-1,-1], [1,-1], [0,0]]];}) })})
サンプル・スクリプト

for(30, (m) => { } 30回繰り返す、Algodoo独自の仕様です。

Boxを挿入するスクリプト

1個 = Scene.addBox({pos:=[0,1];size:=[2,1]})
Box1個
for(30, (m) => { for(30, (n) =>{ scene.addBox({ pos := [ m, 0.7*n ]; size := [1.5,0.6 ]})})});

四角形の壁:

4角の壁

星型・多角形・渦・歯車を描く

Inkscapeを利用し、コピー&ペースト

Algodoo 背景を変え、動かす

背景のpostStepスクリプトに:

pos = pos + [X_POSITION_TO_MOVE_PER_SECOND, _POSITION_TO_MOVE_PER_SECOND] * e.dt

pos = pos + [30, 0] * e.dt

addPolygon ポリゴン追加

Scene.addPolygon({surfaces := [[[0, 0], [0, 1], [1, 0], [1, 1]]];});

形の名前わかりません

Scene.addPolygon({surfaces := [[[0, 0], [1, 0], [0, 1], [1, 1]]];});
ばってん型02

図形の組み合わせ (CSG)

切断

重なった図形(重なった部分)で切断します

差集合

重なった部分を消します、下の図形を加工。上にある図形はそのままなのでDELキーで削除します。

コメント