Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

Spr::CDCollisionEngine Class Reference

#include <CDCollisionEngine.h>

Inherits Spr::SGBehaviorEngine.

Collaboration diagram for Spr::CDCollisionEngine:

Collaboration graph
[legend]
List of all members.

Public Types

Public Member Functions

BehaviorEngineをオーバーライド
BehaviorEngineをオーバーライド
登録,追加系のメソッド

Static Public Attributes

Protected Types

Protected Member Functions

Protected Attributes

Classes


Detailed Description

衝突判定エンジン. 衝突しているペアを見つけ,衝突判定を行い,コールバックを呼び出す.

Definition at line 65 of file CDCollisionEngine.h.


Member Typedef Documentation

typedef std::vector< UTRef<CDFrame> > Spr::CDCollisionEngine::Frames [protected]
 

判定対象フレームのコンテナ型

Definition at line 89 of file CDCollisionEngine.h.

typedef CDFramePairWithRecords::iterator Spr::CDCollisionEngine::TFrameIt
 

フレーム対のためのイタレータ

Definition at line 102 of file CDCollisionEngine.h.


Member Function Documentation

void Spr::CDCollisionEngine::Render GRRender render,
SGScene scene
[protected, virtual]
 

フレームとフレーム番号の対応表

Reimplemented from Spr::SGBehaviorEngine.

int Spr::CDCollisionEngine::GetPriority  )  const [inline, virtual]
 

実行順序を決めるプライオリティ値.小さいほど早い

Reimplemented from Spr::SGBehaviorEngine.

Definition at line 141 of file CDCollisionEngine.h.

virtual void Spr::CDCollisionEngine::Step SGScene s  )  [virtual]
 

時間を dt 進める

Reimplemented from Spr::SGBehaviorEngine.

virtual void Spr::CDCollisionEngine::Clear SGScene s  )  [virtual]
 

判定対象のフレームをクリアする.

Reimplemented from Spr::SGEngine.

void Spr::CDCollisionEngine::Init  ) 
 

初期化(frames から pairsを作る)

CDCollisionListener* Spr::CDCollisionEngine::GetListener int  pos  )  [inline]
 

リスナを返す.

Definition at line 153 of file CDCollisionEngine.h.

References listeners.

size_t Spr::CDCollisionEngine::NListener  )  [inline]
 

リスナの数

Definition at line 155 of file CDCollisionEngine.h.

References listeners.

int Spr::CDCollisionEngine::GetFrameID SGFrame fr  )  [inline]
 

フレームの番号を返す.

Definition at line 158 of file CDCollisionEngine.h.

Referenced by AddActive(), AddInactive(), and GetFramePair().

CDFramePairWithRecord* Spr::CDCollisionEngine::GetFramePair int  f1,
int  f2
[inline]
 

フレーム対を返す.f1 < f2 でなければならない.

Definition at line 160 of file CDCollisionEngine.h.

References Spr::UTCombination< T >::item(), and pairs.

Referenced by GetFramePair().

CDFramePairWithRecord* Spr::CDCollisionEngine::GetFramePair SGFrame f1,
SGFrame f2
[inline]
 

フレーム対を返す.(f1,f2)と(f2,f1)どちらは向こう.

Definition at line 164 of file CDCollisionEngine.h.

References GetFrameID(), and GetFramePair().

SGFrame* Spr::CDCollisionEngine::GetFrame int  id  )  [inline]
 

フレームIDからフレームを返す.

Definition at line 166 of file CDCollisionEngine.h.

References frames.

CDUserRecord* Spr::CDCollisionEngine::GetFrameRecord int  id,
int  pos
[inline]
 

フレームIDとレコードの位置(ReserveFrameRecord()の返り値)からレコードを返す.

Definition at line 168 of file CDCollisionEngine.h.

References frames.

TFrameIt Spr::CDCollisionEngine::FramePairBegin  )  const [inline]
 

フレーム対のイタレータの始点

Definition at line 176 of file CDCollisionEngine.h.

References pairs.

Referenced by GeometryPairBegin(), and GeometryPairEnd().

TFrameIt Spr::CDCollisionEngine::FramePairEnd  )  const [inline]
 

フレーム対のイタレータの終点

Definition at line 178 of file CDCollisionEngine.h.

References pairs.

Referenced by GeometryPairBegin(), and GeometryPairEnd().

TGeometryIt Spr::CDCollisionEngine::GeometryPairBegin  )  const [inline]
 

ジオメトリ対のイタレータの始点

Definition at line 181 of file CDCollisionEngine.h.

References FramePairBegin(), and FramePairEnd().

Referenced by ConvexPairBegin(), and ConvexPairEnd().

TGeometryIt Spr::CDCollisionEngine::GeometryPairEnd  )  const [inline]
 

ジオメトリ対のイタレータの終点

Definition at line 187 of file CDCollisionEngine.h.

References FramePairBegin(), and FramePairEnd().

Referenced by ConvexPairBegin(), and ConvexPairEnd().

TConvexIt Spr::CDCollisionEngine::ConvexPairBegin  )  const [inline]
 

凸形状対のイタレータの始点

Definition at line 193 of file CDCollisionEngine.h.

References GeometryPairBegin(), and GeometryPairEnd().

TConvexIt Spr::CDCollisionEngine::ConvexPairEnd  )  const [inline]
 

凸形状対のイタレータの終点

Definition at line 199 of file CDCollisionEngine.h.

