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

# Lamp::QuaternionArrayInterpolator Class Reference

四元数回転配列補間 More...

`#include <QuaternionArrayInterpolator.h>`

Inheritance diagram for Lamp::QuaternionArrayInterpolator:

List of all members.

## Public Member Functions
| QuaternionArrayInterpolator ()
| コンストラクタ
virtual | ~QuaternionArrayInterpolator ()
| デストラクタ
| QuaternionArrayInterpolator (const QuaternionArrayInterpolator &copy)
| コピーコンストラクタ
virtual QuaternionArrayInterpolator & | operator= (const QuaternionArrayInterpolator &copy)
| 代入演算子
virtual RotationInterpolator * | duplicate () const
| 複製
virtual bool | equals (const RotationInterpolator &target) const
| 同じ値かどうか
virtual float | getLength () const
| 長さの取得
virtual bool | isEulerInterpolator () const
| オイラー補間かどうか
virtual Vector3 | eulerInterpolate (float time)
| オイラー補間
virtual bool | isQuaternionInterpolator () const
| 四元数補間かどうか
virtual Quaternion | quaternionInterpolate (float time)
| 四元数補間
virtual void | setSize (int size)
| サイズ設定
virtual int | getSize () const
| サイズ取得
virtual void | setValue (int index, const Quaternion &value)
| 値の設定
virtual void | correctValue ()
| 値の補正
virtual const Quaternion & | getValue (int index) const
| 値の取得
EulerArrayInterpolator * | convertEulerArrayInterpolator () const
| オイラー回転配列補間への変換
virtual bool | isQuaternionArrayInterpolator () const
| 四元数回転配列補間かどうか

## Detailed Description

四元数回転配列補間

Definition at line 36 of file QuaternionArrayInterpolator.h.

## Constructor & Destructor Documentation

Lamp::QuaternionArrayInterpolator::QuaternionArrayInterpolator | ( | const QuaternionArrayInterpolator & | copy | ) | `[explicit]`

  | コピーコンストラクタ Parameters:
  copy | コピー元
Definition at line 43 of file QuaternionArrayInterpolator.cpp. References array_, length_, NULL, and size_.

## Member Function Documentation

EulerArrayInterpolator * Lamp::QuaternionArrayInterpolator::convertEulerArrayInterpolator | ( |  | ) | const

| オイラー回転配列補間への変換 Returns: オイラー回転配列補間、呼び出し元で破棄する必要がある Definition at line 154 of file QuaternionArrayInterpolator.cpp. References Lamp::Quaternion::getRotationXYZ(), getSize(), getValue(), Lamp::EulerArrayInterpolator::setSize(), and Lamp::EulerArrayInterpolator::setValue().

virtual RotationInterpolator* Lamp::QuaternionArrayInterpolator::duplicate | ( |  | ) | const`[inline, virtual]`

| 複製 Returns: 複製されたオイラー回転補間。呼び出し元でdeleteする必要がある Implements Lamp::RotationInterpolator. Definition at line 68 of file QuaternionArrayInterpolator.h. References QuaternionArrayInterpolator(). Referenced by Lamp::RotationInterpolationCompressor::compress().

virtual bool Lamp::QuaternionArrayInterpolator::equals | ( | const RotationInterpolator & | target | ) | const`[inline, virtual]`

  | 同じ値かどうか Parameters:
  target | 比較対象
Returns: 同じ値ならtrueをかえす Implements Lamp::RotationInterpolator. Definition at line 80 of file QuaternionArrayInterpolator.h. References array_, Lamp::RotationInterpolator::castQuaternionArrayInterpolator(), NULL, and size_.

Vector3 Lamp::QuaternionArrayInterpolator::eulerInterpolate | ( | float | time | ) | `[virtual]`

  | オイラー補間 Parameters:
  time | 時間
Returns: 補間された回転 Implements Lamp::RotationInterpolator. Definition at line 73 of file QuaternionArrayInterpolator.cpp. References Lamp::Quaternion::getRotationXYZ(), quaternionInterpolate(), Lamp::Vector3::x, Lamp::Vector3::y, and Lamp::Vector3::z.

virtual float Lamp::QuaternionArrayInterpolator::getLength | ( |  | ) | const`[inline, virtual]`

| 長さの取得 Returns: 長さ Implements Lamp::RotationInterpolator. Definition at line 96 of file QuaternionArrayInterpolator.h. Referenced by Lamp::RotationInterpolationCompressor::compressSetup().

