Skip to content

Commit 1006e84

Browse files
Fix actor_type typo; Apply black py format (#80)
1 parent 24f1c68 commit 1006e84

File tree

2 files changed

+51
-28
lines changed

2 files changed

+51
-28
lines changed

src/macad_gym/carla/multi_env.py

Lines changed: 44 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -339,16 +339,19 @@ def __init__(self, configs=None):
339339

340340
# Render related
341341
Render.resize_screen(self._render_x_res, self._render_y_res)
342-
342+
343343
self._camera_poses, window_dim = Render.get_surface_poses(
344-
[self._x_res, self._y_res], self._actor_configs)
344+
[self._x_res, self._y_res], self._actor_configs
345+
)
345346

346347
if manual_control_count == 0:
347348
Render.resize_screen(window_dim[0], window_dim[1])
348349
else:
349350
self._manual_control_render_pose = (0, window_dim[1])
350351
Render.resize_screen(
351-
max(self._render_x_res, window_dim[0]), self._render_y_res + window_dim[1])
352+
max(self._render_x_res, window_dim[0]),
353+
self._render_y_res + window_dim[1],
354+
)
352355

353356
# Actions space
354357
if self._discrete_actions:
@@ -666,8 +669,7 @@ def _clear_server_state(self):
666669
if self._server_process:
667670
if IS_WINDOWS_PLATFORM:
668671
subprocess.call(
669-
["taskkill", "/F", "/T", "/PID",
670-
str(self._server_process.pid)]
672+
["taskkill", "/F", "/T", "/PID", str(self._server_process.pid)]
671673
)
672674
live_carla_processes.remove(self._server_process.pid)
673675
else:
@@ -780,7 +782,9 @@ def _spawn_new_actor(self, actor_id):
780782
#: closest match
781783

782784
if actor_type == "pedestrian":
783-
blueprints = self.world.get_blueprint_library().filter("walker")
785+
blueprints = self.world.get_blueprint_library().filter(
786+
"walker.pedestrian.*"
787+
)
784788

785789
elif actor_type == "vehicle_4W":
786790
blueprints = self.world.get_blueprint_library().filter("vehicle")
@@ -833,7 +837,12 @@ def _spawn_new_actor(self, actor_id):
833837
self.world.tick()
834838
if vehicle is not None and vehicle.get_location().z > 0.0:
835839
# Register it under traffic manager
836-
vehicle.set_autopilot(False, self._traffic_manager.get_port())
840+
# Walker vehicle type does not have autopilot. Use walker controller ai
841+
if actor_type == "pedestrian":
842+
# vehicle.set_simulate_physics(False)
843+
pass
844+
else:
845+
vehicle.set_autopilot(False, self._traffic_manager.get_port())
837846
break
838847
# Wait to see if spawn area gets cleared before retrying
839848
# time.sleep(0.5)
@@ -960,16 +969,18 @@ def _reset(self, clean_world=True):
960969
# Manual Control
961970
if actor_config["manual_control"]:
962971
self._control_clock = pygame.time.Clock()
963-
972+
964973
self._manual_controller = KeyboardControl(
965-
self, actor_config["auto_control"])
974+
self, actor_config["auto_control"]
975+
)
966976
self._manual_controller.actor_id = actor_id
967-
977+
968978
self.world.on_tick(self._hud.on_world_tick)
969979
self._manual_control_camera_manager = CameraManager(
970-
self._actors[actor_id], self._hud)
980+
self._actors[actor_id], self._hud
981+
)
971982
self._manual_control_camera_manager.set_sensor(
972-
CAMERA_TYPES['rgb'].value - 1, pos=2, notify=False
983+
CAMERA_TYPES["rgb"].value - 1, pos=2, notify=False
973984
)
974985

975986
self._start_coord.update(
@@ -1161,13 +1172,16 @@ def step(self, action_dict):
11611172
k for k, v in self._actor_configs.items() if v.get("render", False)
11621173
]
11631174
if render_required:
1164-
images = {k: self._decode_obs(k, v)
1165-
for k, v in obs_dict.items() if self._actor_configs[k]["render"]}
1175+
images = {
1176+
k: self._decode_obs(k, v)
1177+
for k, v in obs_dict.items()
1178+
if self._actor_configs[k]["render"]
1179+
}
11661180

