|
| | MovePrimitive (const Robot &robot, const Point &destination, const Angle &final_angle, const TbotsProto::MaxAllowedSpeedMode &max_allowed_speed_mode, const TbotsProto::ObstacleAvoidanceMode &obstacle_avoidance_mode, const TbotsProto::DribblerMode &dribbler_mode, const TbotsProto::BallCollisionType &ball_collision_type, const AutoChipOrKick &auto_chip_or_kick, std::optional< double > cost_override=std::nullopt) |
| |
| std::pair< std::optional< TrajectoryPath >, std::unique_ptr< TbotsProto::Primitive > > | generatePrimitiveProtoMessage (const World &world, const std::set< TbotsProto::MotionConstraint > &motion_constraints, const std::map< RobotId, TrajectoryPath > &robot_trajectories, const RobotNavigationObstacleFactory &obstacle_factory) override |
| |
| void | getVisualizationProtos (TbotsProto::ObstacleList &obstacle_list_out, TbotsProto::PathVisualization &path_visualization_out) const override |
| |
| virtual | ~Primitive ()=default |
| |
| double | getEstimatedPrimitiveCost () const |
| |
|
|
double | estimated_cost = 0 |
| |
◆ MovePrimitive()
| MovePrimitive |
( |
const Robot & |
robot, |
|
|
const Point & |
destination, |
|
|
const Angle & |
final_angle, |
|
|
const TbotsProto::MaxAllowedSpeedMode & |
max_allowed_speed_mode, |
|
|
const TbotsProto::ObstacleAvoidanceMode & |
obstacle_avoidance_mode, |
|
|
const TbotsProto::DribblerMode & |
dribbler_mode, |
|
|
const TbotsProto::BallCollisionType & |
ball_collision_type, |
|
|
const AutoChipOrKick & |
auto_chip_or_kick, |
|
|
std::optional< double > |
cost_override = std::nullopt |
|
) |
| |
Create a Move Primitive Message
- Parameters
-
| robot | Robot running this primitive |
| destination | Destination position of the robot |
| final_angle | Desired final orientation of the robot |
| max_allowed_speed_mode | Max allowed speed the robot can move at |
| dribbler_mode | Dribbler mode during this primitive |
| ball_collision_type | Ball collision type specifying if collision with the ball is allowed |
| auto_chip_or_kick | Whether auto chip or kick is enabled and the target distance/speed |
| cost_override | optionally override the cost of the move primitive, defaults to the total duration of reaching the destination (ignoring obstacles) |
◆ generatePrimitiveProtoMessage()
| std::pair< std::optional< TrajectoryPath >, std::unique_ptr< TbotsProto::Primitive > > generatePrimitiveProtoMessage |
( |
const World & |
world, |
|
|
const std::set< TbotsProto::MotionConstraint > & |
motion_constraints, |
|
|
const std::map< RobotId, TrajectoryPath > & |
robot_trajectories, |
|
|
const RobotNavigationObstacleFactory & |
obstacle_factory |
|
) |
| |
|
overridevirtual |
Gets the primitive proto message
- Parameters
-
| world | Current state of the world |
| motion_constraints | Motion constraints to consider |
| robot_trajectories | A map of the all friendly robots' known trajectories |
| obstacle_factory | Obstacle factory to use for generating obstacles |
- Returns
- A pair of the found trajectory (optional) and the primitive proto message
Implements Primitive.
◆ getVisualizationProtos()
| void getVisualizationProtos |
( |
TbotsProto::ObstacleList & |
obstacle_list_out, |
|
|
TbotsProto::PathVisualization & |
path_visualization_out |
|
) |
| const |
|
overridevirtual |
Fill the obstacle list and path visualization with the obstacles and path of this primitive
- Parameters
-
| obstacle_list_out | Reference to the ObstacleList proto to add obstacles to |
| path_visualization_out | Reference to the PathVisualization proto to add path |
Implements Primitive.
The documentation for this class was generated from the following files:
- src/software/ai/hl/stp/tactic/move_primitive.h
- src/software/ai/hl/stp/tactic/move_primitive.cpp