Main Page | Namespace List | Class Hierarchy | Alphabetical List | Compound List | File List | Namespace Members | Compound Members | File Members

Lamp::CollisionLeaf Class Reference

コリジョンリーフ More...

#include <CollisionLeaf.h>

Inheritance diagram for Lamp::CollisionLeaf:

Lamp::CollisionObject Lamp::DynamicCollisionLeaf Lamp::StaticCollisionLeaf Lamp::StaticDeformedMeshCollision Lamp::StaticSphereCollision List of all members.

Public Member Functions

virtual void intersection (IntersectionResult *result, const Sphere &sphere, u_int collisionMask=0xffffffff)
 球交差

virtual void intersection (IntersectionResult *result, StaticSphereCollision *sphere, u_int collisionMask=0xffffffff)
 球コリジョン交差

virtual void setCollisionMask (u_int collisionMask)
 コリジョンマスクの設定

virtual u_int getCollisionMask () const
 コリジョンマスクの取得

virtual void setScale (const Vector3 &scale)
 スケールの設定

virtual const Vector3getScale () const
 スケールの取得

virtual bool isScaled () const
 スケールを使用しているか

virtual bool isGlobalScaled () const
 グローバルでスケールを使用しているか

virtual void setRotationXYZ (const Vector3 &rotation)
 XYZ回転の設定.

virtual const Vector3getRotationXYZ ()
 XYZ回転の取得.

virtual void setRotationQuaternion (const Quaternion &rotation)
 四元数回転の設定

virtual const QuaterniongetRotationQuaternion ()
 四元数回転の取得

virtual void setTranslation (const Vector3 &translation)
 移動の設定

virtual const Vector3getTranslation () const
 移動の取得

const Matrix34getWorldMatrix () const
 ワールド行列の取得

const Matrix34getLocalMatrix () const
 ローカル行列の取得

virtual CollisionLeafcopyCollisionLeaf () const=0
 コリジョンリーフのコピー

virtual bool isCollisionLeaf () const
 コリジョンリーフかどうか


Static Public Member Functions

int destroy (CollisionLeaf *collisionLeaf)
 破棄


Protected Member Functions

 CollisionLeaf (const String &name, CollisionScene *scene)
 コンストラクタ

virtual ~CollisionLeaf ()
 デストラクタ

virtual void copyCollisionLeafValue (CollisionLeaf *destination) const
 コリジョンリーフの値コピー

virtual bool traverseSetup (bool parentEnabled, bool parentChanged)
 走査のセットアップ

virtual void setParent (CollisionNode *parent)
 親の設定

virtual void removeParent (CollisionNode *parent)
 親の削除


Friends

class CollisionScene

Detailed Description

コリジョンリーフ

Definition at line 38 of file CollisionLeaf.h.


Constructor & Destructor Documentation

Lamp::CollisionLeaf::CollisionLeaf const String name,
CollisionScene scene
[protected]
 

コンストラクタ

Parameters:
name 名前
scene シーン

Definition at line 34 of file CollisionLeaf.cpp.

References Lamp::CollisionObject::setGlobalEnabled().


Member Function Documentation

virtual CollisionLeaf* Lamp::CollisionLeaf::copyCollisionLeaf  )  const [pure virtual]
 

コリジョンリーフのコピー

Returns:
コピーされたコリジョンリーフ

Implemented in Lamp::StaticDeformedMeshCollision, and Lamp::StaticSphereCollision.

virtual void Lamp::CollisionLeaf::copyCollisionLeafValue CollisionLeaf destination  )  const [inline, protected, virtual]
 

コリジョンリーフの値コピー

Parameters:
destination コピー先コリジョンリーフ

Definition at line 220 of file CollisionLeaf.h.

References collisionMask_, and Lamp::CollisionObject::copyCollisionObjectValue().

Referenced by Lamp::DynamicCollisionLeaf::copyDynamicCollisionLeaf(), and Lamp::StaticCollisionLeaf::copyStaticCollisionLeafValue().

int Lamp::CollisionLeaf::destroy CollisionLeaf collisionLeaf  )  [static]
 

破棄

