isce3  0.1.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Pages
Public Member Functions | List of all members
isce3::core::Quaternion Class Reference

Quaternion representation of attitude information. More...

#include <Quaternion.h>

Inheritance diagram for isce3::core::Quaternion:
isce3::core::Attitude

Public Member Functions

 Quaternion ()
 Default constructor.
 
 Quaternion (const std::vector< double > &time, const std::vector< double > &quaternions)
 Constructor using vectors of time and quaternions. More...
 
void data (const std::vector< double > &time, const std::vector< double > &quaternions)
 Set all quaternion elements from a vector. More...
 
void ypr (double tintp, double &yaw, double &pitch, double &roll)
 Return yaw, pitch, roll. More...
 
cartmat_t rotmat (double tintp, const std::string, double dq0=0.0, double dq1=0.0, double dq2=0.0, double dq3=0.0)
 Return rotation matrix with optional perturbations.
 
cartesian_t factoredYPR (double time, const cartesian_t &, const cartesian_t &, Ellipsoid *)
 Return factored Yaw, Pitch, Roll.
 
const std::vector< double > & time () const
 Return data vector of time.
 
const std::vector< double > & qvec () const
 Get the quaternion elements (packed in size N*4 vector)
 
size_t nVectors () const
 Return number of epochs.
 
- Public Member Functions inherited from isce3::core::Attitude
 Attitude (Attitude::Type atype)
 Constructor using time attitude representation type.
 
virtual ~Attitude ()
 Virtual destructor.
 
Attitude::Type attitudeType () const
 Return type of attitude representation - quaternion or euler angle.
 
std::string yawOrientation () const
 Return yaw orientation - central or normal.
 
void yawOrientation (const std::string)
 Set yaw orientation - central or normal.
 

Additional Inherited Members

- Public Types inherited from isce3::core::Attitude
enum  Type { EulerAngles_t, Quaternion_t }
 

Detailed Description

Quaternion representation of attitude information.

Constructor & Destructor Documentation

isce3::core::Quaternion::Quaternion ( const std::vector< double > &  time,
const std::vector< double > &  quaternions 
)

Constructor using vectors of time and quaternions.

Parameters
[in]timeTime tags, seconds since some epoch. Must be strictly increasing.
[in]quaternionsUnit quaternions representing antenna to XYZ rotation. Packed in size N*4 vector with each quaternion contiguous.

Member Function Documentation

void isce3::core::Quaternion::data ( const std::vector< double > &  time,
const std::vector< double > &  quaternions 
)

Set all quaternion elements from a vector.

Parameters
[in]timeVector of seconds since epoch, strictly increasing.
[in]quaternionsFlattened vector of quaternions per time epoch
void isce3::core::Quaternion::ypr ( double  tintp,
double &  yaw,
double &  pitch,
double &  roll 
)
virtual

Return yaw, pitch, roll.

Parameters
[in]tintpSeconds since reference epoch
[out]oyawInterpolated yaw angle
[out]opitchInterpolated pitch angle
[out]orollInterpolated roll angle

Implements isce3::core::Attitude.


The documentation for this class was generated from the following files:

Generated for ISCE3.0 by doxygen 1.8.5.