どんな機能?

シミュレーションに用いるモデルを、実際のロボットのCADデータなどから作成すると、形状データが詳細すぎて、シミュレーションの計算時間が過大になってしまいます。 そのような場合に、形状データを単純なバウンディングボックス(以下BBoxと記載)形状に置き換えることによって、シミュレーションの計算時間を高速化する機能です。 ユーザは、形状データが置き換えられるBBoxの最少個数をリンク毎に指定することができます。 ですから、あらかじめ接触することが分かっているリンクは、個数を多くして計算精度をあげ、そうでないリンクは少なくして計算速度を上げるということができます。

各リンクのBBox最少個数を指定する

まず、モデルをロードし、リンクを選択します(①)。
プロパティビューを表示させると、NumOfAABBに"original data"と表示されています。これは、形状データの変換がおこなわれていないことを示しています。
NumOfAABBにBBoxの最少個数を入力します(②)。入力値以上になるようにモデルローダがモデルの形状データを変換します。
入力できる値は、1から元の形状から作成するAxis Aligned Bounding Boxツリーによって決定される最大個数までです。値が変更できないときは、入力値が大きすぎています。
また、形状データのないリンクに入力しようとすると、"no shape Data"と表示され入力できません。
(プロパティビューで、"original data"と入力することはできません。形状データを元に戻したいときは、モデルをリロードしてください。)
他のリンクのNumOfAABBも同様に設定します。
3DビューのBBox表示ボタンをクリックします(③)。BBox形状が白線で表示されます。もう一度クリックすると、表示が消えます。

NumOfAABBの値が設定されていないリンクがある時に、BBox表示を行うと、次のようなメッセージが表示されます。

"OK"をクリックすれば、未設定のリンクを1に設定し、表示を行います。"キャンセル"をクリックすると表示は行いません。
"キャンセル"を選択しても、既に設定したNumOfAABBの値は、変更されません。
メッセージはロードされている全てのモデルに対して表示されます。BBox化の必要のないモデルは"キャンセル"を選択してください。

シミュレーションや、干渉チェックを実行する

通常の操作と同様に行います。干渉チェックに使用されるデータは、NumOfAABBで設定された値です。BBox表示が消えていてもNumOfAABBの値が設定されていれば形状データは変換されていますので注意してください。 また、一つのモデルの中にBBox化したリンクと、元の形状のままのリンクが混在することはできません。全てのリンクのNumOfAABBが"original data"のままか、全てに値が設定されている必要があります。 したがって、BBox化する場合は、一度BBox表示をONにして、全てのリンクに値が設定されるようにしてください。

設定を保存する

プロジェクトの保存を実行してください。プロジェクトファイルに保存されます。

同じモデルファイルからロードしたモデル

同じモデルファイルからロードした複数のモデルは、全て同じようにBBox化が行われます。例えば、PA10.main.wrlからRobotAとRobotBをロードしている場合、RobotAのリンクJ1のNumOfAABBの設定を変更すると、 RobotBのリンクJ1のNumOfAABBの設定も変更されます。
また、新たにPA10.main.wrlからRobotCをロードすると、既に読み込まれているRobotA(RobotB)の各リンクのNumOfAABB値と同じ値がRobotCに設定されます。 さらに、RobotA(RobotB,RobotC)のリロードを行うと、RobotB、RobotCのリロードも行われ、元の形状データに戻ります。
プロジェクトファイルから読み込んだ場合は、最後に記述されているモデルの設定が有効になります。