MCPcopy Create free account
hub / github.com/OpenDriveLab/DriveAdapter / WorldSR

Class WorldSR

scenario_runner/manual_control.py:81–127  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

79# ==============================================================================
80
81class WorldSR(World):
82
83 restarted = False
84
85 def restart(self):
86
87 if self.restarted:
88 return
89 self.restarted = True
90
91 self.player_max_speed = 1.589
92 self.player_max_speed_fast = 3.713
93
94 # Keep same camera config if the camera manager exists.
95 cam_index = self.camera_manager.index if self.camera_manager is not None else 0
96 cam_pos_index = self.camera_manager.transform_index if self.camera_manager is not None else 0
97
98 # Get the ego vehicle
99 while self.player is None:
100 print("Waiting for the ego vehicle...")
101 time.sleep(1)
102 possible_vehicles = self.world.get_actors().filter('vehicle.*')
103 for vehicle in possible_vehicles:
104 if vehicle.attributes['role_name'] == "hero":
105 print("Ego vehicle found")
106 self.player = vehicle
107 break
108
109 self.player_name = self.player.type_id
110
111 # Set up the sensors.
112 self.collision_sensor = CollisionSensor(self.player, self.hud)
113 self.lane_invasion_sensor = LaneInvasionSensor(self.player, self.hud)
114 self.gnss_sensor = GnssSensor(self.player)
115 self.imu_sensor = IMUSensor(self.player)
116 self.camera_manager = CameraManager(self.player, self.hud, self._gamma)
117 self.camera_manager.transform_index = cam_pos_index
118 self.camera_manager.set_sensor(cam_index, notify=False)
119 actor_type = get_actor_display_name(self.player)
120 self.hud.notification(actor_type)
121
122 def tick(self, clock):
123 if len(self.world.get_actors().filter(self.player_name)) < 1:
124 return False
125
126 self.hud.tick(self, clock)
127 return True
128
129# ==============================================================================
130# -- game_loop() ---------------------------------------------------------------

Callers 1

game_loopFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected