Buran Motion Planning Framework
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
bmpf::MonotoneTrajectoryFinder Class Reference

#include <monotone_trajectory_finder.h>

Public Member Functions

virtual void init (const std::shared_ptr< bmpf::Scene > &scene, double intervalDuration, bool showTrace, unsigned int maxOpenSetSize, int gridSize, unsigned int maxNodeCnt, int checkCnt, int threadCnt=1)
 
virtual void prepareTrajectory (const std::vector< double > &startState, const std::vector< double > &endState, int &errorCode)
 
virtual ~MonotoneTrajectoryFinder ()
 
std::vector< double > getTrajectoryNode (double tm)
 получить все ноды траекторий получить все ноды траекторий (первая координата время, потом положения, потом скорости, потом ускорения, размерность каждого узла можно узнать из сцены scene->getJointCnt() More...
 
std::vector< double > getTrajectoryPosition (double tm)
 
std::vector< double > getTrajectorySpeed (double tm)
 
std::vector< double > getTrajectoryAcceleration (double tm)
 
double getWholeDuration () const
 
const std::vector< std::vector< double > > & getLastPath () const
 
const std::vector< std::vector< double > > & getLastTrajectory () const
 
int getNodeCnt () const
 
const std::shared_ptr< bmpf::PathFinder > & getPF () const
 
const std::shared_ptr< bmpf::Scene > & getScene () const
 
bool isReady () const
 

Protected Member Functions

void _prepareTrajectory (const std::vector< double > &startState, const std::vector< double > &endState, std::vector< double > &timeIntervals, int &errorCode)
 

Protected Attributes

std::vector< std::shared_ptr< MonotoneCubicInterpolation > > _interpolators
 
std::vector< std::vector< double > > _lastPath
 
std::shared_ptr< bmpf::PathFinder_pf
 
std::vector< double > _timeIntervals
 
double _startIntervalDuration {}
 
std::vector< std::vector< double > > _lastTrajectory
 
int _nodeCnt {}
 
std::shared_ptr< bmpf::Scene_scene
 
double _wholeDuration {}
 
bool _isReady {}
 

Detailed Description

Планировщик монотонных траекторий

Constructor & Destructor Documentation

◆ ~MonotoneTrajectoryFinder()

virtual bmpf::MonotoneTrajectoryFinder::~MonotoneTrajectoryFinder ( )
inlinevirtual

Деструктор

Member Function Documentation

◆ _prepareTrajectory()

void MonotoneTrajectoryFinder::_prepareTrajectory ( const std::vector< double > &  startState,
const std::vector< double > &  endState,
std::vector< double > &  timeIntervals,
int &  errorCode 
)
protected

Подготовка траектории

Parameters
startStateстартовое положение
endStateконечное
timeIntervalsинтервалы времени
errorCodeкод ошибки

◆ getLastPath()

const std::vector<std::vector<double> >& bmpf::MonotoneTrajectoryFinder::getLastPath ( ) const
inline

Получить последний построенный путь

Returns
последний построенный путь

◆ getLastTrajectory()

const std::vector<std::vector<double> >& bmpf::MonotoneTrajectoryFinder::getLastTrajectory ( ) const
inline

Получить последняя построенная траектория

Returns
последнюю построенную траекторию

◆ getNodeCnt()

int bmpf::MonotoneTrajectoryFinder::getNodeCnt ( ) const
inline

Получить количество опорных точек траектории

Returns
количество опорных точек траектории

◆ getPF()

const std::shared_ptr<bmpf::PathFinder>& bmpf::MonotoneTrajectoryFinder::getPF ( ) const
inline

Получить планировщик пути

Returns
планировщик пути

◆ getScene()

const std::shared_ptr<bmpf::Scene>& bmpf::MonotoneTrajectoryFinder::getScene ( ) const
inline

Получить сцену

Returns
сцена

◆ getTrajectoryAcceleration()

std::vector< double > MonotoneTrajectoryFinder::getTrajectoryAcceleration ( double  tm)

получить все ускорения траекторий (первая координата время, потом ускорения)

Parameters
tmвремя
Returns
все ускорения траекторий

◆ getTrajectoryNode()

std::vector< double > MonotoneTrajectoryFinder::getTrajectoryNode ( double  tm)

получить все ноды траекторий получить все ноды траекторий (первая координата время, потом положения, потом скорости, потом ускорения, размерность каждого узла можно узнать из сцены scene->getJointCnt()

Parameters
tmвремя
Returns
все ноды траекторий

◆ getTrajectoryPosition()

std::vector< double > MonotoneTrajectoryFinder::getTrajectoryPosition ( double  tm)

получить все положения траекторий (первая координата время, потом положения)

Parameters
tmвремя
Returns
все положения траекторий

◆ getTrajectorySpeed()

std::vector< double > MonotoneTrajectoryFinder::getTrajectorySpeed ( double  tm)

получить все скорости траекторий (первая координата время, потом скорости)

Parameters
tmвремя
Returns
все скорости траекторий

◆ getWholeDuration()

double bmpf::MonotoneTrajectoryFinder::getWholeDuration ( ) const
inline

Получить общее время траектории

Returns
общее время траектории

◆ init()

void MonotoneTrajectoryFinder::init ( const std::shared_ptr< bmpf::Scene > &  scene,
double  intervalDuration,
bool  showTrace,
unsigned int  maxOpenSetSize,
int  gridSize,
unsigned int  maxNodeCnt,
int  checkCnt,
int  threadCnt = 1 
)
virtual

инициализация

Parameters
sceneсцена
intervalDurationинтервал между временными метками
showTraceфлаг, выводить ли лог
maxOpenSetSizeмаксимальный размер открытого множества
gridSizeразмер сетки
maxNodeCntмаксимальное кол-во нод в закрытом множестве
checkCntколичество проверок каждого этапа пути
threadCntколичество потоков планировщика

◆ isReady()

bool bmpf::MonotoneTrajectoryFinder::isReady ( ) const
inline

Получить флаг, готов ли планировщик

Returns
флаг, готов ли планировщик

◆ prepareTrajectory()

void MonotoneTrajectoryFinder::prepareTrajectory ( const std::vector< double > &  startState,
const std::vector< double > &  endState,
int &  errorCode 
)
virtual

Подготовка траектории

Parameters
startStateстартовое положение
endStateконечное
errorCodeкод ошибки

Member Data Documentation

◆ _interpolators

std::vector<std::shared_ptr<MonotoneCubicInterpolation> > bmpf::MonotoneTrajectoryFinder::_interpolators
protected

Интерполяторы для каждой из координат

◆ _isReady

bool bmpf::MonotoneTrajectoryFinder::_isReady {}
protected

флаг, готов ли планировщик

◆ _lastPath

std::vector<std::vector<double> > bmpf::MonotoneTrajectoryFinder::_lastPath
protected

Последний построенный путь

◆ _lastTrajectory

std::vector<std::vector<double> > bmpf::MonotoneTrajectoryFinder::_lastTrajectory
protected

Последняя построенная траектория

◆ _nodeCnt

int bmpf::MonotoneTrajectoryFinder::_nodeCnt {}
protected

количество опорных точек траектории

◆ _pf

std::shared_ptr<bmpf::PathFinder> bmpf::MonotoneTrajectoryFinder::_pf
protected

планировщик пути

◆ _scene

std::shared_ptr<bmpf::Scene> bmpf::MonotoneTrajectoryFinder::_scene
protected

сцена

◆ _startIntervalDuration

double bmpf::MonotoneTrajectoryFinder::_startIntervalDuration {}
protected

временной интервал между соседними точками траектории

◆ _timeIntervals

std::vector<double> bmpf::MonotoneTrajectoryFinder::_timeIntervals
protected

список временных интервалов

◆ _wholeDuration

double bmpf::MonotoneTrajectoryFinder::_wholeDuration {}
protected

общее время траектории


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