26 #ifndef MPBLOCKS_DUBINS_CURVES_EIGEN_SOLVER_HPP_
27 #define MPBLOCKS_DUBINS_CURVES_EIGEN_SOLVER_HPP_
31 namespace curves_eigen {
33 template <SolutionId
idx,
typename Format_t>
40 const Eigen::Matrix<Format_t, 3, 1>& q1,
47 const Eigen::Matrix<Format_t, 3, 1>& q0,
48 const Eigen::Matrix<Format_t, 3, 1>& q1,
57 template <
typename Format_t>
62 const Eigen::Matrix<Format_t, 3, 1>& q1,
68 const Eigen::Matrix<Format_t, 3, 1>& q0,
69 const Eigen::Matrix<Format_t, 3, 1>& q1,
75 template <
typename Format_t>
77 const Eigen::Matrix<Format_t, 3, 1>& q1,
82 template <
typename Format_t>
84 const Eigen::Matrix<Format_t, 3, 1>& q0,
85 const Eigen::Matrix<Format_t, 3, 1>& q1,
95 #endif // MPBLOCKS_DUBINS_CURVES_EIGEN_SOLVER_HPP_
static Result_t solve_specific(int solnId, const Eigen::Matrix< Format_t, 3, 1 > &q0, const Eigen::Matrix< Format_t, 3, 1 > &q1, const Format_t r)
static Result_t solve(const Vector3d_t &q0, const Vector3d_t &q1, const Format_t r)
Path< Format_t > solve_specific(int solver, const Eigen::Matrix< Format_t, 3, 1 > &q0, const Eigen::Matrix< Format_t, 3, 1 > &q1, const Format_t r)
interface for different solutions, this is specialized for each Id in the SolutionId enum ...
Path< Format_t > solve(const Eigen::Matrix< Format_t, 3, 1 > &q0, const Eigen::Matrix< Format_t, 3, 1 > &q1, const Format_t r)
Solver< idx, Format_t > Solver_t
Encodes a dubins path primitive, which is three connected arc segments.
static Result_t solve(const Eigen::Matrix< Format_t, 3, 1 > &q0, const Eigen::Matrix< Format_t, 3, 1 > &q1, const Format_t r)
Path< Format_t > Result_t
Path< Format_t > bestOf(const Path< Format_t > &r0, const Path< Format_t > &r1, const Format_t r)
SolverIterator<(SolutionId)(idx+1), Format_t > Next_t