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

Lamp::Light Class Reference

ライト More...

#include <Light.h>

Inheritance diagram for Lamp::Light:

Lamp::SceneLeaf Lamp::SceneObject Lamp::GlobalLight Lamp::LocalLight Lamp::AmbientLight Lamp::DirectionalLight Lamp::PointLight List of all members.

Public Member Functions

virtual LightcopyLight () const=0
 コピー

virtual void setColor (const Color3f &color)=0
 ライト色の設定

virtual Color3f getColor () const=0
 ライト色の取得

virtual float getLuminance () const
 輝度の取得

virtual void setLightMask (u_int lightMask)
 ライトマスクの設定

virtual u_int getLightMask () const
 ライトマスクの取得

virtual bool isLight () const
 ライトかどうか

virtual bool isGlobalLight () const
 グローバルライトかどうか

virtual GlobalLightcastGlobalLight () const
 グローバルライトへのキャスト

virtual bool isLocalLight () const
 ローカルライトかどうか

virtual LocalLightcastLocalLight () const
 ローカルライトへのキャスト

virtual bool isAmbientLight () const
 アンビエントライトかどうか

virtual AmbientLightcastAmbientLight () const
 アンビエントライトへのキャスト

virtual bool isDirectionalLight () const
 ディレクショナルライトかどうか

virtual DirectionalLightcastDirectionalLight () const
 ディレクショナルライトへのキャスト

virtual bool isPointLight () const
 ポイントライトかどうか

virtual PointLightcastPointLight () const
 ポイントライトへのキャスト


Static Public Member Functions

int destroy (Light *light)
 破棄


Protected Member Functions

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

virtual ~Light ()
 デストラクタ

virtual void copyLightValue (Light *destination) const
 ライトの値コピー


Friends

class SceneObjectManagerTemplate< Light >
class LightManager

Detailed Description

ライト

Definition at line 42 of file Light.h.


Constructor & Destructor Documentation

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

コンストラクタ

Parameters:
name 名前
scene シーン

Definition at line 34 of file Light.cpp.


Member Function Documentation

virtual AmbientLight* Lamp::Light::castAmbientLight  )  const [inline, virtual]
 

アンビエントライトへのキャスト

Returns:
アンビエントライト。型が違えばNULLを返す。

Definition at line 145 of file Light.h.

References isAmbientLight(), and NULL.

Referenced by Lamp::Renderer::initializeDrawRequest(), Lamp::TextSceneSaver::writeLightList(), and Lamp::BinarySceneSaver::writeLightList().

virtual DirectionalLight* Lamp::Light::castDirectionalLight  )  const [inline, virtual]
 

ディレクショナルライトへのキャスト

Returns:
ディレクショナルライト。型が違えばNULLを返す。

Definition at line 161 of file Light.h.

References isDirectionalLight(), and NULL.

Referenced by Lamp::Renderer::initializeDrawRequest(), Lamp::TextSceneSaver::writeLightList(), and Lamp::BinarySceneSaver::writeLightList().

virtual GlobalLight* Lamp::Light::castGlobalLight  )  const [inline, virtual]
 

グローバルライトへのキャスト

Returns:
グローバルライト。型が違えばNULLを返す。

Definition at line 113 of file Light.h.

References isGlobalLight(), and NULL.

virtual LocalLight* Lamp::Light::castLocalLight  )  const [inline, virtual]
 

ローカルライトへのキャスト

Returns:
ローカルライト。型が違えばNULLを返す。

Definition at line 129 of file Light.h.

References isLocalLight(), and NULL.

virtual PointLight* Lamp::Light::castPointLight  )  const [inline, virtual]
 

ポイントライトへのキャスト

Returns:
ポイントライト。型が違えばNULLを返す。

Definition at line 177 of file Light.h.

References isPointLight(), and NULL.

Referenced by Lamp::Scene::getLocalLightList(), Lamp::FixedShader::setupFixedLight(), Lamp::DrawRequest::sortLocalLightsImprement(), Lamp::TextSceneSaver::writeLightList(), and Lamp::BinarySceneSaver::writeLightList().

virtual Light* Lamp::Light::copyLight  )  const [pure virtual]
 

コピー

Returns:
コピーされたライト

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

void Lamp::Light::copyLightValue Light destination  )  const [protected, virtual]
 

