@@ -55,7 +55,7 @@ message StationaryObject
5555 // * identifier[1] = id of t_road_objects_object or t_road_objects_bridge
5656 //
5757 // For example, to reference OpenSCENARIO entities of the type MiscObject,
58- // which describe partly stationary objects, the items should be set as
58+ // which describe partly stationary objects, the items should be set as
5959 // follows:
6060 // * reference = URI to the OpenSCENARIO File
6161 // * type = "net.asam.openscenario"
@@ -446,7 +446,7 @@ message MovingObject
446446 // The trajectory that this moving object expects to follow in the future.
447447 //
448448 // This is not externally perceivable information, rather this is to aid
449- // realistic simulation of traffic participants that are not under test.
449+ // realistic simulation of traffic participants that are not under test.
450450 // This information should not be made available to the stack under test.
451451 //
452452 // \note Moving objects are not required to stick to this trajectory, it is
@@ -457,7 +457,7 @@ message MovingObject
457457
458458 // Specific information about the classification of the vehicle.
459459 //
460- optional MovingObjectClassification moving_object_classification = 9 ;
460+ optional MovingObjectClassification moving_object_classification = 9 ;
461461
462462 // Optional external reference to the moving-object source
463463 //
@@ -473,7 +473,7 @@ message MovingObject
473473 // * identifier[1] = name of Vehicle/Pedestrian in Entity
474474 //
475475 // \todo OpenSCENARIO currently does not provide an animal type.
476- //
476+ //
477477 // \note For non-ASAM Standards, it is implementation-specific how
478478 // source_reference is resolved.
479479 //
@@ -579,9 +579,9 @@ message MovingObject
579579 //
580580 optional Vector3d bbcenter_to_front = 5 ;
581581
582- // Static minimal distance or space from the lowest point of the vehicle's
582+ // Static minimal distance or space from the lowest point of the vehicle's
583583 // body to the surface plane below it under neutral load conditions. This
584- // distance disregards, for example, driving-dynamic effects or
584+ // distance disregards, for example, driving-dynamic effects or
585585 // road-surface effects. Can be useful to approximate the clearance area
586586 // under a vehicle that a sensor can see through.
587587 // \note \c ground_clearance is included in the bounding box height.
@@ -594,7 +594,7 @@ message MovingObject
594594 //
595595 repeated WheelData wheel_data = 7 ;
596596
597- // Angle of the steering wheel.
597+ // Angle of the steering wheel.
598598 // Zero means the steering wheel is in its center postion, a positive value
599599 // means the steering wheel is turned to the left and a negative value
600600 // means the steering wheel is turned to the right of the center position.
@@ -604,8 +604,8 @@ message MovingObject
604604 optional double steering_wheel_angle = 8 ;
605605
606606 // \brief Detailed wheel data.
607- // The focus is on the description of a wheel regarding the perceivable
608- // information from the outside.
607+ // The focus is on the description of a wheel regarding the perceivable
608+ // information from the outside.
609609 // It is not intended to be used for dynamic calculations, for example.
610610 //
611611 message WheelData
@@ -624,8 +624,8 @@ message MovingObject
624624 // This concept works also for twin tires.
625625 //
626626 optional uint32 index = 2 ;
627-
628- // A vector pointing from the vehicle's reference system (center of bounding
627+
628+ // A vector pointing from the vehicle's reference system (center of bounding
629629 // box) to the geometric center of the wheel.
630630 //
631631 optional Vector3d position = 3 ;
@@ -642,7 +642,7 @@ message MovingObject
642642 // Unit: m
643643 //
644644 optional double rim_radius = 5 ;
645-
645+
646646 // Median width of the tire.
647647 //
648648 // Unit: m
@@ -657,7 +657,7 @@ message MovingObject
657657
658658 // Rotation rate of the wheel.
659659 // The rotation rate around the y-axis with respect to the wheel's coordinate system.
660- //
660+ //
661661 // Unit: rad/s.
662662 //
663663 // The sign convention is defined using the right-hand rule.
@@ -668,7 +668,7 @@ message MovingObject
668668 // \note The vehicle's reference coordinate system is only used to determine the sign convention of the rotation rate.
669669 //
670670 optional double rotation_rate = 8 ;
671-
671+
672672 // Opaque reference of an associated 3D model of the wheel.
673673 //
674674 // \note It is implementation-specific how model_references are resolved to
@@ -749,6 +749,10 @@ message MovingObject
749749 //
750750 optional Identifier trailer_id = 4 ;
751751
752+ // The role of the vehicle.
753+ //
754+ optional Role role = 5 ;
755+
752756 // Definition of vehicle types.
753757 //
754758 // \note OSI provides a richer set of vehicle types than is supported by some
@@ -1005,5 +1009,65 @@ message MovingObject
10051009 BRAKE_LIGHT_STATE_STRONG = 4 ;
10061010 }
10071011 }
1012+
1013+ // Definition of vehicle roles.
1014+ //
1015+ // The role specifies the perceived role of a vehicle. Therefore, a
1016+ // civil police car is set to ROLE_CIVIL as long as it cannot be
1017+ // perceived as a ROLE_POLICE.
1018+ // The normal use case will consist of 99% ROLE_CIVIL, as this role is
1019+ // used for normal vehicles.
1020+ // These roles may influence the behavior in traffic of the surrounding vehicles.
1021+ // To check whether a role is "active" (e.g. blue flashing light of an
1022+ // ambulance or an amber flashing light of a sweeper) can be looked up
1023+ // in message LightState.
1024+ //
1025+ //
1026+ enum Role
1027+ {
1028+ // Role of vehicle is unknown (must not be used in ground truth).
1029+ //
1030+ ROLE_UNKNOWN = 0 ;
1031+
1032+ // Other (unspecified but known) role of vehicle.
1033+ //
1034+ ROLE_OTHER = 1 ;
1035+
1036+ // The vehicle role is civil, e.g. a "normal" car.
1037+ //
1038+ ROLE_CIVIL = 2 ;
1039+
1040+ // The vehicle role is ambulance.
1041+ //
1042+ ROLE_AMBULANCE = 3 ;
1043+
1044+ // The vehicle role is fire fighting, e.g. fire engine.
1045+ //
1046+ ROLE_FIRE = 4 ;
1047+
1048+ // The vehicle role is police.
1049+ //
1050+ ROLE_POLICE = 5 ;
1051+
1052+ // The vehicle role is public transport, e.g. a school bus.
1053+ //
1054+ ROLE_PUBLIC_TRANSPORT = 6 ;
1055+
1056+ // The vehicle role is roadside assistance, e.g. tow truck.
1057+ //
1058+ ROLE_ROAD_ASSISTANCE = 7 ;
1059+
1060+ // The vehicle role is garbage collection, e.g. a garbage truck or sweeper.
1061+ //
1062+ ROLE_GARBAGE_COLLECTION = 8 ;
1063+
1064+ // The vehicle role is road construction, e.g. a excavator or tipper truck.
1065+ //
1066+ ROLE_ROAD_CONSTRUCTION = 9 ;
1067+
1068+ // The vehicle role is military, e.g. camouflaged truck.
1069+ //
1070+ ROLE_MILITARY = 10 ;
1071+ }
10081072 }
10091073}
0 commit comments