|
auto | toMapPose (const LaneletPose &lanelet_pose, const bool fill_pitch=true) -> PoseStamped |
|
auto | isAltitudeMatching (const double current_altitude, const double target_altitude) -> bool |
|
auto | toLaneletPose (const Pose &map_pose, const lanelet::Id lanelet_id, const double matching_distance=1.0) -> std::optional< LaneletPose > |
|
auto | toLaneletPose (const Pose &map_pose, const lanelet::Ids &lanelet_ids, const double matching_distance=1.0) -> std::optional< LaneletPose > |
|
auto | toLaneletPose (const Pose &map_pose, const bool include_crosswalk, const double matching_distance=1.0) -> std::optional< LaneletPose > |
|
auto | toLaneletPose (const Pose &map_pose, const BoundingBox &bounding_box, const bool include_crosswalk, const double matching_distance=1.0, const RoutingGraphType type=RoutingConfiguration().routing_graph_type) -> std::optional< LaneletPose > |
|
auto | toLaneletPoses (const Pose &map_pose, const lanelet::Id lanelet_id, const double matching_distance=5.0, const bool include_opposite_direction=true, const RoutingGraphType type=RoutingConfiguration().routing_graph_type) -> std::vector< LaneletPose > |
|
auto | alternativeLaneletPoses (const LaneletPose &reference_lanelet_pose) -> std::vector< LaneletPose > |
| Retrieves alternative lanelet poses based on the reference lanelet pose. More...
|
|
auto | alongLaneletPose (const LaneletPose &from_pose, const lanelet::Ids &route_lanelets, const double distance) -> LaneletPose |
|
auto | alongLaneletPose (const LaneletPose &from_pose, const double distance, const RoutingGraphType type=RoutingConfiguration().routing_graph_type) -> LaneletPose |
|
auto | canonicalizeLaneletPose (const LaneletPose &lanelet_pose) -> std::tuple< std::optional< LaneletPose >, std::optional< lanelet::Id >> |
| Canonicalizes a given LaneletPose by adjusting the longitudinal position (s) to ensure it lies within the bounds of the specified lanelet. If the position is out of bounds, it traverses to previous or next lanelets to find the canonicalized position. More...
|
|
auto | canonicalizeLaneletPose (const LaneletPose &lanelet_pose, const lanelet::Ids &route_lanelets) -> std::tuple< std::optional< LaneletPose >, std::optional< lanelet::Id >> |
|
auto | findMatchingLanes (const geometry_msgs::msg::Pose &, const traffic_simulator_msgs::msg::BoundingBox &, const bool include_crosswalk, const double matching_distance=1.0, const double reduction_ratio=DEFAULT_MATCH_TO_LANE_REDUCTION_RATIO, const traffic_simulator::RoutingGraphType type=traffic_simulator::RoutingConfiguration().routing_graph_type) -> std::optional< std::set< std::pair< double, lanelet::Id >>> |
|
auto | matchToLane (const Pose &map_pose, const BoundingBox &bounding_box, const bool include_crosswalk, const double matching_distance=1.0, const double reduction_ratio=DEFAULT_MATCH_TO_LANE_REDUCTION_RATIO, const RoutingGraphType type=RoutingConfiguration().routing_graph_type) -> std::optional< lanelet::Id > |
|
auto | leftLaneletIds (const lanelet::Id lanelet_id, const RoutingGraphType type, const bool include_opposite_direction) -> lanelet::Ids |
|
auto | rightLaneletIds (const lanelet::Id lanelet_id, const RoutingGraphType type, const bool include_opposite_direction) -> lanelet::Ids |
|
auto traffic_simulator::lanelet_wrapper::pose::canonicalizeLaneletPose |
( |
const LaneletPose & |
lanelet_pose | ) |
-> std::tuple< std::optional< LaneletPose >, std::optional< lanelet::Id >> |
Canonicalizes a given LaneletPose by adjusting the longitudinal position (s) to ensure it lies within the bounds of the specified lanelet. If the position is out of bounds, it traverses to previous or next lanelets to find the canonicalized position.
If the provided pose has a longitudinal position (s) less than 0, the function traverses to previous lanelets until a valid position is found or no previous lanelets exist.
If the longitudinal position (s) exceeds the length of the current lanelet, the function traverses to next lanelets until the position is valid or no next lanelets exist.
- Parameters
-
lanelet_pose | The input LaneletPose to canonicalize, containing a lanelet ID and longitudinal position (s). |
- Returns
- A tuple where:
- The first element is an optional canonicalized LaneletPose (std::nullopt if canonicalization fails).
- The second element is an optional lanelet ID where the process stopped (std::nullopt if successful).
auto traffic_simulator::lanelet_wrapper::pose::isAltitudeMatching |
( |
const double |
current_altitude, |
|
|
const double |
target_altitude |
|
) |
| -> bool |
Justification for using a fixed altitude_threshold
value of 1.0 [m].
Using a fixed altitude_threshold
value of 1.0 [m] is justified because the entity's Z-position is always relative to its base. This eliminates the need to dynamically adjust the threshold based on the entity's dimensions, ensuring consistent altitude matching regardless of the entity type.
The position of the entity is defined relative to its base, typically the center of the rear axle projected onto the ground in the case of vehicles.
- Note
- There is no technical basis for this value; it was determined based on experiments.
Justification for using a fixed altitude_threshold
value of 1.0 [m].
Using a fixed altitude_threshold
value of 1.0 [m] is justified because the entity's Z-position is always relative to its base. This eliminates the need to dynamically adjust the threshold based on the entity's dimensions, ensuring consistent altitude matching regardless of the entity type.
The position of the entity is defined relative to its base, typically the center of the rear axle projected onto the ground in the case of vehicles.
- Note
- There is no technical basis for this value; it was determined based on experiments.