This is the repo for trajectory_generation.
Inputs (over ROS):
Format: Topic | Datatype
ENVIRONMENT_OBSTACLE | street_environment::EnvironmentObjects
ROAD_STATES | street_environment::RoadStates
ROAD | street_environment::RoadLane
CAR | street_environment::CarCommand
Outputs (over ROS):
Format: Topic | Datatype
LINE | street_environment::Trajectory
DEBUG_TRAJECTORY | lms::math::polyLine2f
Values that messagetypes have to hold:
TODO describe how enums are put in msgs
EnvironmentObject(s?).msg (as found in lms/street_environment/street_environment.h)
std::string m_name
float m_trust
float m_trustLast
std::setstd::string m_detectedBySensorId
(maybe) int type
RoadStates.msg (as found in lms/street_environment/road.h)
std::vector states
-> RoadState hierbei:
RoadStateType type
float startDistance
float endDistance
float probability
float curvature
-> RoadStateType hierbei ein enum mit folgenden Werten:
UNKNOWN, STRAIGHT, STRAIGHT_CURVE, CURVE
RoadLane.msg (as found in lms/street_environment/road.h)
RoadLaneType m_type
(what is: static constexpr int TYPE = 0)?
-> RoadLaneType hierbei ein enum mit folgenden Werten:
LEFT, MIDDLE, RIGHT
CarCommand.msg (as found in lms/street_environment/car.h)
std::vector states
-> State hierbei ein struct mit:
int priority;
std::string name;
StateType state;
bool indicatorLeft;
bool indicatorRight;
lms::Time startState; -> ros::time
lms::Time endState; -> ros::time
float steering_front, steering_rear;
float targetSpeed;
float targetDistance;
-> StateType hierbei ein enum mit folgenden Werten:
NOT_DEFINED,IDLE,DRIVING,PARKING,RACE
Trajectory.msg (as found in lms/street_environment/)
std::vector points
-> TrajectoryPoint hierbei ein struct mit:
lms::math::vertex2f position;
lms::math::vertex2f directory;
float velocity;
float distanceToMiddleLane;
-> lms::math::vertex2f hierbei:
float x
float y
polyLine2f.msg (as found in lms::math::polyLine2f)
std::vector<lms::math::vertex2f> m_points
-> lms::math::vertex2f hierbei:
float x
float y