19 #ifndef GEOM_COMPOSITE3_HH
20 #define GEOM_COMPOSITE3_HH
24 #include <boost/filesystem/path.hpp>
44 Vec3 GetOrigin()
const;
45 Vec3 GetDirection()
const;
67 Vec3 GetNormal()
const;
68 void SetNormal(
const Vec3& n);
74 YZ=0x1, ZY=0x1, XZ=0x2, ZX=0x2, XY=0x4, YX=0x4
87 Vec3 GetOrigin()
const;
88 Real GetRadius()
const;
89 void SetOrigin(
const Vec3& v);
90 void SetRadius(
Real r);
123 return Vec3(axes_[0].GetHalfExtent(), axes_[1].GetHalfExtent(),
124 axes_[2].GetHalfExtent());
148 const Vec3& origin=
Vec3(0.0,0.0,0.0));
150 const Vec3& origin=
Vec3(0.0,0.0,0.0));
154 Vec3 GetOrigin()
const;
156 Real GetTheta()
const;
158 Quat GetQuat()
const;
159 Vec3 GetRotationAxis()
const;
160 Real GetRotationAngle()
const;
161 Mat3 GetRotationMatrix()
const;
162 void SetOrigin(
const Vec3& o);
163 void SetPhi(
Real phi);
164 void SetTheta(
Real theta);
165 void SetPsi(
Real psi);
166 void SetQuat(
const Quat& q);
167 void SetRotationAxis(
const Vec3& v);
168 void SetRotationAngle(
Real angle);
169 void SetRotationMatrix(
const Mat3& rot);
175 Quat generate_from_axis_angle(
const Vec3& axis,
Real angle);
176 Vec3 find_invariant_vector(
Mat3 rot);
177 Vec3 find_orthogonal_vector(
const Vec3& xyz);
178 Vec3 find_vector_for_BOD(
const Vec3& xyz,
const Vec3& uvw);
179 Quat generate_from_matrix(
const Mat3& rot);
189 const boost::filesystem::path& loc);