11671181
Render.multi_view_render(images, self._camera_poses)
11681182
if self._manual_controller is None:
11691183
Render.dummy_event_handler()
1170-
1184+
11711185
return obs_dict, reward_dict, self._done_dict, info_dict
11721186
except Exception:
11731187
print(
@@ -1214,12 +1228,21 @@ def _step(self, actor_id, action):
12141228
config = self._actor_configs[actor_id]
12151229
if config["manual_control"]:
12161230
self._control_clock.tick(60)
1217-
self._manual_control_camera_manager._hud.tick(self.world, self._actors[actor_id], self._collisions[actor_id], self._control_clock)
1231+
self._manual_control_camera_manager._hud.tick(
1232+
self.world,
1233+
self._actors[actor_id],
1234+
self._collisions[actor_id],
1235+
self._control_clock,
1236+
)
12181237
self._manual_controller.parse_events(self, self._control_clock)
12191238

12201239
# TODO: consider move this to Render as well
1221-
self._manual_control_camera_manager.render(Render.get_screen(), self._manual_control_render_pose)
1222-
self._manual_control_camera_manager._hud.render(Render.get_screen(), self._manual_control_render_pose)
1240+
self._manual_control_camera_manager.render(
1241+
Render.get_screen(), self._manual_control_render_pose
1242+
)
1243+
self._manual_control_camera_manager._hud.render(
1244+
Render.get_screen(), self._manual_control_render_pose
1245+
)
12231246
pygame.display.flip()
12241247
elif config["auto_control"]:
12251248
if getattr(self._actors[actor_id], "set_autopilot", 0):
@@ -1523,19 +1546,16 @@ def get_next_actions(measurements, is_discrete_actions):
15231546

15241547

15251548
if __name__ == "__main__":
1526-
argparser = argparse.ArgumentParser(
1527-
description="CARLA Manual Control Client")
1528-
argparser.add_argument("--scenario", default="3",
1529-
help="print debug information")
1549+
argparser = argparse.ArgumentParser(description="CARLA Manual Control Client")
1550+
argparser.add_argument("--scenario", default="3", help="print debug information")
15301551
# TODO: Fix the default path to the config.json;Should work after packaging
15311552
argparser.add_argument(
15321553
"--config",
15331554
default="src/macad_gym/carla/config.json",
15341555
help="print debug information",
15351556
)
15361557

1537-
argparser.add_argument("--map", default="Town01",
1538-
help="print debug information")
1558+
argparser.add_argument("--map", default="Town01", help="print debug information")
15391559

15401560
args = argparser.parse_args()
15411561

src/macad_gym/envs/hete/ncom/inde/po/intrx/ma/traffic_light_signal_1b2c1p_town03.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66

77
class TrafficLightSignal1B2C1PTown03(MultiCarlaEnv):
88
"""A 4-way signalized intersection with 1 Bike, 2 Cars, 1 Pedestrian"""
9+
910
def __init__(self):
1011
self.configs = {
1112
"scenarios": "SUI1B2C1P_TOWN3",
@@ -50,7 +51,7 @@ def __init__(self):
5051
"send_measurements": False,
5152
},
5253
"car2": {
53-
"type": "vehicle_4w",
54+
"type": "vehicle_4W",
5455
"enable_planner": False,
5556
"convert_images_to_video": False,
5657
"early_terminate_on_collision": True,
@@ -145,9 +146,11 @@ def __init__(self):
145146
# action_dict = get_next_actions(info, env.discrete_actions)
146147
for actor_id in total_reward_dict.keys():
147148
total_reward_dict[actor_id] += reward[actor_id]
148-
print(":{}\n\t".join(["Step#", "rew", "ep_rew",
149-
"done{}"]).format(i, reward,
150-
total_reward_dict, done))
149+
print(
150+
":{}\n\t".join(["Step#", "rew", "ep_rew", "done{}"]).format(
151+
i, reward, total_reward_dict, done
152+
)
153+
)
151154

152155
time.sleep(0.1)
153156

0 commit comments

Comments
 (0)