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