Main Page Class Hierarchy Compound List File List Compound Members File Members

Quaternion.h

Go to the documentation of this file.
00001 /*
00002 File: Quaternion.h
00003 
00004 Function: Useful routines for using quaternions in CG
00005 
00006 Author: Andrew Willmott
00007 
00008 Copyright: (c) 2000, Andrew Willmott
00009 */
00010 
00011 #ifndef __Quaternion__
00012 #define __Quaternion__
00013 
00014 #include "gcl/Geometry.h"
00015 
00016  typedef Vector4 Quaternion;
00017 
00018 Quaternion MakeQuat(const Vector &axis, GCLReal theta);
00019 Quaternion MakeQuat(const Vector &point);
00020 Quaternion MakeQuat(const VecTrans &t);
00021 // R is assumed to contain the orthonormal axes of the new (rotated)
00022 // space in its columns.
00023 Quaternion QuatMult(const Quaternion &a, const Quaternion &b);
00024 
00025  inline Quaternion QuatInv(const Quaternion &q)
00026 { return(Quaternion(-q[0], -q[1], -q[2], q[3])); }
00027 
00028  inline Void MakeFromQuat(const Quaternion &q, VecTrans &t)
00029 { t.MakeRot(q); }
00030 
00031 #endif

Generated at Sat Aug 5 00:17:02 2000 for Graphics Class Library by doxygen 1.1.0 written by Dimitri van Heesch, © 1997-2000

AltStyle によって変換されたページ (->オリジナル) /