ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE/libmdtools/Euler3.hpp
Revision: 1254
Committed: Wed Jun 9 16:16:33 2004 UTC (20 years, 1 month ago) by tim
File size: 615 byte(s)
Log Message:
1. adding some useful math classes(Mat3x3d, Vector3d, Quaternion, Euler3)
 these classes use anonymous union and struct to support
 double[3], double[3][3] and double[4]
2. adding roll constraint algorithm

File Contents

# Content
1 #ifndef _EULER3_H_
2 #define _EULER3_H_
3
4 class Quaternion;
5 class Mat3x3d;
6 class Vector3d;
7
8 class Euler3{
9 public:
10 Euler3();
11 Euler3(double theta, double phi, double psi){
12 this->theta = theta;
13 this->phi = phi;
14 this->psi = psi;
15 }
16
17 Euler3(double e[3]){
18 theta = e[0];
19 phi = e[1];
20 psi = e[2];
21 }
22
23 Euler3(const Vector3d& v);
24
25 Euler3(Mat3x3d& m);
26
27 Euler3(Quaternion& q);
28
29 public:
30 union{
31 struct{
32 double theta;
33 double phi;
34 double psi;
35 };
36 double angle[3];
37 };
38 };
39
40 #endif //endif idndef _EULER3_H_

Properties

Name Value
svn:executable *