クラス SCGL::CQuaternion

クォータニオンクラス [詳細]

#include <ScoutCGLib.h>

すべてのメンバ一覧

Public メソッド

 CQuaternion ()
 初期化
 CQuaternion (double val)
 初期化
 CQuaternion (double qw, double qx, double qy, double qz)
 初期化
 CQuaternion (double ww, const VECTOR3 &vec)
 初期化
 CQuaternion (VECTOR3 dir, VECTOR3 up)
 カメラの視線制御
virtual ~CQuaternion ()
void init ()
 単位クォータニオンで初期化
void SetRotate (const VECTOR3 &axis, const double &theta)
 任意軸回転
CQuaternion & operator= (const CQuaternion &q)
 コピー
const CQuaternion operator- () const
 符号の反転
CQuaternion & operator+= (const CQuaternion &q)
 加算代入
CQuaternion & operator+= (const double &val)
 加算代入(w成分)
CQuaternion & operator-= (const CQuaternion &q)
 減算代入
CQuaternion & operator-= (const double &val)
 減算代入(w成分)
CQuaternion & operator *= (const CQuaternion &q)
 乗算代入
CQuaternion & operator *= (const double &val)
 乗算代入(w成分)
const CQuaternion operator * (const CQuaternion &q) const
 乗算
CQuaternion & operator/= (const CQuaternion &q)
 除算代入
CQuaternion & operator/= (const double &val)
 除算代入(w成分)
const CQuaternion operator/ (const CQuaternion &q) const
 除算
const CQuaternion operator/ (const double &val) const
 除算(各成分)
const double norm () const
 ノルム・長さ
const double norm2 () const
 ノルム・長さの2乗
const CQuaternion conjugate () const
 共役クォータニオン
const CQuaternion inv () const
 逆クォータニオン
const CQuaternion unit () const
 単位クォータニオン
double operator & (CQuaternion &q)
 内積
VECTOR3 Rotate (const VECTOR3 &vec) const
 ベクトルを回転する
const VECTOR3 operator * (const VECTOR3 &vec) const
void Rotate (VECTOR3 v1, VECTOR3 v2)
CQuaternion Rotate (VECTOR3 v1, VECTOR3 v2, VECTOR3 axis)
MATRIX44 GetMatrix ()
bool operator== (const CQuaternion &q) const
bool operator!= (const CQuaternion &q) const
bool operator<= (const CQuaternion &q) const
bool operator> (const CQuaternion &q) const
bool operator>= (const CQuaternion &q) const
bool operator< (const CQuaternion &q) const

Public 変数

double w
double x
double y
double z


説明

クォータニオンクラス

クォータニオンに関する各種演算を行います

作者:
Scout
日付:
2006-02-25

ScoutCGLib.h の 599 行で定義されています。


コンストラクタとデストラクタ

CQuaternion::CQuaternion (   ) 
 

初期化

単位クォータニオンで初期化

ScoutCGLib.cpp の 1068 行で定義されています。

CQuaternion::CQuaternion (  double  val  ) 
 

初期化

クォータニオンの初期化

引数:
val w成分

ScoutCGLib.cpp の 1069 行で定義されています。

CQuaternion::CQuaternion (  double  qw,
double  qx,
double  qy,
double  qz
) 
 

初期化

クォータニオンの初期化

引数:
qw w成分
qx x成分
qy y成分
qz z成分

ScoutCGLib.cpp の 1070 行で定義されています。

CQuaternion::CQuaternion (  double  ww,
const VECTOR3 &  vec
) 
 

初期化

クォータニオンの初期化

引数:
ww w成分
vec (x,y,z)成分を示すVECTOR3

ScoutCGLib.cpp の 1071 行で定義されています。

CQuaternion::CQuaternion (  VECTOR3  dir,
VECTOR3  up
) 
 

カメラの視線制御

カメラの視線制御

引数:
dir 現在の視線方向
up カメラを向ける視線方向

ScoutCGLib.cpp の 1080 行で定義されています。

CQuaternion::~CQuaternion (   )  [virtual]
 

デストラクタ

ScoutCGLib.cpp の 1074 行で定義されています。


関数

const CQuaternion CQuaternion::conjugate (   )  const
 

共役クォータニオン

共役クォータニオンを求める

戻り値:
共役クォータニオン

ScoutCGLib.cpp の 1210 行で定義されています。

MATRIX44 CQuaternion::GetMatrix (   ) 
 

変換行列を求める

戻り値:
変換行列

ScoutCGLib.cpp の 1311 行で定義されています。

void CQuaternion::init (   ) 
 

単位クォータニオンで初期化

ScoutCGLib.cpp の 1077 行で定義されています。

const CQuaternion CQuaternion::inv (   )  const
 

逆クォータニオン

逆クォータニオンを求める

戻り値:
逆クォータニオン

ScoutCGLib.cpp の 1213 行で定義されています。

const double CQuaternion::norm (   )  const
 

ノルム・長さ

ノルム・長さ

戻り値:
クォータニオンの長さ

ScoutCGLib.cpp の 1204 行で定義されています。

const double CQuaternion::norm2 (   )  const
 

ノルム・長さの2乗

ノルム・長さの2乗

戻り値:
クォータニオンの長さの2乗

ScoutCGLib.cpp の 1207 行で定義されています。

double CQuaternion::operator & (  CQuaternion &  q  ) 
 

内積

内積

戻り値:
内積値

ScoutCGLib.cpp の 1227 行で定義されています。

const VECTOR3 CQuaternion::operator * (  const VECTOR3 &  vec  )  const
 

ScoutCGLib.cpp の 1237 行で定義されています。

const CQuaternion CQuaternion::operator * (  const CQuaternion &  q  )  const
 