virtual int Lamp::QuaternionArrayInterpolator::getSize | ( |  | ) | const`[inline, virtual]`

| サイズ取得 Returns: サイズ Definition at line 143 of file QuaternionArrayInterpolator.h. Referenced by Lamp::RotationInterpolationCompressor::compressSetup(), convertEulerArrayInterpolator(), Lamp::TextAnimationSaver::writeQuaternionArrayInterpolator(), and Lamp::BinaryAnimationSaver::writeQuaternionArrayInterpolator().

virtual const Quaternion& Lamp::QuaternionArrayInterpolator::getValue | ( | int | index | ) | const`[inline, virtual]`

  | 値の取得 Parameters:
  index | 取得する値のインデックス
Returns: 値 Definition at line 163 of file QuaternionArrayInterpolator.h. References Assert, and NULL. Referenced by Lamp::RotationInterpolationCompressor::compressConstant(), Lamp::RotationInterpolationCompressor::compressLinear(), convertEulerArrayInterpolator(), Lamp::RotationInterpolationCompressor::recalcLinearError(), Lamp::TextAnimationSaver::writeQuaternionArrayInterpolator(), and Lamp::BinaryAnimationSaver::writeQuaternionArrayInterpolator().

virtual bool Lamp::QuaternionArrayInterpolator::isEulerInterpolator | ( |  | ) | const`[inline, virtual]`

| オイラー補間かどうか Returns: オイラー補間ならtrue Implements Lamp::RotationInterpolator. Definition at line 105 of file QuaternionArrayInterpolator.h.

virtual bool Lamp::QuaternionArrayInterpolator::isQuaternionArrayInterpolator | ( |  | ) | const`[inline, virtual]`

| 四元数回転配列補間かどうか Returns: 四元数回転配列補間ならtrue Reimplemented from Lamp::RotationInterpolator. Definition at line 186 of file QuaternionArrayInterpolator.h.

virtual bool Lamp::QuaternionArrayInterpolator::isQuaternionInterpolator | ( |  | ) | const`[inline, virtual]`

| 四元数補間かどうか Returns: 四元数補間ならtrue Implements Lamp::RotationInterpolator. Definition at line 121 of file QuaternionArrayInterpolator.h.

QuaternionArrayInterpolator & Lamp::QuaternionArrayInterpolator::operator= | ( | const QuaternionArrayInterpolator & | copy | ) | `[virtual]`

  | 代入演算子 Parameters:
  copy | 代入元
Definition at line 56 of file QuaternionArrayInterpolator.cpp. References array_, length_, SafeArrayDelete, and size_.

Quaternion Lamp::QuaternionArrayInterpolator::quaternionInterpolate | ( | float | time | ) | `[virtual]`

  | 四元数補間 Parameters:
  time | 時間
Returns: 補間された回転 Implements Lamp::RotationInterpolator. Definition at line 89 of file QuaternionArrayInterpolator.cpp. References Assert, Lamp::Quaternion::dotProduct(), Lamp::Quaternion::isUnit(), NULL, Lamp::Quaternion::w, Lamp::Quaternion::x, Lamp::Quaternion::y, and Lamp::Quaternion::z. Referenced by eulerInterpolate().

void Lamp::QuaternionArrayInterpolator::setSize | ( | int | size | ) | `[virtual]`

  | サイズ設定 Parameters:
  size | 設定するサイズ。サイズ - 1がLengthになる。
Definition at line 120 of file QuaternionArrayInterpolator.cpp. References Assert, and SafeArrayDelete. Referenced by Lamp::EulerArrayInterpolator::convertQuaternionArrayInterpolator(), Lamp::TextAnimationLoader::readQuaternionArrayInterpolator(), and Lamp::BinaryAnimationLoader::readQuaternionArrayInterpolator().

void Lamp::QuaternionArrayInterpolator::setValue | ( | int | index,
|  | const Quaternion & | value
| ) | `[virtual]`

  | 値の設定 Parameters:
  index | 設定する値のインデックス
  value | 設定する値
Definition at line 130 of file QuaternionArrayInterpolator.cpp. References Assert, correctValue(), Lamp::Quaternion::normalize(), and NULL. Referenced by Lamp::EulerArrayInterpolator::convertQuaternionArrayInterpolator(), Lamp::TextAnimationLoader::readQuaternionArrayInterpolator(), and Lamp::BinaryAnimationLoader::readQuaternionArrayInterpolator().

The documentation for this class was generated from the following files:

- QuaternionArrayInterpolator.h
- QuaternionArrayInterpolator.cpp