26 #ifndef MPBLOCKS_DUBINS_CURVES_EIGEN_TRIGWRAP_HPP_
27 #define MPBLOCKS_DUBINS_CURVES_EIGEN_TRIGWRAP_HPP_
31 namespace curves_eigen {
33 template <
typename Format_t>
35 static Format_t
arc(Format_t
a, Format_t
b) {
39 static Eigen::Matrix<Format_t, 2, 1>
center(
40 const Eigen::Matrix<Format_t, 3, 1>& q, Format_t r) {
44 static Format_t
angleOf(
const Eigen::Matrix<Format_t, 3, 1>& q) {
53 template <
typename Format_t>
57 static Eigen::Matrix<Format_t, 2, 1>
center(
58 const Eigen::Matrix<Format_t, 3, 1>& q, Format_t r) {
62 static Format_t
angleOf(
const Eigen::Matrix<Format_t, 3, 1>& q) {
Scalar leftAngleOf(const Scalar q_theta)
return the angle of the vector from the center of the counter clockwise (left) circle coincident to q...
empty struct used to template "variant" of three arc primitives
empty struct used to template "variant" of three arc primitives
empty struct used to template "right turn" primitive
Scalar rightAngleOf(const Scalar q_theta)
return the angle of the vector from the center of the clockwise (right) circle coincident to q...
provides static functions which call the appropriate trig function based in the template parameter sp...
__host__ __device__ Format_t rightArc(Format_t a, Format_t b)
returns the clockwise (right) distance from a to b
Eigen::Matrix< Scalar, 2, 1 > rightCenter(const Eigen::Matrix< Scalar, 3, 1 > &q, Scalar r)
return the center of a clockwise (right) circle coincident to q with radius r
empty struct used to template "left turn" primitive
Eigen::Matrix< Scalar, 2, 1 > leftCenter(const Eigen::Matrix< Scalar, 3, 1 > &q, Scalar r)
return the center of a counter clockwise (left) circle coincident to q with radius r ...
__host__ __device__ Format_t leftArc(Format_t a, Format_t b)
returns the counter clockwise (left) distance from a to b