cisst-saw
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
robFunctionSO3.h
Go to the documentation of this file.
1 /*
2  Author(s): Simon Leonard
3  Created on: Nov 11 2009
4 
5  (C) Copyright 2009-2014 Johns Hopkins University (JHU), All Rights
6  Reserved.
7 
8 --- begin cisst license - do not edit ---
9 
10 This software is provided "as is" under an open source license, with
11 no warranty. The complete license can be found in license.txt and
12 http://www.cisst.org/cisst/license.txt.
13 
14 --- end cisst license ---
15 */
16 
17 #ifndef _robFunctionSO3_h
18 #define _robFunctionSO3_h
19 
23 
24 #include <cisstRobot/robFunction.h>
25 #include <cisstRobot/robExport.h>
26 
28 
29  protected:
30 
32  vctFixedSizeVector<double,3> w1; // initial 1st derivative
33  vctFixedSizeVector<double,3> w1d; // initial 1st derivative
34 
36  vctFixedSizeVector<double,3> w2; // final 1st derivative
37  vctFixedSizeVector<double,3> w2d; // final 1st derivative
38 
39  public:
40 
41  robFunctionSO3( void );
42 
43  robFunctionSO3( double t1,
47  double t2,
50  const vctFixedSizeVector<double,3>& w2d );
51 
52  robFunctionSO3( double t1,
53  const vctMatrixRotation3<double>& Rw1,
56  double t2,
57  const vctMatrixRotation3<double>& Rw2,
59  const vctFixedSizeVector<double,3>& w2d );
60 
61  virtual ~robFunctionSO3() {}
62 
63  virtual void Evaluate( double,
67 
68  virtual void Evaluate( double,
72 
73  virtual void Blend( robFunction* function, double wmax, double wdmax ) = 0;
74 
75  void InitialState( vctQuaternionRotation3<double>& q,
78 
79  void FinalState( vctQuaternionRotation3<double>& q,
82 
83 };
84 
85 #endif // _robFunctionSO3_h
#define CISST_EXPORT
Definition: cmnExportMacros.h:50
vctFixedSizeVector< double, 3 > w1
Definition: robFunctionSO3.h:32
virtual ~robFunctionSO3()
Definition: robFunctionSO3.h:61
Base class for robot function.
Definition: robFunction.h:31
virtual void Evaluate(double, vctMatrixRotation3< double >, vctFixedSizeVector< double, 3 > &, vctFixedSizeVector< double, 3 > &)
Definition: robFunctionSO3.h:68
Declaration of vctMatrixRotation3.
virtual void Evaluate(double, vctQuaternionRotation3< double > &, vctFixedSizeVector< double, 3 > &, vctFixedSizeVector< double, 3 > &)
Definition: robFunctionSO3.h:63
vctQuaternionRotation3< double > qw2
Definition: robFunctionSO3.h:35
vctQuaternionRotation3< double > qw1
Definition: robFunctionSO3.h:31
int CISST_EXPORT Blend(svlSampleImage *src1_img, unsigned int src1_videoch, svlSampleImage *src2_img, unsigned int src2_videoch, svlSampleImage *mask_img, unsigned int mask_videoch, svlSampleImage *dst_img, unsigned int dst_videoch)
vctFixedSizeVector< double, 3 > w2
Definition: robFunctionSO3.h:36
vctFixedSizeVector< double, 3 > w2d
Definition: robFunctionSO3.h:37
Declaration of vctFixedSizeVector.
Declaration of vctQuaternionRotation3.
Definition: robFunctionSO3.h:27
vctFixedSizeVector< double, 3 > w1d
Definition: robFunctionSO3.h:33