maliput_malidrive
RoadGeometry configuration builder keys

Detailed Description

Parameters used during the RoadGeometry building process. See RoadNetwork configuration builder keys for further information.

Variables

static constexpr char const * kRoadGeometryId {"road_geometry_id"}
 A string that works as ID of the RoadGeometry. More...
 
static constexpr char const * kOpendriveFile {"opendrive_file"}
 Path to the XODR file to be loaded. More...
 
static constexpr char const * kLinearTolerance {"linear_tolerance"}
 RoadGeometry's linear tolerance. More...
 
static constexpr char const * kMaxLinearTolerance {"max_linear_tolerance"}
 A maximum allowed linear tolerance. More...
 
static constexpr char const * kAngularTolerance {"angular_tolerance"}
 RoadGeometry's angular tolerance. More...
 
static constexpr char const * kScaleLength {"scale_length"}
 RoadGeometry's scale length. More...
 
static constexpr char const * kInertialToBackendFrameTranslation {"inertial_to_backend_frame_translation"}
 Translation from maliput to malidrive inertial frame. More...
 
static constexpr char const * kBuildPolicy {"build_policy"}
 Determines the use of concurrency when building the RoadGeometry. More...
 
static constexpr char const * kNumThreads {"num_threads"}
 Indicates the number of threads to be used to build the RoadGeometry when build_policy flag is set to parallel. More...
 
static constexpr char const * kSimplificationPolicy {"simplification_policy"}
 Determines geometries simplification for the XODR's roads. More...
 
static constexpr char const * kStandardStrictnessPolicy {"standard_strictness_policy"}
 Indicates how permissive builder should be with the XODR description. More...
 
static constexpr char const * kOmitNonDrivableLanes {"omit_nondrivable_lanes"}
 True for omitting building non-drivable lanes. More...
 

Variable Documentation

◆ kAngularTolerance

constexpr char const* kAngularTolerance {"angular_tolerance"}
staticconstexpr

RoadGeometry's angular tolerance.

◆ kBuildPolicy

constexpr char const* kBuildPolicy {"build_policy"}
staticconstexpr

Determines the use of concurrency when building the RoadGeometry.

  • Options:
    • 1. "sequential"
    • 2. "parallel"
  • Default: "sequential"

◆ kInertialToBackendFrameTranslation

constexpr char const* kInertialToBackendFrameTranslation {"inertial_to_backend_frame_translation"}
staticconstexpr

Translation from maliput to malidrive inertial frame.

The format of the 3-dimensional vector that is expected to be passed should be {X , Y , Z}. Same format as maliput::math::Vector3 is serialized.

  • Default: "{0., 0., 0.}"

◆ kLinearTolerance

constexpr char const* kLinearTolerance {"linear_tolerance"}
staticconstexpr

RoadGeometry's linear tolerance.

◆ kMaxLinearTolerance

constexpr char const* kMaxLinearTolerance {"max_linear_tolerance"}
staticconstexpr

A maximum allowed linear tolerance.

When this parameter is passed, the linear tolerance the builder will use is defined within the range [linear_tolerance, max_linear_tolerance]. The builder is expected to iteratively try higher linear tolerances until it either finds a value that works, or reaches this maximum value, at which point it will abort with a failure. When linear_tolerance isn't set, the minimum value of the range will be defined by malidrive::constants::kBaseLinearTolerance. It is recommended to define the minimum value using the linear_tolerance parameter to hint the builder to a valid range, otherwise this method could demand a considerable extra time while it tries out relatively small linear tolerances.

  • Default: By default it isn't set. The builder will try only linear_tolerance.

◆ kNumThreads

constexpr char const* kNumThreads {"num_threads"}
staticconstexpr

Indicates the number of threads to be used to build the RoadGeometry when build_policy flag is set to parallel.

  • Default: std::thread::hardware_concurrency() minus one (running thread).

◆ kOmitNonDrivableLanes

constexpr char const* kOmitNonDrivableLanes {"omit_nondrivable_lanes"}
staticconstexpr

True for omitting building non-drivable lanes.

False otherwise

  • Options:
    • 1. "true", "True", "TRUE", "on", "On", "ON"
    • 2. "false", "False", "FALSE", "off", "Off", "OFF"
  • Default: "true"

◆ kOpendriveFile

constexpr char const* kOpendriveFile {"opendrive_file"}
staticconstexpr

Path to the XODR file to be loaded.

  • Default: ""

◆ kRoadGeometryId

constexpr char const* kRoadGeometryId {"road_geometry_id"}
staticconstexpr

A string that works as ID of the RoadGeometry.

  • Default: "maliput"

◆ kScaleLength

constexpr char const* kScaleLength {"scale_length"}
staticconstexpr

RoadGeometry's scale length.

◆ kSimplificationPolicy

constexpr char const* kSimplificationPolicy {"simplification_policy"}
staticconstexpr

Determines geometries simplification for the XODR's roads.

  • Options:
    • 1. "none"
    • 2. "simplify"
  • Default: "none"

◆ kStandardStrictnessPolicy

constexpr char const* kStandardStrictnessPolicy {"standard_strictness_policy"}
staticconstexpr

Indicates how permissive builder should be with the XODR description.

  • Options:
    • 1. "strict" : Do not permit any errors.
    • 2. "allow_schema_errors" : Allow schema syntax errors at a XODR level:
      • 1. Allows having two functions starting at same 's' adding up to a picewise-defined polynomial for a given XODR characteristic(laneWidth, laneOffset, etc): First description will be discarded.
      • 2. Allows having functions starting at the end of the road: This function will be discarded as its length is zero.
      • 3. Allows having functions with NaN values. It is only accepted when there is a function that starts at the same 's' so the function with NaN values can be discarded.
      • 4. Allows having junction nodes without any connection.
    • 3. "allow_semantic_errors" : Allow semantic errors.
      • 1. At a XODR level it allows having non reciprocal Road-linkage and Lane-linkage within a Road.
      • 2. Allows having lane width descriptions that are negative in certain range.
      • 3. Disables G1 contiguity checks for non-drivable lanes. (G1 contiguity check on drivable lanes can't be disabled.)
    • 4. "permissive": Allow all previous violations.
  • Default: "permissive"