ODEという物理シミュレーションライブラリをRubyから使おうとしているのですが、行き詰まりました。
詳細はここ
http://d.hatena.ne.jp/urekat/20070618
に書いたのですが、
C++のAPIをつなぐ部分にSWIGを、
コールバックで受ける部分にRuby/DLを使っています。
下記の2点を教えてください。
・Ruby/DLでの配列を値渡しする関数の呼び出し方(dsSetViewpoint)
DS_API void dsSetViewpoint (float xyz[3], float hpr[3]);
・配列のポインタを返す関数(getRotation)をRubyの変数の配列に変換する方法
ODE_API const dReal * dBodyGetRotation (dBodyID);
dReal[12]の配列へのポインタだとおもいます。
SWIGもRuby/DLも初めてつかうのでおかしなところがあると思いますが、よろしくお願いします。
コメント(1件)
値渡しじゃないですね。
floatのポインタを渡してるだけっすね??