EulerAngles-未测试-头文件

  未测试,所以,BBBB的话留给以后.未测试的原因,是深度优先我有点受不了了,先把欧拉角,矩阵,四元数都写出来,再整合到我的线框引擎中测试吧.

  参考的书籍是<<3D游戏基础--图形与游戏开发>>和<<3D游戏与计算机图形学中的数学方法>>,都是外国人写的书.

  关于这个EulerAngles啊,看起来没什么,真要研究透彻,真的不是那么容易的...还好我睾明白了,贴出来吧.

#ifndef EULAR_H_
#define EULAR_H_

class Quaternion ;
class Matrix4x4;

class EulerAngles
{
public:
	//		单位:弧度
	float heading ;
	float pitch ;
	float bank ;

	EulerAngles() ;
	EulerAngles(float heading, float pitch, float bank) ;
	void Indentity() ;
	void Canonize() ;

	//		矩阵到欧拉角
	void MatrixToEulerAngles(const Matrix4x4& m) ;

	//		四元数到欧拉角
	void QuaternionToEulerAngles(const Quaternion& q) ;
} ;

#endif


你可能感兴趣的:(EulerAngles-未测试-头文件)