References GeometryPairBegin(), and GeometryPairEnd().

void Spr::CDCollisionEngine::AddFrame SGFrame frame,
CDUserRecord rec = NULL,
int  pos = -1
 

判定対象フレームを追加.すべての判定対象フレームは同階層になければならない.

size_t Spr::CDCollisionEngine::NFrame  )  [inline]
 

フレームの数

Definition at line 211 of file CDCollisionEngine.h.

References frames.

int Spr::CDCollisionEngine::AddListener CDCollisionListener l  ) 
 

リスナーの登録

bool Spr::CDCollisionEngine::AddInactive int  f1,
int  f2,
int  pos
 

衝突判定をしないペアを登録(デフォルトでは衝突判定する)

Referenced by AddInactive().

bool Spr::CDCollisionEngine::AddInactive SGFrame f1,
SGFrame f2,
int  pos
[inline]
 

衝突判定をしないペアを登録(デフォルトでは衝突判定する)

Definition at line 217 of file CDCollisionEngine.h.

References AddInactive(), and GetFrameID().

int Spr::CDCollisionEngine::ClearInactive int  pos  ) 
 

posのリスナについて判定しないように登録したペア(InactiveList)をクリアする

bool Spr::CDCollisionEngine::AddActive int  f1,
int  f2,
int  pos
 

衝突判定をするペアを登録(pos のリスナについては,デフォルトでは判定しなくなる.)

Referenced by AddActive().

bool Spr::CDCollisionEngine::AddActive SGFrame f1,
SGFrame f2,
int  pos
[inline]
 

衝突判定をするペアを登録(pos のリスナについては,デフォルトでは判定しなくなる.)

Definition at line 223 of file CDCollisionEngine.h.

References AddActive(), and GetFrameID().

int Spr::CDCollisionEngine::ClearActive int  pos  ) 
 

posのリスナについて判定するように登録したペア(activeList)をクリアする

int Spr::CDCollisionEngine::ReserveFrameRecord  ) 
 

フレーム(CDFrame) ごとのユーザレコード(records) の場所取り.

int Spr::CDCollisionEngine::ReserveFramePairRecord  ) 
 

フレームのペア(CDFramePairWithRecord) ごとのユーザレコード(records) の場所取り.

int Spr::CDCollisionEngine::ReserveConvexPairRecord  ) 
 

凸形状のペア(CDConvexPairWithRecord) ごとのユーザレコードの場所取り.

virtual void Spr::CDCollisionEngine::LoadState const SGBehaviorStates states  )  [virtual]
 

状態の読み出し

Reimplemented from Spr::SGBehaviorEngine.

virtual void Spr::CDCollisionEngine::SaveState SGBehaviorStates states  )  const [virtual]
 

状態の保存

Reimplemented from Spr::SGBehaviorEngine.


Member Data Documentation

TActivePairs Spr::CDCollisionEngine::activeList [protected]
 

衝突判定を行う(リスナを呼び出す)ペアのリスト(デフォルトでは行わない)

Definition at line 74 of file CDCollisionEngine.h.

TActivePairs Spr::CDCollisionEngine::inactiveList [protected]
 

衝突判定を行わない(リスナを呼びさない)ペアのリスト(デフォルトでは行う)

Definition at line 75 of file CDCollisionEngine.h.

std::vector<bool> Spr::CDCollisionEngine::defaults [protected]
 

デフォルトで衝突判定を行う(リスナを呼び出す)かどうかのフラグ

Definition at line 76 of file CDCollisionEngine.h.

CDFramePairWithRecords Spr::CDCollisionEngine::pairs [protected]
 

衝突判定の一覧.item(i,j) (i<j) でアクセスする.

Definition at line 79 of file CDCollisionEngine.h.

Referenced by FramePairBegin(), FramePairEnd(), and GetFramePair().

CDContactAnalysis Spr::CDCollisionEngine::analyzer [protected]
 

接触解析エンジン.交差部の面や頂点の情報を持っている.

Definition at line 81 of file CDCollisionEngine.h.

int Spr::CDCollisionEngine::nFrameRecords [protected]
 

フレームごとのユーザレコードの数

Definition at line 83 of file CDCollisionEngine.h.

int Spr::CDCollisionEngine::nFramePairRecords [protected]
 

フレームペアごとのユーザレコードの数

Definition at line 85 of file CDCollisionEngine.h.

int Spr::CDCollisionEngine::nConvexPairRecords [protected]
 

凸形状のペアごとのユーザレコードの数

Definition at line 87 of file CDCollisionEngine.h.

Frames Spr::CDCollisionEngine::frames [protected]
 

衝突判定対象のフレーム

Definition at line 91 of file CDCollisionEngine.h.

Referenced by GetFrame(), GetFrameRecord(), and NFrame().

CDCollisionListeners Spr::CDCollisionEngine::listeners [protected]
 

衝突のリスナ

Definition at line 93 of file CDCollisionEngine.h.

Referenced by GetListener(), and NListener().

UTTypeInfoImp< CDCollisionEngine > Spr::CDCollisionEngine::typeInfo [static]
 

クラス名の取得などの基本機能の実装

Reimplemented from Spr::SGBehaviorEngine.

Definition at line 134 of file CDCollisionEngine.h.


The documentation for this class was generated from the following file:
Generated on Sun Apr 16 02:08:25 2006 for Springhead by  doxygen 1.4.1