Drake
pure_pursuit.h
Go to the documentation of this file.
1 #pragma once
2 
9 
10 namespace drake {
11 namespace automotive {
12 
31 template <typename T>
32 class PurePursuit {
33  public:
35  PurePursuit() = delete;
36 
49  // TODO(jadecastro): Infer the direction of travel rather than require it.
50  static T Evaluate(const PurePursuitParams<T>& pp_params,
51  const SimpleCarParams<T>& car_params,
52  const LaneDirection& lane_direction,
54 
59  const T& s_lookahead, const LaneDirection& lane_direction,
61 };
62 
63 } // namespace automotive
64 } // namespace drake
A position in 3-dimensional geographical Cartesian space, i.e., in the world frame, consisting of three components x, y, and z.
Definition: lane_data.h:128
Definition: automotive_demo.cc:88
static T Evaluate(const PurePursuitParams< T > &pp_params, const SimpleCarParams< T > &car_params, const LaneDirection &lane_direction, const systems::rendering::PoseVector< T > &pose)
Evaluates the required steering angle in radians using the pure-pursuit method.
Definition: pure_pursuit.cc:22
PurePursuit computes the required steering angle to achieve a goal point on an continuous planar path...
Definition: pure_pursuit.h:32
LaneDirection holds the lane that a MaliputRailcar is traversing and the direction in which it is mov...
Definition: lane_direction.h:13
A 7-vector representing the transform of frame A in the world frame, X_WA, in the form {p_WA...
Definition: pose_vector.h:19
static const maliput::api::GeoPosition ComputeGoalPoint(const T &s_lookahead, const LaneDirection &lane_direction, const systems::rendering::PoseVector< T > &pose)
Computes the goal point at a distance s_lookahead from the closest position on the curve in the inten...
Definition: pure_pursuit.cc:50
Specializes BasicVector with specific getters and setters.
Definition: pure_pursuit_params.h:36
Isometry3< double > pose
Definition: pose_smoother.cc:28
#define DRAKE_NO_COPY_NO_MOVE_NO_ASSIGN(Classname)
DRAKE_NO_COPY_NO_MOVE_NO_ASSIGN deletes the special member functions for copy-construction, copy-assignment, move-construction, and move-assignment.
Definition: drake_copyable.h:35
Specializes BasicVector with specific getters and setters.
Definition: simple_car_params.h:41
Provides careful macros to selectively enable or disable the special member functions for copy-constr...