43 #ifndef FASTRACK_STATE_PLANAR_DUBINS_3D_H 44 #define FASTRACK_STATE_PLANAR_DUBINS_3D_H 66 inline double X()
const {
return x_; }
67 inline double Y()
const {
return y_; }
68 inline double Z()
const {
return z_; }
70 inline double V()
const {
return v_; }
71 inline double Vx()
const {
return v_ * std::cos(
theta_); }
72 inline double Vy()
const {
return v_ * std::sin(
theta_); }
73 inline double Vz()
const {
return 0.0; }
86 inline double &
X() {
return x_; }
87 inline double &
Y() {
return y_; }
88 inline double &
Z() {
return z_; }
90 inline double &
V() {
return v_; }
107 void FromRos(
const fastrack_msgs::State& msg);
108 fastrack_msgs::State
ToRos()
const;
117 static void SetBounds(
const std::vector<double> &lower,
118 const std::vector<double> &upper);
void SetConfigurationDot(const VectorXd &configuration_dot)
PlanarDubins3D & operator*=(double s)
fastrack_msgs::State ToRos() const
Vector3d Velocity() const
friend PlanarDubins3D operator+(PlanarDubins3D lhs, const PlanarDubins3D &rhs)
VectorXd ToVector() const
Vector3d Position() const
static PlanarDubins3D upper_
PlanarDubins3D & operator/=(double s)
static VectorXd SampleConfiguration()
static constexpr double kDefaultSpeed
friend PlanarDubins3D operator/(PlanarDubins3D lhs, double s)
PlanarDubins3D(double x, double y, double theta, double v)
PlanarDubins3D(double x, double y, double theta)
friend PlanarDubins3D operator-(PlanarDubins3D lhs, const PlanarDubins3D &rhs)
void FromVector(const VectorXd &x)
PlanarDubins3D & operator-=(const PlanarDubins3D &rhs)
static VectorXd GetConfigurationUpper()
VectorXd Configuration() const
static const PlanarDubins3D & GetLower()
static constexpr size_t StateDimension()
friend PlanarDubins3D operator*(PlanarDubins3D lhs, double s)
PlanarDubins3D & operator+=(const PlanarDubins3D &rhs)
static constexpr size_t ConfigurationDimension()
static const PlanarDubins3D & GetUpper()
static VectorXd GetConfigurationLower()
static PlanarDubins3D Sample()
void FromRos(const fastrack_msgs::State &msg)
static void SetBounds(const PlanarDubins3D &lower, const PlanarDubins3D &upper)
static PlanarDubins3D lower_
std::vector< Vector3d > OccupiedPositions() const