Parameters:
collisionLeaf 破棄するコリジョンリーフ
Returns:
破棄したオブジェクト数

Definition at line 44 of file CollisionLeaf.cpp.

References Assert, Lamp::CollisionScene::destroyLeaf(), Lamp::CollisionObject::getParent(), Lamp::CollisionObject::getScene(), NULL, and Lamp::CollisionNode::removeChild().

virtual u_int Lamp::CollisionLeaf::getCollisionMask  )  const [inline, virtual]
 

コリジョンマスクの取得

Returns:
コリジョンマスク

Definition at line 84 of file CollisionLeaf.h.

References u_int.

Referenced by Lamp::StaticSphereCollision::intersection(), Lamp::StaticDeformedMeshCollision::intersection(), and Lamp::TextCollisionSaver::writeCollisionLeaf().

const Matrix34 & Lamp::CollisionLeaf::getLocalMatrix  )  const
 

ローカル行列の取得

Returns:
親のローカル行列

Definition at line 150 of file CollisionLeaf.cpp.

References Assert, Lamp::CollisionNode::getLocalMatrix(), Lamp::CollisionObject::getParent(), and NULL.

const Quaternion & Lamp::CollisionLeaf::getRotationQuaternion  )  [virtual]
 

四元数回転の取得

Returns:
親の四元数回転

Definition at line 122 of file CollisionLeaf.cpp.

References Assert, Lamp::CollisionObject::getParent(), Lamp::CollisionNode::getRotationQuaternion(), and NULL.

const Vector3 & Lamp::CollisionLeaf::getRotationXYZ  )  [virtual]
 

XYZ回転の取得.

Returns:
親のXYZ回転

Definition at line 110 of file CollisionLeaf.cpp.

References Assert, Lamp::CollisionObject::getParent(), Lamp::CollisionNode::getRotationXYZ(), and NULL.

const Vector3 & Lamp::CollisionLeaf::getScale  )  const [virtual]
 

スケールの取得

Returns:
親のスケール

Definition at line 84 of file CollisionLeaf.cpp.

References Assert, Lamp::CollisionObject::getParent(), Lamp::CollisionNode::getScale(), and NULL.

const Vector3 & Lamp::CollisionLeaf::getTranslation  )  const [virtual]
 

移動の取得

Returns:
親の移動

Definition at line 136 of file CollisionLeaf.cpp.

References Assert, Lamp::CollisionObject::getParent(), Lamp::CollisionNode::getTranslation(), and NULL.

const Matrix34 & Lamp::CollisionLeaf::getWorldMatrix  )  const
 

ワールド行列の取得

Returns:
親のワールド行列

Definition at line 144 of file CollisionLeaf.cpp.

References Assert, Lamp::CollisionObject::getParent(), Lamp::CollisionNode::getWorldMatrix(), and NULL.

Referenced by Lamp::StaticDeformedMeshCollision::intersection().

virtual void Lamp::CollisionLeaf::intersection IntersectionResult result,
StaticSphereCollision sphere,
u_int  collisionMask = 0xffffffff
[inline, virtual]
 

球コリジョン交差

Parameters:
result 交差結果
sphere 球コリジョン
collisionMask コリジョンマスク

Reimplemented in Lamp::StaticDeformedMeshCollision, and Lamp::StaticSphereCollision.

Definition at line 59 of file CollisionLeaf.h.

References Assert.

virtual void Lamp::CollisionLeaf::intersection IntersectionResult result,
const Sphere sphere,
u_int  collisionMask = 0xffffffff
[inline, virtual]
 

球交差

Parameters:
result 交差結果
sphere 
collisionMask コリジョンマスク

Reimplemented in Lamp::StaticDeformedMeshCollision, and Lamp::StaticSphereCollision.

Definition at line 50 of file CollisionLeaf.h.

References Assert.

Referenced by Lamp::CollisionScene::intersection().

virtual bool Lamp::CollisionLeaf::isCollisionLeaf  )  const [inline, virtual]
 

コリジョンリーフかどうか

Returns:
コリジョンリーフならtrue

Reimplemented from Lamp::CollisionObject.

Definition at line 195 of file CollisionLeaf.h.

