cisst-saw
Loading...
Searching...
No Matches
robFunctionRn.h
Go to the documentation of this file.
1/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2/* ex: set filetype=cpp softtabstop=4 shiftwidth=4 tabstop=4 cindent expandtab: */
3
4/*
5 Author(s): Simon Leonard
6 Created on: 2009-11-11
7
8 (C) Copyright 2009-2014 Johns Hopkins University (JHU), All Rights
9 Reserved.
10
11--- begin cisst license - do not edit ---
12
13This software is provided "as is" under an open source license, with
14no warranty. The complete license can be found in license.txt and
15http://www.cisst.org/cisst/license.txt.
16
17--- end cisst license ---
18*/
19
20#ifndef _robFunctionRn_h
21#define _robFunctionRn_h
22
25
28
30
31 protected:
32
33 vctDynamicVector<double> y1; // initial value
34 vctDynamicVector<double> y1d; // initial 1st derivative
35 vctDynamicVector<double> y1dd; // initial 2nd derivative
36
38 vctDynamicVector<double> y2d; // final 1st derivative
39 vctDynamicVector<double> y2dd; // final 2nd derivative
40
41 public:
42
44
49 double t2,
52 const vctFixedSizeVector<double,3>& p2dd );
53
56 const vctDynamicVector<double>& p1d,
57 const vctDynamicVector<double>& p1dd,
58 double t2,
60 const vctDynamicVector<double>& p2d,
61 const vctDynamicVector<double>& p2dd );
62
63 virtual ~robFunctionRn() {}
64
65 void Set( double t1,
67 const vctDynamicVector<double>& p1d,
68 const vctDynamicVector<double>& p1dd,
69 double t2,
71 const vctDynamicVector<double>& p2d,
72 const vctDynamicVector<double>& p2dd );
73
77
81
82 void InitialState( vctFixedSizeVector<double,3>& p, double& v, double& vd );
83 void FinalState ( vctFixedSizeVector<double,3>& p, double& v, double& vd );
84
89
94
95 virtual void Blend( robFunction* function,
97 const vctDynamicVector<double>& qdd ) = 0;
98
99 virtual void Blend( robFunction* function, double vmax, double vdmax ) = 0;
100
101
102};
103
104#endif // _robFunctionRn_h
robFunction(void)
double t1
Definition robFunction.h:35
double t2
Definition robFunction.h:36
vctDynamicVector< double > y1d
Definition robFunctionRn.h:34
virtual void Blend(robFunction *function, const vctDynamicVector< double > &qd, const vctDynamicVector< double > &qdd)=0
void InitialState(vctFixedSizeVector< double, 3 > &p, double &v, double &vd)
vctDynamicVector< double > y1dd
Definition robFunctionRn.h:35
robFunctionRn(void)
void FinalState(vctFixedSizeVector< double, 3 > &p, double &v, double &vd)
virtual void Evaluate(double, vctFixedSizeVector< double, 3 > &, vctFixedSizeVector< double, 3 > &, vctFixedSizeVector< double, 3 > &)
Definition robFunctionRn.h:85
virtual void Evaluate(double, vctDynamicVector< double > &, vctDynamicVector< double > &, vctDynamicVector< double > &)
Definition robFunctionRn.h:90
vctDynamicVector< double > y2
Definition robFunctionRn.h:37
vctDynamicVector< double > y2d
Definition robFunctionRn.h:38
robFunctionRn(double t1, const vctDynamicVector< double > &p1, const vctDynamicVector< double > &p1d, const vctDynamicVector< double > &p1dd, double t2, const vctDynamicVector< double > &p2, const vctDynamicVector< double > &p2d, const vctDynamicVector< double > &p2dd)
void InitialState(vctDynamicVector< double > &p, vctDynamicVector< double > &pd, vctDynamicVector< double > &pdd)
vctDynamicVector< double > y1
Definition robFunctionRn.h:33
virtual void Blend(robFunction *function, double vmax, double vdmax)=0
robFunctionRn(double t1, const vctFixedSizeVector< double, 3 > &p1, const vctFixedSizeVector< double, 3 > &p1d, const vctFixedSizeVector< double, 3 > &p1dd, double t2, const vctFixedSizeVector< double, 3 > &p2, const vctFixedSizeVector< double, 3 > &p2d, const vctFixedSizeVector< double, 3 > &p2dd)
void Set(double t1, const vctDynamicVector< double > &p1, const vctDynamicVector< double > &p1d, const vctDynamicVector< double > &p1dd, double t2, const vctDynamicVector< double > &p2, const vctDynamicVector< double > &p2d, const vctDynamicVector< double > &p2dd)
void FinalState(vctDynamicVector< double > &p, vctDynamicVector< double > &pd, vctDynamicVector< double > &pdd)
vctDynamicVector< double > y2dd
Definition robFunctionRn.h:39
virtual ~robFunctionRn()
Definition robFunctionRn.h:63
Definition vctForwardDeclarations.h:131
Implementation of a fixed-size vector using template metaprogramming.
Definition vctFixedSizeVector.h:54
#define CISST_EXPORT
Definition cmnExportMacros.h:50
Declaration of vctDynamicVector.
Declaration of vctFixedSizeVector.