ライトの値コピー

Parameters:
destination コピー先ライト

Definition at line 43 of file Light.cpp.

References Lamp::SceneLeaf::copySceneLeafValue(), and setLightMask().

Referenced by Lamp::AmbientLight::copyAmbientLight(), Lamp::DirectionalLight::copyDirectionalLight(), and Lamp::PointLight::copyPointLight().

int Lamp::Light::destroy Light light  )  [static]
 

破棄

Parameters:
light 破棄するライト
Returns:
破棄したオブジェクト数

Definition at line 51 of file Light.cpp.

References Assert, Lamp::SceneObjectManagerTemplate< Light >::destroy(), Lamp::Scene::getLightManager(), Lamp::SceneObject::getScene(), and NULL.

virtual Color3f Lamp::Light::getColor  )  const [pure virtual]
 

ライト色の取得

Returns:
ライト色

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

Referenced by getLuminance().

virtual u_int Lamp::Light::getLightMask  )  const [inline, virtual]
 

ライトマスクの取得

Returns:
ライトマスク

Definition at line 91 of file Light.h.

References u_int.

Referenced by Lamp::DrawRequest::getAmbientColor(), Lamp::Scene::getLocalLightList(), Lamp::FixedShader::setupFixedLight(), Lamp::TextSceneSaver::writeLight(), and Lamp::BinarySceneSaver::writeLight().

virtual float Lamp::Light::getLuminance  )  const [inline, virtual]
 

輝度の取得

Returns:
輝度

Definition at line 78 of file Light.h.

References getColor(), and Lamp::Color3f::getLuminance().

virtual bool Lamp::Light::isAmbientLight  )  const [inline, virtual]
 

アンビエントライトかどうか

Returns:
アンビエントライトならtrue

Reimplemented in Lamp::AmbientLight.

Definition at line 139 of file Light.h.

Referenced by castAmbientLight(), Lamp::Renderer::initializeDrawRequest(), Lamp::TextSceneSaver::writeLightList(), and Lamp::BinarySceneSaver::writeLightList().

virtual bool Lamp::Light::isDirectionalLight  )  const [inline, virtual]
 

ディレクショナルライトかどうか

Returns:
ディレクショナルライトならtrue

Reimplemented in Lamp::DirectionalLight.

Definition at line 155 of file Light.h.

Referenced by castDirectionalLight(), Lamp::Renderer::initializeDrawRequest(), Lamp::TextSceneSaver::writeLightList(), and Lamp::BinarySceneSaver::writeLightList().

virtual bool Lamp::Light::isGlobalLight  )  const [inline, virtual]
 

グローバルライトかどうか

Returns:
グローバルライトならtrue

Reimplemented in Lamp::GlobalLight.

Definition at line 107 of file Light.h.

Referenced by castGlobalLight().

virtual bool Lamp::Light::isLight  )  const [inline, virtual]
 

ライトかどうか

Returns:
ライトならtrue

Reimplemented from Lamp::SceneObject.

Definition at line 100 of file Light.h.

virtual bool Lamp::Light::isLocalLight  )  const [inline, virtual]
 

ローカルライトかどうか

Returns:
ローカルライトならtrue

Reimplemented in Lamp::LocalLight.

Definition at line 123 of file Light.h.

Referenced by castLocalLight(), and Lamp::Scene::getLocalLightList().

virtual bool Lamp::Light::isPointLight  )  const [inline, virtual]
 

ポイントライトかどうか

Returns:
ポイントライトならtrue

Reimplemented in Lamp::PointLight.

Definition at line 171 of file Light.h.

Referenced by castPointLight(), Lamp::Scene::getLocalLightList(), Lamp::FixedShader::setupFixedLight(), Lamp::TextSceneSaver::writeLightList(), and Lamp::BinarySceneSaver::writeLightList().

virtual void Lamp::Light::setColor const Color3f color  )  [pure virtual]
 

ライト色の設定

Parameters:
color ライト色

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

virtual void Lamp::Light::setLightMask u_int  lightMask  )  [inline, virtual]
 

ライトマスクの設定

Parameters:
lightMask ライトマスク

Definition at line 85 of file Light.h.

Referenced by copyLightValue(), Lamp::TextSceneLoader::readLight(), and Lamp::BinarySceneLoader::readLight().


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