bool Lamp::CollisionLeaf::isGlobalScaled  )  const [virtual]
 

グローバルでスケールを使用しているか

Returns:
親がグローバルでスケールを使用しているならtrue

Definition at line 96 of file CollisionLeaf.cpp.

References Assert, Lamp::CollisionObject::getParent(), Lamp::CollisionNode::isGlobalScaled(), and NULL.

bool Lamp::CollisionLeaf::isScaled  )  const [virtual]
 

スケールを使用しているか

Returns:
親がスケールを使用しているならtrue

Definition at line 90 of file CollisionLeaf.cpp.

References Assert, Lamp::CollisionObject::getParent(), Lamp::CollisionNode::isScaled(), and NULL.

Referenced by Lamp::StaticDeformedMeshCollision::intersection().

virtual void Lamp::CollisionLeaf::removeParent CollisionNode parent  )  [inline, protected, virtual]
 

親の削除

Parameters:
parent 削除する親

Reimplemented from Lamp::CollisionObject.

Definition at line 254 of file CollisionLeaf.h.

References Lamp::CollisionObject::setGlobalEnabled().

virtual void Lamp::CollisionLeaf::setCollisionMask u_int  collisionMask  )  [inline, virtual]
 

コリジョンマスクの設定

Parameters:
collisionMask コリジョンマスク

Definition at line 76 of file CollisionLeaf.h.

Referenced by Lamp::TextCollisionLoader::readStaticDeformedMesh(), Lamp::TextCollisionLoader::readStaticSphere(), and Lamp::CollisionConverter::setCollisionLeafData().

virtual void Lamp::CollisionLeaf::setParent CollisionNode parent  )  [inline, protected, virtual]
 

親の設定

Parameters:
parent 設定する親

Reimplemented from Lamp::CollisionObject.

Definition at line 245 of file CollisionLeaf.h.

References Lamp::CollisionObject::setGlobalEnabled().

void Lamp::CollisionLeaf::setRotationQuaternion const Quaternion rotation  )  [virtual]
 

四元数回転の設定

Parameters:
rotation 親の四元数回転

Definition at line 116 of file CollisionLeaf.cpp.

References Assert, Lamp::CollisionObject::getParent(), NULL, and Lamp::CollisionNode::setRotationQuaternion().

void Lamp::CollisionLeaf::setRotationXYZ const Vector3 rotation  )  [virtual]
 

XYZ回転の設定.

Parameters:
rotation 親のXYZ回転

Definition at line 104 of file CollisionLeaf.cpp.

References Assert, Lamp::CollisionObject::getParent(), NULL, and Lamp::CollisionNode::setRotationXYZ().

void Lamp::CollisionLeaf::setScale const Vector3 scale  )  [virtual]
 

スケールの設定

Parameters:
scale 親のスケール

Definition at line 78 of file CollisionLeaf.cpp.

References Assert, Lamp::CollisionObject::getParent(), NULL, and Lamp::CollisionNode::setScale().

void Lamp::CollisionLeaf::setTranslation const Vector3 translation  )  [virtual]
 

移動の設定

Parameters:
translation 親の移動

Definition at line 130 of file CollisionLeaf.cpp.

References Assert, Lamp::CollisionObject::getParent(), NULL, and Lamp::CollisionNode::setTranslation().

bool Lamp::CollisionLeaf::traverseSetup bool  parentEnabled,
bool  parentChanged
[protected, virtual]
 

走査のセットアップ

Parameters:
parentEnabled 親が有効か
parentChanged 親に変更があったか
Returns:
処理の続行が必要であればtrue

Definition at line 57 of file CollisionLeaf.cpp.

References Lamp::CollisionObject::isChanged(), Lamp::CollisionObject::isEnabled(), Lamp::CollisionObject::setChanged(), Lamp::CollisionObject::setGlobalChanged(), and Lamp::CollisionObject::setGlobalEnabled().

Referenced by Lamp::StaticSphereCollision::traverseImplement(), and Lamp::StaticDeformedMeshCollision::traverseImplement().


The documentation for this class was generated from the following files:
Generated on Wed Mar 16 10:29:45 2005 for Lamp by doxygen 1.3.2