15 #ifndef NAV2_SMAC_PLANNER__CONSTANTS_HPP_
16 #define NAV2_SMAC_PLANNER__CONSTANTS_HPP_
20 namespace nav2_smac_planner
22 enum class MotionModel
31 enum class GoalHeadingMode
39 inline std::string toString(
const MotionModel & n)
42 case MotionModel::TWOD:
44 case MotionModel::DUBIN:
46 case MotionModel::REEDS_SHEPP:
48 case MotionModel::STATE_LATTICE:
49 return "State Lattice";
55 inline MotionModel fromString(
const std::string & n)
58 return MotionModel::TWOD;
59 }
else if (n ==
"DUBIN") {
60 return MotionModel::DUBIN;
61 }
else if (n ==
"REEDS_SHEPP") {
62 return MotionModel::REEDS_SHEPP;
63 }
else if (n ==
"STATE_LATTICE") {
64 return MotionModel::STATE_LATTICE;
66 return MotionModel::UNKNOWN;
70 inline std::string toString(
const GoalHeadingMode & n)
73 case GoalHeadingMode::DEFAULT:
75 case GoalHeadingMode::BIDIRECTIONAL:
76 return "BIDIRECTIONAL";
77 case GoalHeadingMode::ALL_DIRECTION:
78 return "ALL_DIRECTION";
84 inline GoalHeadingMode fromStringToGH(
const std::string & n)
87 return GoalHeadingMode::DEFAULT;
88 }
else if (n ==
"BIDIRECTIONAL") {
89 return GoalHeadingMode::BIDIRECTIONAL;
90 }
else if (n ==
"ALL_DIRECTION") {
91 return GoalHeadingMode::ALL_DIRECTION;
93 return GoalHeadingMode::UNKNOWN;
97 const float UNKNOWN_COST = 255.0;
98 const float OCCUPIED_COST = 254.0;
99 const float INSCRIBED_COST = 253.0;
100 const float MAX_NON_OBSTACLE_COST = 252.0;
101 const float FREE_COST = 0;