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

Lamp::StaticDeformedMeshCollision Class Reference

静的変形メッシュコリジョン More...

#include <StaticDeformedMeshCollision.h>

Inheritance diagram for Lamp::StaticDeformedMeshCollision:

Lamp::StaticCollisionLeaf Lamp::CollisionLeaf Lamp::CollisionObject 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 const DeformedMeshGeometry & getMesh () const
 メッシュの取得

virtual const DeformedMeshGeometry & getWorldMesh ()
 ワールドメッシュの取得

virtual void setTriangleCount (int triangleCount)
 トライアングル数の設定

virtual int getTriangleCount () const
 トライアングル数の取得

virtual void setTriangle (int index, const Triangle &triangle)
 トライアングルの設定

virtual const Triangle & getTriangle (int index) const
 トライアングルの取得

virtual void calculateBounding ()
 バウンディングの算出

virtual void setBoundingBox (const AxisAlignedBox &boundingBox)
 バウンディングボックスの設定

virtual const AxisAlignedBox & getBoundingBox () const
 バウンディングボックスの取得

virtual void setBoundingSphere (const Sphere &boundingSphere)
 バウンディングスフィアの設定

virtual const Sphere & getBoundingSphere () const
 バウンディングスフィアの取得

virtual CollisionObject * copy () const
 コピー

virtual CollisionLeaf * copyCollisionLeaf () const
 コリジョンリーフのコピー

virtual StaticCollisionLeaf * copyStaticCollisionLeaf () const
 静的コリジョンリーフのコピー

virtual StaticDeformedMeshCollision * copyStaticDeformedMeshCollision () const
 静的変形メッシュコリジョンのコピー

virtual bool isStaticDeformedMeshCollision () const
 静的変形メッシュコリジョンかどうか


Protected Member Functions

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

virtual ~StaticDeformedMeshCollision ()
 デストラクタ

virtual void traverseImplement (const Matrix34 &parentMatrix, bool parentEnabled, bool parentScaled, bool parentChanged)
 走査


Friends

class CollisionScene

Detailed Description

静的変形メッシュコリジョン

Definition at line 37 of file StaticDeformedMeshCollision.h.


Constructor & Destructor Documentation

Lamp::StaticDeformedMeshCollision::StaticDeformedMeshCollision (  const String &  name,
CollisionScene *  scene
)  [protected]
 

コンストラクタ

Parameters:
name 名前
scene シーン

Definition at line 37 of file StaticDeformedMeshCollision.cpp.


Member Function Documentation

virtual CollisionObject* Lamp::StaticDeformedMeshCollision::copy (   )  const [inline, virtual]
 

コピー

Returns:
コピーされたコリジョンオブジェクト

Implements Lamp::CollisionObject.

Definition at line 171 of file StaticDeformedMeshCollision.h.

References copyStaticDeformedMeshCollision().

virtual CollisionLeaf* Lamp::StaticDeformedMeshCollision::copyCollisionLeaf (   )  const [inline, virtual]
 

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

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

Implements Lamp::CollisionLeaf.

Definition at line 179 of file StaticDeformedMeshCollision.h.

References copyStaticDeformedMeshCollision().

virtual StaticCollisionLeaf* Lamp::StaticDeformedMeshCollision::copyStaticCollisionLeaf (   )  const [inline, virtual]
 

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

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

Implements Lamp::StaticCollisionLeaf.

Definition at line 187 of file StaticDeformedMeshCollision.h.

References copyStaticDeformedMeshCollision().

StaticDeformedMeshCollision * Lamp::StaticDeformedMeshCollision::copyStaticDeformedMeshCollision (   )  const [virtual]
 

静的変形メッシュコリジョンのコピー

Returns:
コピーされた静的変形メッシュコリジョン

Definition at line 50 of file StaticDeformedMeshCollision.cpp.

References Assert, Lamp::StaticCollisionLeaf::copyStaticCollisionLeafValue(), Lamp::CollisionScene::createStaticDeformedMeshCollision(), Lamp::CollisionObject::getName(), Lamp::CollisionObject::getScene(), mesh_, worldMesh_, and worldMeshChanged_.

Referenced by copy(), copyCollisionLeaf(), and copyStaticCollisionLeaf().

virtual const AxisAlignedBox& Lamp::StaticDeformedMeshCollision::getBoundingBox (   )  const [inline, virtual]
 

バウンディングボックスの取得

Returns:
バウンディングボックス

Definition at line 142 of file StaticDeformedMeshCollision.h.

References Lamp::DeformedMeshGeometry::getBoundingBox().

Referenced by Lamp::TextCollisionSaver::writeStaticDeformedMeshCollision().

virtual const Sphere& Lamp::StaticDeformedMeshCollision::getBoundingSphere (   )  const [inline, virtual]
 

バウンディングスフィアの取得

Returns:
バウンディングスフィア

Definition at line 160 of file StaticDeformedMeshCollision.h.

References Lamp::DeformedMeshGeometry::getBoundingSphere().

Referenced by Lamp::TextCollisionSaver::writeStaticDeformedMeshCollision().

virtual const DeformedMeshGeometry& Lamp::StaticDeformedMeshCollision::getMesh (   )  const [inline, virtual]
 

メッシュの取得

Returns:
ローカル座標のメッシュ

Definition at line 68 of file StaticDeformedMeshCollision.h.

Referenced by intersection().

virtual const Triangle& Lamp::StaticDeformedMeshCollision::getTriangle (  int  index  )  const [inline, virtual]
 

トライアングルの取得

Parameters:
index インデックス
Returns:
トライアングル

Definition at line 113 of file StaticDeformedMeshCollision.h.

References Lamp::DeformedMeshGeometry::getTriangle().

Referenced by Lamp::TextCollisionSaver::writeStaticDeformedMeshCollision().

