cisst-saw
Loading...
Searching...
No Matches
robQuintic.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 _robQuintic_h
21#define _robQuintic_h
22
23//#include <cisstVector/vctFixedSizeVector.h>
26
28
29 private:
30
31 bool IsSet;
32 std::vector< vctFixedSizeVector<double,6> > X; // the quintic parameters
33
35 ComputeParameters( double t1, double y1, double y1d, double y1dd,
36 double t2, double y2, double y2d, double y2dd );
37
38 void EvaluateQuintic( double t,
40 double& y, double& yd, double& ydd);
41
42 public:
43
45 robQuintic( void );
46
48
61 robQuintic( double t1,
65 double t2,
69
71
84 robQuintic( double t1,
88 double t2,
92
93 virtual ~robQuintic() {}
94
95 void Set( double t1,
99 double t2,
103
104 void Evaluate( double t,
108
109 void Evaluate( double t,
113
114
115 void Blend( robFunction* function,
116 const vctDynamicVector<double>& qdmax,
117 const vctDynamicVector<double>& qddmax );
118
119 void Blend( robFunction*, double, double );
120};
121
122#endif // _robQuintic_h
robFunction(void)
double t1
Definition robFunction.h:35
double t2
Definition robFunction.h:36
vctDynamicVector< double > y1d
Definition robFunctionRn.h:34
vctDynamicVector< double > y1dd
Definition robFunctionRn.h:35
robFunctionRn(void)
vctDynamicVector< double > y2
Definition robFunctionRn.h:37
vctDynamicVector< double > y2d
Definition robFunctionRn.h:38
vctDynamicVector< double > y1
Definition robFunctionRn.h:33
vctDynamicVector< double > y2dd
Definition robFunctionRn.h:39
void Blend(robFunction *, double, double)
void Set(double t1, const vctDynamicVector< double > &y1, const vctDynamicVector< double > &y1d, const vctDynamicVector< double > &y1dd, double t2, const vctDynamicVector< double > &y2, const vctDynamicVector< double > &y2d, const vctDynamicVector< double > &y2dd)
robQuintic(void)
void Evaluate(double t, vctFixedSizeVector< double, 3 > &y, vctFixedSizeVector< double, 3 > &yd, vctFixedSizeVector< double, 3 > &ydd)
robQuintic(double t1, const vctFixedSizeVector< double, 3 > &y1, const vctFixedSizeVector< double, 3 > &y1d, const vctFixedSizeVector< double, 3 > &y1dd, double t2, const vctFixedSizeVector< double, 3 > &y2, const vctFixedSizeVector< double, 3 > &y2d, const vctFixedSizeVector< double, 3 > &y2dd)
Define a 3D quintic function .
void Blend(robFunction *function, const vctDynamicVector< double > &qdmax, const vctDynamicVector< double > &qddmax)
robQuintic(double t1, const vctDynamicVector< double > &y1, const vctDynamicVector< double > &y1d, const vctDynamicVector< double > &y1dd, double t2, const vctDynamicVector< double > &y2, const vctDynamicVector< double > &y2d, const vctDynamicVector< double > &y2dd)
Define a N quintic functions .
void Evaluate(double t, vctDynamicVector< double > &y, vctDynamicVector< double > &yd, vctDynamicVector< double > &ydd)
virtual ~robQuintic()
Definition robQuintic.h:93
Definition vctForwardDeclarations.h:131
Implementation of a fixed-size vector using template metaprogramming.
Definition vctFixedSizeVector.h:54
#define CISST_EXPORT
Definition cmnExportMacros.h:50