cisst-saw
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
robCubicSO3.h
Go to the documentation of this file.
1 /*
2 
3  Author(s): Simon Leonard
4  Created on: Nov 11 2009
5 
6  (C) Copyright 2008 Johns Hopkins University (JHU), All Rights
7  Reserved.
8 
9 --- begin cisst license - do not edit ---
10 
11 This software is provided "as is" under an open source license, with
12 no warranty. The complete license can be found in license.txt and
13 http://www.cisst.org/cisst/license.txt.
14 
15 --- end cisst license ---
16 */
17 
18 #ifndef _robCubicSO3_h
19 #define _robCubicSO3_h
20 
23 
25 #include <cisstRobot/robExport.h>
26 
28 
29  private:
30 
31  double wmax;
32  vctQuaternionRotation3<double> qwmid; // midpoint orientation
33 
35  SLERP( const vctQuaternionRotation3<double> &q1,
37  double t );
38 
39 
40  public:
41 
43 
47  const vctMatrixRotation3<double>& Rw1,
48  const vctMatrixRotation3<double>& Rw2,
49  double wmax,
50  double t1 = 0.0 );
51 
53  const vctQuaternionRotation3<double>& qwmid,
55  double wmax,
56  double t1 = 0.0 );
57 
59  void Evaluate( double t,
63 
64  void Blend( robFunction* function, double wmax, double wdmax );
65 
66  void IntermediateState( vctQuaternionRotation3<double>& q );
67 
68 };
69 
70 #endif
#define CISST_EXPORT
Definition: cmnExportMacros.h:50
Definition: robCubicSO3.h:27
virtual void Blend(robFunction *function, double wmax, double wdmax)=0
Base class for robot function.
Definition: robFunction.h:31
Declaration of vctMatrixRotation3.
virtual void Evaluate(double, vctQuaternionRotation3< double > &, vctFixedSizeVector< double, 3 > &, vctFixedSizeVector< double, 3 > &)
Definition: robFunctionSO3.h:63
Declaration of vctQuaternionRotation3.
Definition: robFunctionSO3.h:27