ジョイント
ボディとボディの間に対して動きの制約を与えます。
それは、距離とか角度とか。
それは、距離とか角度とか。
ジョイント生成の流れ
- ジョイント生成(dJointCreate*)
- ジョイント接続(dJoointAttach)
- パラメータ設定(dJointSet*)
- シミュレーション実行:繰り返し
- 必要に応じてパラメータ取得(dJointGet*)
- ジョイント破棄(dJointDestroy)
ジョイントの種類
ボールとソケット
ジョイント部のアンカー(固定点)の位置情報を持ちます。
アンカーの位置をボディ1と同じにすると、ちょうど地球と月(衛星)の関係が作れると思います。(見た目がですけど)
アンカーの位置をボディ1と同じにすると、ちょうど地球と月(衛星)の関係が作れると思います。(見た目がですけど)
- 生成
dJointID dJointCreateBall (dWorldID, dJointGroupID);
- パラメータ設定
void dJointSetBallAnchor (dJointID, dReal x, dReal y, dReal z);
- パラメータ取得
void dJointGetBallAnchor (dJointID, dVector3 result); void dJointGetBallAnchor2 (dJointID, dVector3 result);
ヒンジ(蝶番状)
扉の蝶番、自動車の車輪の軸。
- 生成
dJointID dJointCreateHinge (dWorldID, dJointGroupID);
スライダー
- 生成
dJointID dJointCreateSlider (dWorldID, dJointGroupID);
ユニバーサル
- 生成
dJointID dJointCreateUniversal (dWorldID, dJointGroupID);
ヒンジー2
- 生成
dJointID dJointCreateHinge2 (dWorldID, dJointGroupID);
Prismatic and Rotoide(PR)
機関車の車輪やエンジンのピストンを創造できます。
- 生成
dJointID dJointCreatePR (dWorldID, dJointGroupID);
Prismatic - Universal
- 生成
dJointID dJointCreatePU (dWorldID, dJointGroupID);
ピストン
- 生成
dJointID dJointCreatePiston (dWorldID, dJointGroupID);
固定(Fixed)
- 生成
dJointID dJointCreateFixed (dWorldID, dJointGroupID);
接触(Contact)
- 生成
dJointID dJointCreateContact (dWorldID, dJointGroupID, const dContact *);
角度モータ(Angular Motor)
- 生成
dJointID dJointCreateAMotor (dWorldID, dJointGroupID);
リニアモータ(Linear Motor)
- 生成
dJointID dJointCreateLMotor (dWorldID, dJointGroupID);
Plane 2D
- 生成
dJointID dJointCreatePlane2d (dWorldID, dJointGroupID);