ランタイム
IJoint.h
Go to the documentation of this file.
1 #pragma once
2 
5 
6 #include "Mix/Reference.h"
7 
8 namespace Mix{ namespace Dynamics{
9 
12  class IJoint : public Mix::Reference
13  {
14  public:
17  enum TYPE
18  {
19  POINT = 0,
20  HINGE = 1,
21  BALL = 2,
22  SLIDER = 3,
23  DOF = 4,
24  };
25 
26  public:
28  virtual ~IJoint( void ){}
29 
30  public:
33  virtual Mix::Dynamics::IJoint::TYPE GetType( void ) const = 0;
34 
37  virtual Boolean IsInWorld( void ) const = 0;
38 
41  virtual Boolean IsEnabled( void ) const = 0;
44  virtual void SetEnabled( Boolean state ) = 0;
45 
48  virtual Float32 GetBreakingImpulseThreshold( void ) const = 0;
52  virtual void SetBreakingImpulseThreshold( Float32 threshold ) = 0;
53 
57  virtual Boolean IsSingle( void ) const = 0;
58 
62  virtual void GetRigidBodyA( Mix::Dynamics::IRigidBody** ppRigidBody ) = 0;
66  virtual void GetRigidBodyB( Mix::Dynamics::IRigidBody** ppRigidBody ) = 0;
67 
70  virtual const Mix::Vector3& GetPivotA( void ) const = 0;
73  virtual void SetPivotA( const Mix::Vector3& pivot ) = 0;
74 
77  virtual const Mix::Vector3& GetPivotB( void ) const = 0;
80  virtual void SetPivotB( const Mix::Vector3& pivot ) = 0;
81 
82  public:
85  virtual UInt32 Debug_GetDrawFlags( void ) const = 0;
88  virtual void Debug_SetDrawFlags( UInt32 flags ) = 0;
89 
92  virtual Float32 Debug_GetDrawFrameMinSize( void ) const = 0;
95  virtual void Debug_SetDrawFrameMinSize( Float32 minSize ) = 0;
96 
99  virtual Float32 Debug_GetDrawLimitScaling( void ) const = 0;
102  virtual void Debug_SetDrawLimitScaling( Float32 scaling ) = 0;
103 
107  virtual void Debug_Draw( Mix::Graphics::Utility::IPerspectiveRenderer* pPerspectiveRenderer, Float32 opacity = 1.0f ) = 0;
108  };
109 
110 }}
スライダー
Definition: IJoint.h:22
3次元浮動小数点ベクトルクラス
Definition: Vector3.h:12
virtual Float32 Debug_GetDrawLimitScaling(void) const =0
デバッグ : リミットを描画する際のを取得します
virtual const Mix::Vector3 & GetPivotB(void) const =0
リジッドボディBのピボットを取得します
ヒンジ
Definition: IJoint.h:20
ボール
Definition: IJoint.h:21
virtual ~IJoint(void)
デストラクタ
Definition: IJoint.h:28
virtual void SetBreakingImpulseThreshold(Float32 threshold)=0
接続を解除する力を設定します
ポイント
Definition: IJoint.h:19
ジョイントインターフェース
Definition: IJoint.h:12
virtual Float32 Debug_GetDrawFrameMinSize(void) const =0
デバッグ : フレームを描画する際の最小サイズを取得します
virtual UInt32 Debug_GetDrawFlags(void) const =0
デバッグ : 描画フラグを取得します
unsigned int UInt32
符号無し32ビット整数
Definition: Common.h:68
virtual void Debug_SetDrawLimitScaling(Float32 scaling)=0
デバッグ : リミットを描画する際のスケールを設定します
パースペクティブレンダラーインターフェース
Definition: IPerspectiveRenderer.h:16
virtual void GetRigidBodyB(Mix::Dynamics::IRigidBody **ppRigidBody)=0
リジッドボディBを取得します
virtual void SetEnabled(Boolean state)=0
接続を有効にするかどうかを設定します
virtual Boolean IsInWorld(void) const =0
ワールドに配置されているかどうかを確認します
virtual Boolean IsSingle(void) const =0
シングルかどうかを取得します
ミックス
Definition: AtomicValue.h:6
virtual void Debug_SetDrawFlags(UInt32 flags)=0
デバッグ : 描画フラグを設定します
virtual void Debug_SetDrawFrameMinSize(Float32 minSize)=0
デバッグ : フレームを描画する際の最小サイズを設定します
virtual Float32 GetBreakingImpulseThreshold(void) const =0
接続が解除される力を取得します
TYPE
タイプ列挙定数
Definition: IJoint.h:17
virtual void Debug_Draw(Mix::Graphics::Utility::IPerspectiveRenderer *pPerspectiveRenderer, Float32 opacity=1.0f)=0
デバッグ描画をします
リジッドボディインターフェース
Definition: IRigidBody.h:46
virtual void SetPivotA(const Mix::Vector3 &pivot)=0
リジッドボディAのピボットを設定します
virtual void GetRigidBodyA(Mix::Dynamics::IRigidBody **ppRigidBody)=0
リジッドボディAを取得します
float Float32
32ビット浮動小数点
Definition: Common.h:83
リファレンスクラス
Definition: Reference.h:12
DOF.
Definition: IJoint.h:23
リファレンスクラスインクルードファイル
virtual Boolean IsEnabled(void) const =0
接続が有効かどうかを確認します
virtual void SetPivotB(const Mix::Vector3 &pivot)=0
リジッドボディBのピボットを設定します
BOOL Boolean
32ビットブーリアン
Definition: Common.h:102
virtual const Mix::Vector3 & GetPivotA(void) const =0
リジッドボディAのピボットを取得します
virtual Mix::Dynamics::IJoint::TYPE GetType(void) const =0
種類を取得します