Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

Spr::TQuaternion< ET > Class Template Reference

4元数クラス. More...

#include <TQuaternion.h>

Inherits PTM::TVectorBase<(4), TVecDesc< TQuaternion< ET >, ET > >.

Collaboration diagram for Spr::TQuaternion< ET >:

Collaboration graph
[legend]
List of all members.

初期化・構築

Public Types

Public Member Functions

変数アクセス

Detailed Description

template<class ET>
class Spr::TQuaternion< ET >

4元数クラス.

そのうち入れたい,オイラー角への変換. heading = atan2(2*qy*qw-2*qx*qz , 1 - 2*qy2 - 2*qz2) attitude = asin(2*qx*qy + 2*qz*qw) bank = atan2(2*qx*qw-2*qy*qz , 1 - 2*qx2 - 2*qz2)

except when qx*qy + qz*qw = 0.5 (north pole) which gives: heading = 2 * atan2(x,w) bank = 0 and when qx*qy + qz*qw = -0.5 (south pole) which gives: heading = -2 * atan2(x,w) bank = 0

Definition at line 28 of file TQuaternion.h.


Member Typedef Documentation

template<class ET>
typedef TQuaternion Spr::TQuaternion< ET >::this_type
 

継承されない基本的なメンバの定義. ::DEF_TVECTOR_BASIC_MEMBER

Definition at line 33 of file TQuaternion.h.

template<class ET>
typedef PTM::TSubVector<3, desc> Spr::TQuaternion< ET >::vector_type
 

3次元の部分ベクトル

Definition at line 48 of file TQuaternion.h.


Constructor & Destructor Documentation

template<class ET>
Spr::TQuaternion< ET >::TQuaternion element_type  wi,
element_type  xi,
element_type  yi,
element_type  zi
[inline]
 

コンストラクタ

Definition at line 127 of file TQuaternion.h.


Member Function Documentation

template<class ET>
ET& Spr::TQuaternion< ET >::item_impl size_t  i  )  [inline]
 

要素のアクセス

Definition at line 41 of file TQuaternion.h.

template<class ET>
const ET& Spr::TQuaternion< ET >::item_impl size_t  i  )  const [inline]
 

要素のアクセス

Definition at line 43 of file TQuaternion.h.

template<class ET>
size_t Spr::TQuaternion< ET >::stride_impl  )  const [inline]
 

ストライド

Definition at line 45 of file TQuaternion.h.

template<class ET>
const element_type& Spr::TQuaternion< ET >::W  )  const [inline]
 

w成分

Definition at line 52 of file TQuaternion.h.

Referenced by Spr::dot(), Spr::TQuaternion< float >::euler(), Spr::TQuaternion< float >::from_matrix(), Spr::operator *(), Spr::TQuaternion< float >::rotation(), Spr::TQuaternion< float >::rotation_arc(), Spr::TQuaternion< float >::rotation_half(), Spr::TQuaternion< float >::set_default(), Spr::TQuaternion< float >::theta(), Spr::TQuaternion< float >::to_eular(), and Spr::TQuaternion< float >::TQuaternion().

template<class ET>
const element_type& Spr::TQuaternion< ET >::X  )  const [inline]
 

x成分

Definition at line 54 of file TQuaternion.h.

Referenced by Spr::dot(), Spr::TQuaternion< float >::euler(), Spr::TQuaternion< float >::from_matrix(), Spr::operator *(), Spr::TQuaternion< float >::set_default(), Spr::TQuaternion< float >::to_eular(), and Spr::TQuaternion< float >::TQuaternion().

template<class ET>
const element_type& Spr::TQuaternion< ET >::Y  )  const [inline]
 

y成分

Definition at line 56 of file TQuaternion.h.

Referenced by Spr::dot(), Spr::TQuaternion< float >::euler(), Spr::TQuaternion< float >::from_matrix(), Spr::operator *(), Spr::TQuaternion< float >::set_default(), Spr::TQuaternion< float >::to_eular(), and Spr::TQuaternion< float >::TQuaternion().

template<class ET>
const element_type& Spr::TQuaternion< ET >::Z  )  const [inline]
 

z成分

Definition at line 58 of file TQuaternion.h.

Referenced by Spr::dot(), Spr::TQuaternion< float >::euler(), Spr::TQuaternion< float >::from_matrix(), Spr::operator *(), Spr::TQuaternion< float >::set_default(), Spr::TQuaternion< float >::to_eular(), and Spr::TQuaternion< float >::TQuaternion().

template<class ET>
element_type& Spr::TQuaternion< ET >::W  )  [inline]
 

z成分

Definition at line 63 of file TQuaternion.h.

template<class ET>
element_type& Spr::TQuaternion< ET >::X  )  [inline]
 

x成分

Definition at line 65 of file TQuaternion.h.

template<class ET>
element_type& Spr::TQuaternion< ET >::Y  )  [inline]
 

y成分

Definition at line 67 of file TQuaternion.h.

template<class ET>
element_type& Spr::TQuaternion< ET >::Z  )  [inline]
 

z成分

Definition at line 69 of file TQuaternion.h.

template<class ET>
TVec3<ET> Spr::TQuaternion< ET >::rotation_half  )  [inline]
 

回転ベクトル.0..PIの範囲で回転ベクトルを返す.

Definition at line 73 of file TQuaternion.h.

template<class ET>
TVec3<ET> Spr::TQuaternion< ET >::rotation  )  [inline]
 

回転ベクトル2. 0..2PIの範囲で回転ベクトルを返す. angle から関数名変更

Definition at line 89 of file TQuaternion.h.

Referenced by Spr::PHJointBall::GetJointPosition().

template<class ET>
TVec3<ET> Spr::TQuaternion< ET >::axis  )  [inline]
 

回転軸

Definition at line 105 of file TQuaternion.h.

template<class ET>
ET Spr::TQuaternion< ET >::theta  )  [inline]
 

回転角度 (angleに関数名を変更する予定)

Definition at line 116 of file TQuaternion.h.

template<class ET>
void Spr::TQuaternion< ET >::set_default  )  [inline]
 

コンストラクタ

Reimplemented from PTM::VectorImp< TVecDesc< TQuaternion< ET >, ET > >.

Definition at line 124 of file TQuaternion.h.

template<class ET>
void Spr::TQuaternion< ET >::conjugate  )  [inline]
 

共役

Definition at line 154 of file TQuaternion.h.

template<class ET>
TQuaternion Spr::TQuaternion< ET >::inv  )  const [inline]
 

Definition at line 158 of file TQuaternion.h.

template<class ET>
template<class AM>
void Spr::TQuaternion< ET >::from_matrix const AM &  m  )  [inline]
 

回転行列変換

Definition at line 161 of file TQuaternion.h.

Referenced by Spr::PHSolid::SetRotation().

template<class ET>
template<class ET>
void Spr::TQuaternion< ET >::to_eular TVec3< ET > &  v  )  [inline]
 

オイラー角へ変換

Definition at line 205 of file TQuaternion.h.

template<class ET>
void Spr::TQuaternion< ET >::rotation_arc const TVec3< ET > &  lhs,
const TVec3< ET > &  rhs
[inline]
 

lhsを回転してrhsに一致させるクウォータニオン

Definition at line 241 of file TQuaternion.h.

template<class ET>
void Spr::TQuaternion< ET >::euler ET  yaw,
ET  pitch,
ET  roll
[inline]
 

オイラー角で指定

Definition at line 255 of file TQuaternion.h.


The documentation for this class was generated from the following file:
Generated on Sun Apr 16 02:08:00 2006 for Springhead by  doxygen 1.4.1