Skip to content
Snippets Groups Projects
Commit 0d58d93f authored by mnaveau's avatar mnaveau
Browse files

rectify absisse in x for the bspline trajectories.

TODO check the corretness of the bsplines trajectories
parent 33cc6533
No related branches found
No related tags found
No related merge requests found
......@@ -173,25 +173,9 @@ void LeftAndRightFootTrajectoryGenerationMultiple::SetAnInterval(unsigned int In
FootInitialPosition.domega2);
// X axis.
double epsilon = 0.0001 ;
if (FootFinalPosition.z <= FootInitialPosition.z ) //down
aFTGM->SetParametersWithInitPosInitSpeed(IntervalIndex,
FootTrajectoryGenerationStandard::X_AXIS,
0.8*m_DeltaTj[IntervalIndex],
FootFinalPosition.x,
FootInitialPosition.x,
FootInitialPosition.dx);
else if ( m_StepHeight <= epsilon ) // normal walk
aFTGM->SetParametersWithInitPosInitSpeed(IntervalIndex,
FootTrajectoryGenerationStandard::X_AXIS,
0.9*m_DeltaTj[IntervalIndex],
FootFinalPosition.x,
FootInitialPosition.x,
FootInitialPosition.dx);
else if (FootFinalPosition.z > FootInitialPosition.z ) // up
aFTGM->SetParametersWithInitPosInitSpeed(IntervalIndex,
aFTGM->SetParametersWithInitPosInitSpeed(IntervalIndex,
FootTrajectoryGenerationStandard::X_AXIS,
0.75*m_DeltaTj[IntervalIndex],
m_DeltaTj[IntervalIndex],
FootFinalPosition.x,
FootInitialPosition.x,
FootInitialPosition.dx);
......
......@@ -322,10 +322,10 @@ double FootBSplines::FootComputePosition(double t)
double FootBSplines::FootComputeVelocity(double t)
{
if (m_degree >=1){
if (t<m_FT)
if (t<=m_FT)
return DerivativeBsplines().ComputeBsplines(t).y;
else
return DerivativeBsplines().ComputeBsplines(m_FT - t).y;
return DerivativeBsplines().ComputeBsplines(m_FT).y;
}
else
{
......@@ -337,10 +337,10 @@ double FootBSplines::FootComputeVelocity(double t)
double FootBSplines::FootComputeAcc(double t)
{
if (m_degree >=2){
if (t<m_FT)
if (t<=m_FT)
return DerivativeBsplines().DerivativeBsplines().ComputeBsplines(t).y;
else
return DerivativeBsplines().DerivativeBsplines().ComputeBsplines(m_FT - t).y;
return DerivativeBsplines().DerivativeBsplines().ComputeBsplines(m_FT).y;
}
else
{
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment