Carma-platform v4.2.0
CARMA Platform is built on robot operating system (ROS) and utilizes open source software (OSS) that enables Cooperative Driving Automation (CDA) features to allow Automated Driving Systems to interact and cooperate with infrastructure and other vehicles through communication.
inlanecruising_plugin::smoothing::SplineI Class Referenceabstract

Interface to a spline interpolator that can be used to smoothly interpolate between points. More...

#include <SplineI.hpp>

Inheritance diagram for inlanecruising_plugin::smoothing::SplineI:
Inheritance graph
Collaboration diagram for inlanecruising_plugin::smoothing::SplineI:
Collaboration graph

Public Member Functions

virtual ~SplineI ()
 Virtual destructor to ensure delete safety for pointers to implementing classes. More...
 
virtual void setPoints (const std::vector< lanelet::BasicPoint2d > &points)=0
 Set key points which the spline will interpolate between. More...
 
virtual lanelet::BasicPoint2d operator() (double t) const =0
 Get the BasicPoint2d coordinate along the curve at t-th step. More...
 
virtual lanelet::BasicPoint2d first_deriv (double x) const =0
 Get the BasicPoint2d representing the first_deriv along the curve at t-th step. More...
 
virtual lanelet::BasicPoint2d second_deriv (double x) const =0
 Get the BasicPoint2d representing the first_deriv along the curve at t-th step. More...
 

Detailed Description

Interface to a spline interpolator that can be used to smoothly interpolate between points.

Definition at line 29 of file SplineI.hpp.

Constructor & Destructor Documentation

◆ ~SplineI()

virtual inlanecruising_plugin::smoothing::SplineI::~SplineI ( )
inlinevirtual

Virtual destructor to ensure delete safety for pointers to implementing classes.

Definition at line 36 of file SplineI.hpp.

36{};

Member Function Documentation

◆ first_deriv()

virtual lanelet::BasicPoint2d inlanecruising_plugin::smoothing::SplineI::first_deriv ( double  x) const
pure virtual

Get the BasicPoint2d representing the first_deriv along the curve at t-th step.

Parameters
tThe t-th step to solve the spline at, where t is from 0 (beginning of curve) to 1 (end of curve)
Returns
lanelet::BasicPoint2d with x, y that matches the first_deriv at t-th step along the curve. This is not partial derivatives

Implemented in inlanecruising_plugin::smoothing::BSpline.

◆ operator()()

virtual lanelet::BasicPoint2d inlanecruising_plugin::smoothing::SplineI::operator() ( double  t) const
pure virtual

Get the BasicPoint2d coordinate along the curve at t-th step.

Parameters
tThe t-th step to solve the spline at, where t is from 0 (beginning of curve) to 1 (end of curve)
Returns
lanelet::BasicPoint2d with x, y that matches the t-th step along the curve

Implemented in inlanecruising_plugin::smoothing::BSpline.

◆ second_deriv()

virtual lanelet::BasicPoint2d inlanecruising_plugin::smoothing::SplineI::second_deriv ( double  x) const
pure virtual

Get the BasicPoint2d representing the first_deriv along the curve at t-th step.

Parameters
tThe t-th step to solve the spline at, where t is from 0 (beginning of curve) to 1 (end of curve)
Returns
lanelet::BasicPoint2d with x, y that matches the second_deriv at t-th step along the curve. This is not partial derivatives

Implemented in inlanecruising_plugin::smoothing::BSpline.

◆ setPoints()

virtual void inlanecruising_plugin::smoothing::SplineI::setPoints ( const std::vector< lanelet::BasicPoint2d > &  points)
pure virtual

Set key points which the spline will interpolate between.

Parameters
pointsThe key points

Implemented in inlanecruising_plugin::smoothing::BSpline.


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