Buran Motion Planning Framework
|
3 #include "base/robot.h"
28 explicit Scene(
const std::vector<std::shared_ptr<bmpf::BaseRobot>> &robot);
47 unsigned long addObject(std::string path);
55 unsigned long addObject(std::string path, std::vector<double> &transformVector);
115 std::vector<std::shared_ptr<bmpf::Link>>
getLinks()
const {
return _links; }
174 std::vector<Eigen::Matrix4d>
232 bool isStateEnabled(std::vector<double> state,
unsigned long robotNum);
244 const std::vector<std::shared_ptr<bmpf::BaseRobot>> &
getRobots()
const {
return _objects; }
264 std::vector<double>
getSingleObjectState(
const std::vector<double> &state,
unsigned long objectNum);
326 static std::vector<double>
concatenateStates(
const std::vector<std::vector<double>> &states);
333 template<
typename ...ArgsT>
341 static std::vector<double>
concatenateStates(std::initializer_list<std::vector<double>> states);
348 template<
typename ...ArgsT>
356 static std::vector<int>
concatenateCoords(
const std::vector<std::vector<int>> &coords);
386 std::vector<double> _maxSpeedModules;
390 std::vector<double> _maxAccelerationModules;
394 std::vector<std::pair<long, long>> _jointIndexRanges;
398 unsigned int _jointCnt{};
402 std::vector<std::shared_ptr<bmpf::JointParams>> _jointParams;
408 std::vector<std::shared_ptr<bmpf::Link>> _links;
412 std::vector<std::shared_ptr<bmpf::BaseRobot>> _objects;
421 std::vector<std::shared_ptr<Scene>> _singleRobotScenes;
425 std::vector<bool> _areObjectsJointed;
429 std::vector<int> _notJointedObjectIndexes;
433 std::vector<int> _jointedObjectIndexes;
unsigned long addObject(std::string path)
Definition: scene.cpp:75
bool isStateEnabled(const std::vector< double > &state)
Definition: scene.cpp:499
const std::vector< std::shared_ptr< bmpf::BaseRobot > > & getRobots() const
Definition: scene.h:244
std::vector< int > getJointedObjectIndexes()
Definition: scene.h:368
std::vector< std::vector< double > > getGroupedTranslation() const
Definition: scene.cpp:534
std::vector< double > getEndEffectorPositions(const std::vector< double > &state)
получить список положений (x,y,z) рабочих инструментов всех роботов получить список положений (x,...
Definition: scene.cpp:332
void _initObjects()
Definition: scene.cpp:107
std::vector< std::shared_ptr< bmpf::Link > > getLinks() const
Definition: scene.h:115
std::vector< double > getEndEffectorRGVectors(const std::vector< double > &state)
Definition: scene.cpp:402
std::vector< std::vector< double > > getGroupedTransformVector() const
Definition: scene.cpp:567
std::vector< std::shared_ptr< Scene > > getSingleRobotScenes()
Definition: scene.h:256
unsigned long getJointCnt() const
Definition: scene.h:85
void deleteRobot(long robotNum)
Definition: scene.cpp:146
void setGroupedTransformVector(std::vector< std::vector< double >> transformVectors)
Definition: scene.cpp:643
void setGroupedTranslation(std::vector< std::vector< double >> groupedTranslation)
Definition: scene.cpp:590
std::vector< double > getMaxAccelerationModules()
Definition: scene.h:109
std::vector< std::vector< double > > getGroupedRotation() const
Definition: scene.cpp:545
std::vector< double > getEndEffectorDiff2Positions(const std::vector< double > &state, int iVal, int jVal)
Definition: scene.cpp:374
std::vector< double > concatenateStates(ArgsT ... states)
Definition: scene.h:334
std::vector< double > getEndEffectorDiffRGVector(const std::vector< double > &state, int iVal)
Definition: scene.cpp:420
std::vector< double > getAllLinkPositions(const std::vector< double > &state)
Definition: scene.cpp:455
bool isSingleActiveRobot() const
Definition: scene.h:91
std::vector< double > getRandomState()
Definition: scene.cpp:519
std::vector< double > getMaxSpeedModules()
Definition: scene.h:103
void saveToFile(const std::string &path)
Definition: scene.cpp:155
std::vector< std::vector< std::string > > getGroupedModelPaths() const
Definition: scene.cpp:579
std::vector< int > concatenateCoords(ArgsT ... states)
Definition: scene.h:349
void setGroupedRotation(std::vector< std::vector< double >> groupedRotation)
Definition: scene.cpp:608
std::vector< double > getAllLinkRGVectors(const std::vector< double > &state)
Definition: scene.cpp:472
static std::vector< double > concatenateStates(const std::vector< std::vector< double >> &states)
Definition: scene.cpp:51
std::vector< double > getEndEffectorDiffPositions(const std::vector< double > &state, int iVal)
Definition: scene.cpp:350
std::vector< std::pair< long, long > > getJointIndexRanges()
Definition: scene.h:79
std::vector< double > getSingleObjectState(const std::vector< double > &state, unsigned long objectNum)
Definition: scene.cpp:240
std::vector< Eigen::Matrix4d > getEndEffectorDiff2TransformMatrices(const std::vector< double > &state, int iVal, int jVal)
Definition: scene.cpp:315
std::vector< Eigen::Matrix4d > getEndEffectorDiffTransformMatrices(const std::vector< double > &state, int iVal)
Definition: scene.cpp:295
std::vector< Eigen::Matrix4d > getTransformMatrices(const std::vector< double > &state)
получить список матриц преобразований всех звеньев получить список матриц преобразований всех звеньев...
Definition: scene.cpp:254
std::vector< Eigen::Matrix4d > getEndEffectorTransformMatrices(const std::vector< double > &state)
Definition: scene.cpp:277
std::vector< double > getEndEffectorDiff2RGVector(const std::vector< double > &state, int iVal, int jVal)
Definition: scene.cpp:439
void loadFromFile(const std::string &path)
Definition: scene.cpp:185
unsigned long getActiveRobotCnt() const
посчитать количество активных роботов посчитать количество активных роботов на сцене (объектов с пере...
Definition: scene.cpp:25
void setGroupedScale(std::vector< std::vector< double >> groupedScale)
Definition: scene.cpp:626
std::vector< int > getNotJointedObjectIndexes()
Definition: scene.h:374
std::vector< bool > areObjectsJointed()
Definition: scene.h:362
std::vector< std::shared_ptr< bmpf::JointParams > > getJointParamsList()
Definition: scene.h:97
std::vector< std::vector< double > > getGroupedScale() const
Definition: scene.cpp:556
std::string getScenePath() const
Definition: scene.h:250