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

Lamp::SceneLeaf Class Reference

シーンリーフ More...

#include <SceneLeaf.h>

Inheritance diagram for Lamp::SceneLeaf:

Lamp::SceneObject Lamp::Light Lamp::Model Lamp::GlobalLight Lamp::LocalLight Lamp::CharacterModel Lamp::StandardModel Lamp::AmbientLight Lamp::DirectionalLight Lamp::PointLight List of all members.

Public Member Functions

virtual SceneNodegetParent () const
 親の取得

virtual int getReferenceCount () const
 リファレンスカウントの取得

virtual SceneLeafcopy (u_int copyMask=0) const=0
 コピー

virtual void setEnabled (bool enabled)
 有効、無効の設定

virtual bool isEnabled () const
 有効、無効の取得

virtual bool isGlobalEnabled () const
 グローバルでの有効、無効の取得

virtual bool isSceneLeaf () const
 シーンリーフかどうか


Static Public Member Functions

int recursiveDestroy (SceneLeaf *leaf)
 再帰的破棄


Protected Member Functions

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

virtual ~SceneLeaf ()
 デストラクタ

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

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

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

virtual void copySceneLeafValue (SceneLeaf *destination) const
 シーンリーフの値コピー


Friends

class SceneNode
class LODSceneNode

Detailed Description

シーンリーフ

Definition at line 36 of file SceneLeaf.h.


Constructor & Destructor Documentation

Lamp::SceneLeaf::SceneLeaf const String name,
Scene scene
[protected]
 

コンストラクタ

Parameters:
name 名前
scene シーン

Definition at line 35 of file SceneLeaf.cpp.

References NULL.


Member Function Documentation

virtual SceneLeaf* Lamp::SceneLeaf::copy u_int  copyMask = 0  )  const [pure virtual]
 

コピー

Parameters:
copyMask コピーマスク
Returns:
コピーされたシーンリーフ

Implemented in Lamp::AmbientLight, Lamp::DirectionalLight, Lamp::PointLight, Lamp::CharacterModel, and Lamp::StandardModel.

Referenced by Lamp::Model::copyModelValue().

void Lamp::SceneLeaf::copySceneLeafValue SceneLeaf destination  )  const [protected, virtual]
 

シーンリーフの値コピー

Parameters:
destination コピー先シーンリーフ

Definition at line 45 of file SceneLeaf.cpp.

References setEnabled().

Referenced by Lamp::Light::copyLightValue(), and Lamp::Model::copyModelValue().

virtual SceneNode* Lamp::SceneLeaf::getParent  )  const [inline, virtual]
 

親の取得

Returns:

Definition at line 45 of file SceneLeaf.h.

Referenced by Lamp::DirectionalLight::getWorldDirection(), Lamp::PointLight::getWorldPosition(), recursiveDestroy(), and Lamp::InformationRenderer::setupBone().

virtual int Lamp::SceneLeaf::getReferenceCount  )  const [inline, virtual]
 

リファレンスカウントの取得

Returns:
リファレンスカウント

Implements Lamp::SceneObject.

Definition at line 51 of file SceneLeaf.h.

References NULL.

Referenced by Lamp::SceneLogicCheckFilter::filterModel().

virtual bool Lamp::SceneLeaf::isEnabled  )  const [inline, virtual]
 

有効、無効の取得

Returns:
trueなら有効、falseなら無効

Definition at line 84 of file SceneLeaf.h.

Referenced by traverse(), Lamp::TextSceneSaver::writeCharacterModel(), Lamp::BinarySceneSaver::writeCharacterModel(), Lamp::TextSceneSaver::writeLight(), Lamp::BinarySceneSaver::writeLight(), Lamp::TextSceneSaver::writeStandardModel(), and Lamp::BinarySceneSaver::writeStandardModel().

virtual bool Lamp::SceneLeaf::isGlobalEnabled  )  const [inline, virtual]
 

グローバルでの有効、無効の取得

Returns:
trueなら有効、falseなら無効

Definition at line 90 of file SceneLeaf.h.

Referenced by Lamp::CharacterModelAnimation::animate(), Lamp::Scene::getLocalLightList(), Lamp::Renderer::initializeDrawRequest(), and Lamp::Model::traverse().

virtual bool Lamp::SceneLeaf::isSceneLeaf  )  const [inline, virtual]
 

シーンリーフかどうか

Returns:
シーンリーフならtrue

Reimplemented from Lamp::SceneObject.

Definition at line 99 of file SceneLeaf.h.

int Lamp::SceneLeaf::recursiveDestroy SceneLeaf leaf  )  [static]
 

再帰的破棄

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

Definition at line 51 of file SceneLeaf.cpp.

References Assert, Lamp::SceneObject::castLight(), Lamp::SceneObject::castModel(), ErrorOut, getParent(), Lamp::SceneObject::isLight(), Lamp::SceneObject::isModel(), NULL, and Lamp::SceneNode::removeSceneLeaf().

virtual void Lamp::SceneLeaf::removeParent SceneNode parent  )  [inline, protected, virtual]
 

親の削除

Parameters:
parent 削除する親

Definition at line 142 of file SceneLeaf.h.

References Assert, and NULL.

Referenced by Lamp::SceneNode::removeSceneLeaf().

virtual void Lamp::SceneLeaf::setEnabled bool  enabled  )  [inline, virtual]
 

有効、無効の設定

Parameters:
enabled trueなら有効、falseなら無効

Definition at line 78 of file SceneLeaf.h.

Referenced by copySceneLeafValue(), Lamp::TextSceneLoader::readCharacterModel(), Lamp::BinarySceneLoader::readCharacterModel(), Lamp::TextSceneLoader::readLight(), Lamp::BinarySceneLoader::readLight(), Lamp::TextSceneLoader::readStandardModel(), and Lamp::BinarySceneLoader::readStandardModel().

virtual void Lamp::SceneLeaf::setParent SceneNode parent  )  [inline, protected, virtual]
 

親の設定

Parameters:
parent 設定する親

Definition at line 131 of file SceneLeaf.h.

References Assert, and NULL.

Referenced by Lamp::SceneNode::addSceneLeaf().

void Lamp::SceneLeaf::traverse const Matrix34 parentMatrix,
bool  parentEnabled,
bool  parentScaled,
bool  parentChanged
[protected, virtual]
 

走査

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

Reimplemented in Lamp::DirectionalLight, Lamp::PointLight, and Lamp::Model.

Definition at line 70 of file SceneLeaf.cpp.

References isEnabled().

Referenced by Lamp::SceneNode::traverse(), and Lamp::LODSceneNode::traverse().


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