Top / 日記 / 20070529
/
20070529


20070529 3Dの親子関係

3Dモデル

3Dモデルは以下のような親子のツリー構造になっています。
パスファインダーはBody(本体部分=RCXと機構部),FrontWheel(前輪),RearWheel(後輪),LightSensor(光センサーと機構部)をそれぞれ独立したパーツとしました。
2Dのときは、とても簡単なモデルだったので、頂点座標を計測して、それらを結んで多角形をつくってパスファインダーの外形にしましたが、3Dでは構造がとても複雑なので、頂点単位よりもっと大きな単位(たとえばBodyだけでも数千のポリゴンがあります。)で扱っています。

3dmodel.png


↑FrontWheelはLightSensorの回転と連動しますので、LightSensorの子になっています。実は逆でもよかったんですが。


パーツごとの動作



親子関係をつけた状態でパーツごとに適当に動かしてみます。
ちゃんとそれぞれ連携して動きました。

revolve.gif

タイヤの回転


前輪と後輪を速度から計算して回転させています。
ここのロジックは単純で、

v=rω
v:速さ(mm)
r:タイヤの半径
ω:角速度(rad/s)

なので、

ω=v/r

より計算しています。

rev.gif


添付ファイル: filerev.gif 325件 [詳細] filerevolve.gif 302件 [詳細] file3dmodel.png 328件 [詳細]