dubins_planner.h 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. #ifndef DUBINS_PLANNER_H
  2. #define DUBINS_PLANNER_H
  3. #include "base_planner.h"
  4. #include <adc_tools/dubins.h>
  5. #include <QCoreApplication>
  6. #include <math.h>
  7. #include <iostream>
  8. #include <stdio.h>
  9. #include <string.h>
  10. namespace iv{
  11. namespace decition{
  12. class DubinsPlanner : public BasePlanner{
  13. public:
  14. DubinsPlanner();
  15. ~DubinsPlanner();
  16. static std::vector<iv::GPSData> gpsMap;
  17. /**
  18. * @brief iv::decition::LaneChangePlanner::getPath
  19. * 采用的车道变换的局部路径生成方法。计算原始地图路径偏移offset距离之后的路径。
  20. *
  21. * @param now_gps_ins 实时gps信息
  22. * @param gpsMapLine 地图数据点
  23. * @param PathPoint 地图路线中距离车辆位置最近的一个点的序号
  24. * @param offset 在车辆避障中,地图源路线所在车道 与 即将去往的车道 之间的距离差值。可以为负值。
  25. * @param lidarGridPtr 激光雷达信息网格
  26. * @return 返回一条车辆坐标系下的路径
  27. */
  28. std::vector<iv::Point2D> getPath(GPS_INS now_gps_ins, const std::vector<GPSData>& gpsMapLine, int PathPoint, double offset, iv::LidarGridPtr lidarGridPtr);
  29. int static printConfiguration(double q[3], double x, void* user_data);
  30. };
  31. }
  32. }
  33. #endif // DUBINS_PLANNER_H