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

Lamp::VectorInterpolator Class Reference

ベクトル補間 More...

#include <VectorInterpolator.h>

Inheritance diagram for Lamp::VectorInterpolator:

Lamp::VectorArrayInterpolator Lamp::VectorConstantInterpolator Lamp::VectorLinearInterpolator List of all members.

Public Member Functions

virtual ~VectorInterpolator ()
 デストラクタ

virtual VectorInterpolatorduplicate () const=0
 複製

virtual bool equals (const VectorInterpolator &target) const=0
 同じ値かどうか

virtual float getLength () const=0
 長さの取得

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

virtual Vector3 interpolate (float time)=0
 補間

virtual bool isVectorConstantInterpolator () const
 ベクトル定数補間かどうか

virtual VectorConstantInterpolatorcastVectorConstantInterpolator () const
 ベクトル定数補間へのキャスト

virtual bool isVectorArrayInterpolator () const
 ベクトル配列補間かどうか

virtual VectorArrayInterpolatorcastVectorArrayInterpolator () const
 ベクトル配列補間へのキャスト

virtual bool isVectorLinearInterpolator () const
 ベクトル線形補間かどうか

virtual VectorLinearInterpolatorcastVectorLinearInterpolator () const
 ベクトル線形補間へのキャスト


Detailed Description

ベクトル補間

サブクラスでコピーコンストラクタと代入演算子を実装する

Definition at line 40 of file VectorInterpolator.h.


Member Function Documentation

virtual VectorArrayInterpolator* Lamp::VectorInterpolator::castVectorArrayInterpolator  )  const [inline, virtual]
 

ベクトル配列補間へのキャスト

Returns:
ベクトル配列補間。型が違えばNULLを返す。

Definition at line 121 of file VectorInterpolator.h.

References isVectorArrayInterpolator(), and NULL.

Referenced by Lamp::AnimationCompressor::compressScale(), Lamp::AnimationCompressor::compressTranslation(), Lamp::VectorArrayInterpolator::equals(), Lamp::TextAnimationSaver::writeVectorInterpolator(), and Lamp::BinaryAnimationSaver::writeVectorInterpolator().

virtual VectorConstantInterpolator* Lamp::VectorInterpolator::castVectorConstantInterpolator  )  const [inline, virtual]
 

ベクトル定数補間へのキャスト

Returns:
ベクトル定数補間。型が違えばNULLを返す。

Definition at line 103 of file VectorInterpolator.h.

References isVectorConstantInterpolator(), and NULL.

Referenced by Lamp::VectorConstantInterpolator::equals(), Lamp::TextAnimationSaver::writeVectorInterpolator(), and Lamp::BinaryAnimationSaver::writeVectorInterpolator().

virtual VectorLinearInterpolator* Lamp::VectorInterpolator::castVectorLinearInterpolator  )  const [inline, virtual]
 

ベクトル線形補間へのキャスト

Returns:
ベクトル線形補間。型が違えばNULLを返す。

Definition at line 139 of file VectorInterpolator.h.

References isVectorLinearInterpolator(), and NULL.

Referenced by Lamp::VectorLinearInterpolator::equals(), Lamp::TextAnimationSaver::writeVectorInterpolator(), and Lamp::BinaryAnimationSaver::writeVectorInterpolator().

virtual VectorInterpolator* Lamp::VectorInterpolator::duplicate  )  const [pure virtual]
 

複製

Returns:
複製されたベクトル補間。呼び出し元でdeleteする必要がある

Implemented in Lamp::VectorArrayInterpolator, Lamp::VectorConstantInterpolator, and Lamp::VectorLinearInterpolator.

Referenced by Lamp::AnimationCompressor::compressScale(), Lamp::AnimationCompressor::compressTranslation(), Lamp::SceneNodeAnimationData::SceneNodeSequence::operator=(), Lamp::CharacterModelAnimationData::CharacterModelSequence::operator=(), and Lamp::CameraAnimationData::CameraSequence::operator=().

virtual bool Lamp::VectorInterpolator::equals const VectorInterpolator target  )  const [pure virtual]
 

同じ値かどうか

Parameters:
target 比較対象
Returns:
同じ値ならtrueをかえす

Implemented in Lamp::VectorArrayInterpolator, Lamp::VectorConstantInterpolator, and Lamp::VectorLinearInterpolator.

virtual AxisAlignedBox Lamp::VectorInterpolator::getBoundingBox  )  const [pure virtual]
 

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

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

Implemented in Lamp::VectorArrayInterpolator, Lamp::VectorConstantInterpolator, and Lamp::VectorLinearInterpolator.

Referenced by Lamp::AnimationCompressor::compressScale().

virtual float Lamp::VectorInterpolator::getLength  )  const [pure virtual]
 

長さの取得

Returns:
長さ

Implemented in Lamp::VectorArrayInterpolator, Lamp::VectorConstantInterpolator, and Lamp::VectorLinearInterpolator.

Referenced by Lamp::SceneNodeAnimationData::SceneNodeSequence::calcLength(), Lamp::CharacterModelAnimationData::CharacterModelSequence::calcLength(), and Lamp::CameraAnimationData::CameraSequence::calcLength().

virtual Vector3 Lamp::VectorInterpolator::interpolate float  time  )  [pure virtual]
 

補間

Parameters:
time 時間
Returns:
補間されたベクトル

Implemented in Lamp::VectorArrayInterpolator, Lamp::VectorConstantInterpolator, and Lamp::VectorLinearInterpolator.

Referenced by Lamp::SceneNodeAnimation::animate(), Lamp::CharacterModelAnimation::animate(), and Lamp::CameraAnimation::animate().

virtual bool Lamp::VectorInterpolator::isVectorArrayInterpolator  )  const [inline, virtual]
 

ベクトル配列補間かどうか

Returns:
ベクトル配列補間ならtrue

Reimplemented in Lamp::VectorArrayInterpolator.

Definition at line 115 of file VectorInterpolator.h.

Referenced by castVectorArrayInterpolator(), Lamp::TextAnimationSaver::writeVectorInterpolator(), and Lamp::BinaryAnimationSaver::writeVectorInterpolator().

virtual bool Lamp::VectorInterpolator::isVectorConstantInterpolator  )  const [inline, virtual]
 

ベクトル定数補間かどうか

Returns:
ベクトル定数補間ならtrue

Reimplemented in Lamp::VectorConstantInterpolator.

Definition at line 97 of file VectorInterpolator.h.

Referenced by castVectorConstantInterpolator(), Lamp::TextAnimationSaver::writeVectorInterpolator(), and Lamp::BinaryAnimationSaver::writeVectorInterpolator().

virtual bool Lamp::VectorInterpolator::isVectorLinearInterpolator  )  const [inline, virtual]
 

ベクトル線形補間かどうか

Returns:
ベクトル線形補間ならtrue

Reimplemented in Lamp::VectorLinearInterpolator.

Definition at line 133 of file VectorInterpolator.h.

Referenced by castVectorLinearInterpolator(), Lamp::TextAnimationSaver::writeVectorInterpolator(), and Lamp::BinaryAnimationSaver::writeVectorInterpolator().


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