virtual int Lamp::StaticDeformedMeshCollision::getTriangleCount (   )  const [inline, virtual]
 

トライアングル数の取得

Returns:
トライアングル数

Definition at line 95 of file StaticDeformedMeshCollision.h.

References Lamp::DeformedMeshGeometry::getTriangleCount().

Referenced by Lamp::TextCollisionSaver::writeStaticDeformedMeshCollision().

const DeformedMeshGeometry & Lamp::StaticDeformedMeshCollision::getWorldMesh (   )  [virtual]
 

ワールドメッシュの取得

ワールドメッシュの取得を行った時点でメッシュがワールド座標に変換される

Returns:
ワールド座標のメッシュ

Definition at line 134 of file StaticDeformedMeshCollision.cpp.

References Assert, Lamp::CollisionObject::getParent(), Lamp::DeformedMeshGeometry::getTriangle(), Lamp::DeformedMeshGeometry::getTriangleCount(), Lamp::CollisionNode::getWorldMatrix(), Lamp::CollisionObject::isGlobalEnabled(), NULL, Lamp::DeformedMeshGeometry::setTriangle(), and Lamp::Triangle::transform().

Referenced by intersection(), and Lamp::CollisionRenderer::setupStaticDeformedMeshCollision().

void Lamp::StaticDeformedMeshCollision::intersection (  IntersectionResult *  result,
StaticSphereCollision *  sphere,
u_int  collisionMask = 0xffffffff
)  [virtual]
 

球コリジョン交差

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

Reimplemented from Lamp::CollisionLeaf.

Definition at line 79 of file StaticDeformedMeshCollision.cpp.

References Lamp::CollisionLeaf::getCollisionMask(), getMesh(), Lamp::CollisionLeaf::getWorldMatrix(), getWorldMesh(), Lamp::StaticSphereCollision::getWorldSphere(), Lamp::DeformedMeshGeometry::intersectBounding(), Lamp::DeformedMeshGeometry::intersectMesh(), Lamp::Matrix34::invertTransformation(), Lamp::CollisionObject::isGlobalEnabled(), Lamp::CollisionLeaf::isScaled(), and Lamp::Sphere::transform().

void Lamp::StaticDeformedMeshCollision::intersection (  IntersectionResult *  result,
const Sphere &  sphere,
u_int  collisionMask = 0xffffffff
)  [virtual]
 

球交差

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

Reimplemented from Lamp::CollisionLeaf.

Definition at line 66 of file StaticDeformedMeshCollision.cpp.

References Lamp::CollisionLeaf::getCollisionMask(), getWorldMesh(), Lamp::DeformedMeshGeometry::intersectBounding(), Lamp::DeformedMeshGeometry::intersectMesh(), and Lamp::CollisionObject::isGlobalEnabled().

virtual bool Lamp::StaticDeformedMeshCollision::isStaticDeformedMeshCollision (   )  const [inline, virtual]
 

静的変形メッシュコリジョンかどうか

Returns:
静的変形メッシュコリジョンならtrue

Reimplemented from Lamp::CollisionObject.

Definition at line 205 of file StaticDeformedMeshCollision.h.

virtual void Lamp::StaticDeformedMeshCollision::setBoundingBox (  const AxisAlignedBox &  boundingBox  )  [inline, virtual]
 

バウンディングボックスの設定

Parameters:
boundingBox バウンディングボックス

Definition at line 133 of file StaticDeformedMeshCollision.h.

References Lamp::DeformedMeshGeometry::setBoundingBox(), and Lamp::CollisionObject::setChanged().

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

virtual void Lamp::StaticDeformedMeshCollision::setBoundingSphere (  const Sphere &  boundingSphere  )  [inline, virtual]
 

バウンディングスフィアの設定

Parameters:
boundingSphere バウンディングスフィア

Definition at line 151 of file StaticDeformedMeshCollision.h.

References Lamp::DeformedMeshGeometry::setBoundingSphere(), and Lamp::CollisionObject::setChanged().

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

virtual void Lamp::StaticDeformedMeshCollision::setTriangle (  int  index,
const Triangle &  triangle
)  [inline, virtual]
 

トライアングルの設定

Parameters:
index インデックス
triangle トライアングル

Definition at line 103 of file StaticDeformedMeshCollision.h.

References Lamp::CollisionObject::setChanged(), and Lamp::DeformedMeshGeometry::setTriangle().

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

virtual void Lamp::StaticDeformedMeshCollision::setTriangleCount (  int  triangleCount  )  [inline, virtual]
 

トライアングル数の設定

Parameters:
triangleCount トライアングル数

Definition at line 85 of file StaticDeformedMeshCollision.h.

References Lamp::CollisionObject::setChanged(), and Lamp::DeformedMeshGeometry::setTriangleCount().

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

void Lamp::StaticDeformedMeshCollision::traverseImplement (  const Matrix34 &  parentMatrix,
bool  parentEnabled,
bool  parentScaled,
bool  parentChanged
)  [protected, virtual]
 

走査

Parameters:
parentMatrix 親行列
parentEnabled 親が有効か
parentScaled 親がスケールを使用しているか
parentChanged 親に変更があったか

Implements Lamp::CollisionObject.

Definition at line 104 of file StaticDeformedMeshCollision.cpp.

References Lamp::DeformedMeshGeometry::getBoundingBox(), Lamp::DeformedMeshGeometry::getBoundingSphere(), Lamp::Sphere::scaledTransform(), Lamp::DeformedMeshGeometry::setBoundingBox(), Lamp::DeformedMeshGeometry::setBoundingSphere(), Lamp::Sphere::transform(), Lamp::AxisAlignedBox::transform(), and Lamp::CollisionLeaf::traverseSetup().


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