Buran Motion Planning Framework
collider.h
1 #pragma once
2 
3 #include <Eigen/Dense>
4 
5 #include "solid_3d_object.h"
6 #include "MT_Quaternion.h"
7 
8 namespace bmpf {
23  class Collider {
24  public:
34  virtual void init(std::vector<std::vector<std::string>> groupedModelPaths, bool subColliders) = 0;
35 
43  virtual void paint(std::vector<Eigen::Matrix4d> matrices, bool onlyRobot) = 0;
44 
50  virtual bool isCollided(std::vector<Eigen::Matrix4d> matrices) = 0;
51 
61  virtual bool isCollided(std::vector<Eigen::Matrix4d> matrices, std::vector<int> robotIndexes) = 0;
62 
69  virtual std::vector<float> getPoints(std::vector<Eigen::Matrix4d> matrices) = 0;
70 
82  virtual std::vector<double> getBoxCoords(unsigned long robotNum, std::vector<Eigen::Matrix4d> matrices) = 0;
83 
96  virtual std::vector<double> getBoxPoints(unsigned long robotNum, std::vector<Eigen::Matrix4d> matrices) = 0;
97 
98 
99  };
100 
101 
102 }
bmpf::Collider::getPoints
virtual std::vector< float > getPoints(std::vector< Eigen::Matrix4d > matrices)=0
bmpf::Collider
Базовый класс для всех коллайдеров Базовый класс для всех коллайдеров, все функции являются чисто вир...
Definition: collider.h:23
bmpf::Collider::getBoxCoords
virtual std::vector< double > getBoxCoords(unsigned long robotNum, std::vector< Eigen::Matrix4d > matrices)=0
получить координаты куба, ограничивающего объём робота получить координаты куба, ограничивающего объё...
bmpf::Collider::getBoxPoints
virtual std::vector< double > getBoxPoints(unsigned long robotNum, std::vector< Eigen::Matrix4d > matrices)=0
получить точки куба, ограничивающего объём робота получить точки куба, ограничивающего объём,...
bmpf::Collider::init
virtual void init(std::vector< std::vector< std::string >> groupedModelPaths, bool subColliders)=0
bmpf::Collider::isCollided
virtual bool isCollided(std::vector< Eigen::Matrix4d > matrices)=0
bmpf::Collider::paint
virtual void paint(std::vector< Eigen::Matrix4d > matrices, bool onlyRobot)=0