15 #ifndef __Thea_CoordinateFrame3_hpp__ 16 #define __Thea_CoordinateFrame3_hpp__ 19 #include "CoordinateFrameN.hpp" 32 typedef typename BaseT::VectorT VectorT;
33 typedef typename BaseT::MatrixT MatrixT;
48 tr.setViewFrame(eye, look_at, up);
56 void setViewFrame(VectorT
const & eye, VectorT
const & look_at, VectorT
const & up)
59 VectorT f = (look_at - eye).normalized();
60 VectorT s = f.cross(up).normalized();
61 VectorT u = s.cross(f);
65 s[2], u[2], -f[2]).finished());
90 static RigidTransformT rotationAxisAngle(VectorT
const & axis, Real radians) {
return RigidTransformT(); }
91 static RigidTransformT rotationEulerAnglesXYZ(Real yaw, Real pitch, Real roll) {
return RigidTransformT(); }
92 static RigidTransformT rotationEulerAnglesXZY(Real yaw, Real pitch, Real roll) {
return RigidTransformT(); }
93 static RigidTransformT rotationEulerAnglesYXZ(Real yaw, Real pitch, Real roll) {
return RigidTransformT(); }
94 static RigidTransformT rotationEulerAnglesYZX(Real yaw, Real pitch, Real roll) {
return RigidTransformT(); }
95 static RigidTransformT rotationEulerAnglesZXY(Real yaw, Real pitch, Real roll) {
return RigidTransformT(); }
96 static RigidTransformT rotationEulerAnglesZYX(Real yaw, Real pitch, Real roll) {
return RigidTransformT(); }
98 static RigidTransformT rotationArc(VectorT
const & start_dir, VectorT
const & end_dir,
bool normalize_dirs =
true)
99 {
return RigidTransformT(); }
103 #ifdef THEA_EXPORT_INSTANTIATION [Internal] Base class for a coordinate frame in N-space, defined by N orthonormal vectors...
CoordinateFrameN()
Default constructor.
Root namespace for the Thea library.
static CoordinateFrameN fromViewFrame(VectorT const &eye, VectorT const &look_at, VectorT const &up)
Construct from a viewing position (eye), look-at position (look_at) and up direction (up)...
VectorT rightVector() const
Get the right-hand direction (the X axis of the frame).
CoordinateFrameN(RigidTransformT const &src)
Construct from a rigid transform.
VectorT lookVector() const
Get the viewing direction (the negative Z axis of the frame).
VectorT upVector() const
Get the up direction (the Y axis of the frame).
void setViewFrame(VectorT const &eye, VectorT const &look_at, VectorT const &up)
Initialize from a viewing position (eye), look-at position (look_at) and up direction (up)...
VectorT getAxis(intx i) const
Get an axis of the frame.
A coordinate frame in N-space, defined by N orthonormal vectors.
CoordinateFrameN< 3, Real > CoordinateFrame3
The default coordinate frame class in real 3-space.