乗算

乗算

引数:
q 乗算するCQuaternionクラス
戻り値:
乗算結果を値に持つCQuaternionクラス

ScoutCGLib.cpp の 1175 行で定義されています。

CQuaternion & CQuaternion::operator *= (  const double &  val  ) 
 

乗算代入(w成分)

乗算代入(w成分)

引数:
val 代入元
戻り値:
自己参照

ScoutCGLib.cpp の 1165 行で定義されています。

CQuaternion & CQuaternion::operator *= (  const CQuaternion &  q  ) 
 

乗算代入

乗算代入

引数:
q 代入元
戻り値:
自己参照

ScoutCGLib.cpp の 1154 行で定義されています。

bool CQuaternion::operator!= (  const CQuaternion &  q  )  const
 

ScoutCGLib.cpp の 1338 行で定義されています。

CQuaternion & CQuaternion::operator+= (  const double &  val  ) 
 

加算代入(w成分)

加算代入(w成分)

引数:
val 代入元
戻り値:
自己参照

ScoutCGLib.cpp の 1138 行で定義されています。

CQuaternion & CQuaternion::operator+= (  const CQuaternion &  q  ) 
 

加算代入

加算代入

引数:
q 加算元
戻り値:
自己参照

ScoutCGLib.cpp の 1128 行で定義されています。

const CQuaternion CQuaternion::operator- (   )  const
 

符号の反転

符号の反転

戻り値:
符号が反転されたCQuaternionクラス

ScoutCGLib.cpp の 1125 行で定義されています。

CQuaternion & CQuaternion::operator-= (  const double &  val  ) 
 

減算代入(w成分)

減算代入(w成分)

引数:
val 代入元
戻り値:
自己参照

ScoutCGLib.cpp の 1150 行で定義されています。

CQuaternion & CQuaternion::operator-= (  const CQuaternion &  q  ) 
 

減算代入

減算代入

引数:
q 減算元
戻り値:
自己参照

ScoutCGLib.cpp の 1141 行で定義されています。

const CQuaternion CQuaternion::operator/ (  const double &  val  )  const
 

除算(各成分)

除算(各成分)

引数:
val 各成分を除算する値
戻り値:
除算結果を値に持つCQuaternionクラス

ScoutCGLib.cpp の 1201 行で定義されています。

const CQuaternion CQuaternion::operator/ (  const CQuaternion &  q  )  const
 

除算

除算

引数:
q 除算するCQuaternionクラス
戻り値:
除算結果を値に持つCQuaternionクラス

ScoutCGLib.cpp の 1199 行で定義されています。

CQuaternion & CQuaternion::operator/= (  const double &  val  ) 
 

除算代入(w成分)

除算代入(w成分)

引数:
val 代入元
戻り値:
自己参照

ScoutCGLib.cpp の 1189 行で定義されています。

CQuaternion & CQuaternion::operator/= (  const CQuaternion &  q  ) 
 

除算代入

除算代入

引数:
q 代入元
戻り値:
自己参照

ScoutCGLib.cpp の 1186 行で定義されています。

bool CQuaternion::operator< (  const CQuaternion &  q  )  const
 

ScoutCGLib.cpp の 1342 行で定義されています。

bool CQuaternion::operator<= (  const CQuaternion &  q  )  const
 

ScoutCGLib.cpp の 1339 行で定義されています。

CQuaternion & CQuaternion::operator= (  const CQuaternion &  q  ) 
 

コピー

コピー

引数:
q コピー元
戻り値:
自己参照

ScoutCGLib.cpp の 1115 行で定義されています。

bool CQuaternion::operator== (  const CQuaternion &  q  )  const
 

ScoutCGLib.cpp の 1337 行で定義されています。

bool CQuaternion::operator> (  const CQuaternion &  q  )  const
 

ScoutCGLib.cpp の 1340 行で定義されています。

bool CQuaternion::operator>= (  const CQuaternion &  q  )  const
 

ScoutCGLib.cpp の 1341 行で定義されています。

CQuaternion CQuaternion::Rotate (  VECTOR3  v1,
VECTOR3  v2,
VECTOR3  axis
) 
 

ScoutCGLib.cpp の 1290 行で定義されています。

void CQuaternion::Rotate (  VECTOR3  v1,
VECTOR3  v2
) 
 

ScoutCGLib.cpp の 1243 行で定義されています。

VECTOR3 CQuaternion::Rotate (  const VECTOR3 &  vec  )  const
 

ベクトルを回転する

ベクトルを回転する

引数:
vec 回転させるベクトル
戻り値:
回転後のベクトル

ScoutCGLib.cpp の 1230 行で定義されています。

void CQuaternion::SetRotate (  const VECTOR3 &  axis,
const double &  theta
) 
 

任意軸回転

任意軸回転

引数:
axis 回転軸
theta 回転角度(degree)

ScoutCGLib.cpp の 1103 行で定義されています。

const CQuaternion CQuaternion::unit (   )  const
 

単位クォータニオン

単位クォータニオンを求める

戻り値:
単位クォータニオン

ScoutCGLib.cpp の 1220 行で定義されています。


変数

double SCGL::CQuaternion::w
 

ScoutCGLib.h の 602 行で定義されています。

double SCGL::CQuaternion::x
 

ScoutCGLib.h の 602 行で定義されています。

double SCGL::CQuaternion::y
 

ScoutCGLib.h の 602 行で定義されています。

double SCGL::CQuaternion::z
 

ScoutCGLib.h の 602 行で定義されています。


このクラスの説明は次のファイルから生成されました:
ScoutCGLibに対してSat Jun 17 15:19:37 2006に生成されました。  doxygen 1.4.6-NO