Formula Student Autonomous Systems
The code for the main driverless system
Loading...
Searching...
No Matches
skidpad.hpp
Go to the documentation of this file.
1#ifndef SRC_PLANNING_INCLUDE_PLANNING_SKIDPAD_HPP_
2#define SRC_PLANNING_INCLUDE_PLANNING_SKIDPAD_HPP_
3
4#include <vector>
5#include <utility>
6#include <Eigen/Dense>
7#include <rclcpp/rclcpp.hpp>
8
13
14
18
23class Skidpad {
24public:
25
26 Skidpad() = default;
27
28 explicit Skidpad(SkidpadConfig config) : config_(config) {}
29
37 std::vector<PathPoint> skidpad_path(const std::vector<Cone>& cone_array,
39private:
40
42
44 std::vector<std::pair<double, double>> reference_cones_;
45 std::vector<PathPoint> hardcoded_path_;
46 std::vector<PathPoint> predefined_path_;
47
54 Eigen::Matrix4f align_cones_with_icp(const std::vector<Cone>& cone_array);
55
64 const std::vector<PathPoint>& path,
66};
67
68#endif // SRC_PLANNING_INCLUDE_PLANNING_SKIDPAD_HPP_
class that defines the skidpad path algorithm
Definition skidpad.hpp:23
std::vector< std::pair< double, double > > reference_cones_
Definition skidpad.hpp:44
Eigen::Matrix4f align_cones_with_icp(const std::vector< Cone > &cone_array)
Aligns detected cones with reference cones using ICP.
Definition skidpad.cpp:18
bool skidpad_data_loaded_
Definition skidpad.hpp:43
SkidpadConfig config_
Definition skidpad.hpp:41
Skidpad()=default
std::vector< PathPoint > predefined_path_
Definition skidpad.hpp:46
std::vector< PathPoint > skidpad_path(const std::vector< Cone > &cone_array, common_lib::structures::Pose pose)
Generate a path for skidpad course.
Definition skidpad.cpp:85
std::vector< PathPoint > hardcoded_path_
Definition skidpad.hpp:45
size_t find_closest_path_index(const std::vector< PathPoint > &path, const common_lib::structures::Pose &pose)
Finds the closest point index in a path to a given pose.
Definition skidpad.cpp:60
Skidpad(SkidpadConfig config)
Definition skidpad.hpp:28
Definition types.hpp:66
Configuration parameters for the Skidpad class.
Struct for pose representation.
Definition pose.hpp:13