Public Member Functions | Static Public Attributes | Private Member Functions | Private Attributes
spline_smoother::ClampedCubicSplineSmoother< T > Class Template Reference

Generates a clamped cubic spline trajectory from the input waypoints. More...

#include <clamped_cubic_spline_smoother.h>

Inheritance diagram for spline_smoother::ClampedCubicSplineSmoother< T >:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 ClampedCubicSplineSmoother ()
virtual bool smooth (const T &trajectory_in, T &trajectory_out) const
 Smooths the input position trajectory by generating velocities and accelerations at the waypoints.
virtual ~ClampedCubicSplineSmoother ()

Static Public Attributes

static const int MAX_TRIDIAGONAL_SOLVER_ELEMENTS = 20

Private Member Functions

bool smoothSegment (std::vector< trajectory_msgs::JointTrajectoryPoint > &waypoints) const

Private Attributes

NumericalDifferentiationSplineSmoother
< T > 
num_diff_spline_smoother_

Detailed Description

template<typename T>
class spline_smoother::ClampedCubicSplineSmoother< T >

Generates a clamped cubic spline trajectory from the input waypoints.

This spline smoother forms cubic spline segments between way-points. The velocities at the way-points are generated by constraining accelerations of adjoining sections to be equal, constraining start and end velocities to be equal to zero, then solving the resulting linear system of equations.

Processing time is O(N), but this method appears to be numerically unstable for long trajectories (N>20)

Definition at line 59 of file clamped_cubic_spline_smoother.h.


Constructor & Destructor Documentation

Definition at line 83 of file clamped_cubic_spline_smoother.h.

template<typename T >
spline_smoother::ClampedCubicSplineSmoother< T >::~ClampedCubicSplineSmoother ( ) [virtual]

Definition at line 88 of file clamped_cubic_spline_smoother.h.


Member Function Documentation

template<typename T >
bool spline_smoother::ClampedCubicSplineSmoother< T >::smooth ( const T &  trajectory_in,
T &  trajectory_out 
) const [virtual]

Smooths the input position trajectory by generating velocities and accelerations at the waypoints.

Returns:
true if successful, false if not

Implements spline_smoother::SplineSmoother< T >.

Definition at line 93 of file clamped_cubic_spline_smoother.h.

template<typename T >
bool spline_smoother::ClampedCubicSplineSmoother< T >::smoothSegment ( std::vector< trajectory_msgs::JointTrajectoryPoint > &  waypoints) const [private]

Definition at line 118 of file clamped_cubic_spline_smoother.h.


Member Data Documentation

template<typename T>
const int spline_smoother::ClampedCubicSplineSmoother< T >::MAX_TRIDIAGONAL_SOLVER_ELEMENTS = 20 [static]

Definition at line 65 of file clamped_cubic_spline_smoother.h.

Definition at line 76 of file clamped_cubic_spline_smoother.h.


The documentation for this class was generated from the following file:


spline_smoother
Author(s): Mrinal Kalakrishnan / mail@mrinal.net
autogenerated on Mon Dec 2 2013 12:35:44