StepOverPolynome.hh
Go to the documentation of this file.
1 /*
2  * Copyright 2006, 2007, 2008, 2009, 2010,
3  *
4  * Florent Lamiraux
5  * Alireza Nakhaei
6  * Mathieu Poirier
7  * Olivier Stasse
8  *
9  * JRL, CNRS/AIST
10  *
11  * This file is part of walkGenJrl.
12  * walkGenJrl is free software: you can redistribute it and/or modify
13  * it under the terms of the GNU Lesser General Public License as published by
14  * the Free Software Foundation, either version 3 of the License, or
15  * (at your option) any later version.
16  *
17  * walkGenJrl is distributed in the hope that it will be useful,
18  * but WITHOUT ANY WARRANTY; without even the implied warranty of
19  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20  * GNU General Lesser Public License for more details.
21  * You should have received a copy of the GNU Lesser General Public License
22  * along with walkGenJrl. If not, see <http://www.gnu.org/licenses/>.
23  *
24  * Research carried out within the scope of the
25  * Joint Japanese-French Robotics Laboratory (JRL)
26  */
31 #ifndef _STEPOVER_POLYNOME_H_
32 #define _STEPOVER_POLYNOME_H_
33 
34 #include <vector>
35 
36 #include <Eigen/Dense>
37 #include <Mathematics/Polynome.hh>
38 
39 namespace PatternGeneratorJRL {
43 public:
50 
52  void SetParameters(Eigen::VectorXd boundCond, std::vector<double> timeDistr);
53 
56 };
57 
61 public:
66 
68  void SetParameters(Eigen::VectorXd Zpos, std::vector<double> Xpos);
69 
72 };
73 
78 public:
82 
84  void SetParameters(Eigen::VectorXd Xbound, std::vector<double> timedistr);
85 
88 };
89 
94 public:
102 
103  // Set the parameters
104  void SetParameters(Eigen::VectorXd boundCond, std::vector<double> timeDistr);
105 
108 };
109 
114 public:
116  StepOverSpline();
117 
119  void SetParameters(Eigen::VectorXd Points);
120 
121  double GetValueSpline(Eigen::VectorXd TimePoints, double CurrentLocalTime);
122 
123  void print();
124 
126  ~StepOverSpline();
127 
128 protected:
129  unsigned long int m_number;
130  Eigen::MatrixXd m_Coefficients;
131 };
132 
136 public:
139 
141  void SetParameters(Eigen::VectorXd Points, Eigen::VectorXd TimePoints,
142  Eigen::VectorXd DerivativeEndPoints);
143 
144  double GetValueSpline(Eigen::VectorXd TimePoints, double CurrentLocalTime);
145 
146  void print();
149 
150 protected:
151  unsigned long int m_number;
152  Eigen::MatrixXd m_Coefficients;
153 };
154 
155 } // namespace PatternGeneratorJRL
156 
157 #endif /* _STEPOVER_POLYNOME_H_ */
PatternGeneratorJRL::StepOverClampedCubicSpline::m_number
unsigned long int m_number
Definition: StepOverPolynome.hh:151
PatternGeneratorJRL::StepOverClampedCubicSpline::~StepOverClampedCubicSpline
~StepOverClampedCubicSpline()
Definition: StepOverPolynome.cpp:616
PatternGeneratorJRL::StepOverSpline::print
void print()
Definition: StepOverPolynome.cpp:459
PatternGeneratorJRL::Polynome
Definition: Polynome.hh:42
PatternGeneratorJRL::StepOverClampedCubicSpline::print
void print()
Definition: StepOverPolynome.cpp:603
PatternGeneratorJRL::StepOverClampedCubicSpline::StepOverClampedCubicSpline
StepOverClampedCubicSpline()
Definition: StepOverPolynome.cpp:477
PatternGeneratorJRL::StepOverPolynomeFoot::SetParameters
void SetParameters(Eigen::VectorXd boundCond, std::vector< double > timeDistr)
Definition: StepOverPolynome.cpp:42
PatternGeneratorJRL::StepOverPolynomeHip4::~StepOverPolynomeHip4
~StepOverPolynomeHip4()
Definition: StepOverPolynome.cpp:350
PatternGeneratorJRL::StepOverClampedCubicSpline::GetValueSpline
double GetValueSpline(Eigen::VectorXd TimePoints, double CurrentLocalTime)
Definition: StepOverPolynome.cpp:545
PatternGeneratorJRL::StepOverClampedCubicSpline::m_Coefficients
Eigen::MatrixXd m_Coefficients
Definition: StepOverPolynome.hh:152
PatternGeneratorJRL::StepOverPolynomeFootXtoTime::~StepOverPolynomeFootXtoTime
~StepOverPolynomeFootXtoTime()
Definition: StepOverPolynome.cpp:290
PatternGeneratorJRL::StepOverPolynomeFoot::StepOverPolynomeFoot
StepOverPolynomeFoot()
Definition: StepOverPolynome.cpp:38
PatternGeneratorJRL::StepOverPolynomeHip4::StepOverPolynomeHip4
StepOverPolynomeHip4()
Definition: StepOverPolynome.cpp:295
PatternGeneratorJRL::StepOverPolynomeFootZtoX
Polynome used for Z trajectory during stepover.
Definition: StepOverPolynome.hh:60
PatternGeneratorJRL::StepOverPolynomeFoot
Polynome used for Z trajectory during stepover.
Definition: StepOverPolynome.hh:42
PatternGeneratorJRL::StepOverPolynomeFootZtoX::~StepOverPolynomeFootZtoX
~StepOverPolynomeFootZtoX()
Definition: StepOverPolynome.cpp:215
PatternGeneratorJRL::StepOverPolynomeHip4::SetParameters
void SetParameters(Eigen::VectorXd boundCond, std::vector< double > timeDistr)
Definition: StepOverPolynome.cpp:299
PatternGeneratorJRL::StepOverSpline
spline function calculation class to calculate cubic splines
Definition: StepOverPolynome.hh:113
PatternGeneratorJRL::StepOverPolynomeFootXtoTime
Polynome used for X trajectory in function of time to combine with StepOverPolynomeFootZtoX.
Definition: StepOverPolynome.hh:77
PatternGeneratorJRL::StepOverPolynomeHip4
Polynome for the hip trajectory.
Definition: StepOverPolynome.hh:93
PatternGeneratorJRL::StepOverSpline::GetValueSpline
double GetValueSpline(Eigen::VectorXd TimePoints, double CurrentLocalTime)
Definition: StepOverPolynome.cpp:409
Polynome.hh
PatternGeneratorJRL::StepOverPolynomeFoot::~StepOverPolynomeFoot
~StepOverPolynomeFoot()
Definition: StepOverPolynome.cpp:158
PatternGeneratorJRL::StepOverSpline::~StepOverSpline
~StepOverSpline()
Definition: StepOverPolynome.cpp:473
PatternGeneratorJRL
\doc Simulate a rigid body
Definition: patterngeneratorinterface.hh:41
PatternGeneratorJRL::StepOverClampedCubicSpline::SetParameters
void SetParameters(Eigen::VectorXd Points, Eigen::VectorXd TimePoints, Eigen::VectorXd DerivativeEndPoints)
Definition: StepOverPolynome.cpp:480
PatternGeneratorJRL::StepOverPolynomeFootXtoTime::SetParameters
void SetParameters(Eigen::VectorXd Xbound, std::vector< double > timedistr)
Definition: StepOverPolynome.cpp:223
PatternGeneratorJRL::StepOverPolynomeFootXtoTime::StepOverPolynomeFootXtoTime
StepOverPolynomeFootXtoTime()
Definition: StepOverPolynome.cpp:219
PatternGeneratorJRL::StepOverPolynomeFootZtoX::StepOverPolynomeFootZtoX
StepOverPolynomeFootZtoX()
Definition: StepOverPolynome.cpp:161
PatternGeneratorJRL::StepOverSpline::SetParameters
void SetParameters(Eigen::VectorXd Points)
Definition: StepOverPolynome.cpp:358
PatternGeneratorJRL::StepOverSpline::StepOverSpline
StepOverSpline()
Definition: StepOverPolynome.cpp:354
PatternGeneratorJRL::StepOverClampedCubicSpline
Definition: StepOverPolynome.hh:135
PatternGeneratorJRL::StepOverPolynomeFootZtoX::SetParameters
void SetParameters(Eigen::VectorXd Zpos, std::vector< double > Xpos)
Definition: StepOverPolynome.cpp:165
PatternGeneratorJRL::StepOverSpline::m_number
unsigned long int m_number
Definition: StepOverPolynome.hh:129
PatternGeneratorJRL::StepOverSpline::m_Coefficients
Eigen::MatrixXd m_Coefficients
Definition: StepOverPolynome.hh:130