MkItYs

MkItYs > 音楽・漫画・VR・自律制御 > 

images

線画で描かれる物理演算モデルを動かす:OpenConstructor, SodaConstructor, Sodaplay

images

リンク機構のシンプルな物理演算モデル「OpenConstructor 」を、ウェブブラウザで動かします:

https://peterfidelman.github.io/constructor/

概要


この「OpenConstructor 」は、2000年にエド・バートンが作成した「SodaConstructor 」のクローンです:[※1]

https://en.wikipedia.org/wiki/Soda_Constructor

線画で描かれたリンク機構をたったひとつのサイン波で動かすという、とても単純な構造ですが、できあがるモデルは多彩です:


※1
なお次からも復元されたものが提供されています。ここではいくつかの作成済みのモデルを試すことができますが、自分で作ったモデルは保存できないようです:
http://maciejmatyka.blogspot.com/2018/02/soda-constructor-revisited.html

手順:モデルを作る


モデルの構造を編集〜実行するには、おもに次のメニューを使います(クリックでメニューがスイッチします):[※1]

construct …… 追加/修正:ノード群
delete ……. 削除:ノード群
simulate …… 実行

作ったモデルを保存するには、次のメニューを使います:

save …… 保存

保存すると、ウェブブラウザのURLの引数に、そのときの構造を記録した文字列が追加されます。このURLをそのままブラウザのアドレス欄に貼り付けることで、保存したときの状態で起動します。

なおこの文字列はBase64でエンコードされていて、デコードすれば、JSON形式になります。これをファイルに保存して編集し、再エンコードすることで、指定した数値や構造でモデルを作ることもできます:

$ cat ${encoded_structure}.txt | base64 -D > ${decoded_structure}.json # デコード
$ base64 ${decoded_structure}.json # エンコード

※1
詳しい説明は:
https://github.com/OpenConstructor/OpenConstructor
https://web.archive.org/web/20050304011150/http://www.sodaplay.com:80/constructor/how/build.htm

手順:手元で動かす


UIのデザインを変えたいなど、自分の環境で動かすには、次を実行します:

$ mkdir ${dir_project}
$ cd ${dir_project}
$ git clone --depth 1 https://github.com/OpenConstructor/OpenConstructor.git
$ cd ${dir_project}/OpenConstructor
$ open index.html

これで、ローカルのウェブブラウザで画面が開きます。