MCPcopy Create free account
hub / github.com/AdaCompNUS/summit / get_dynamic_objects

Function get_dynamic_objects

PythonAPI/carla/scene_layout.py:121–284  ·  view source on GitHub ↗
(carla_world, carla_map)

Source from the content-addressed store, hash-verified

119
120
121def get_dynamic_objects(carla_world, carla_map):
122 # Private helper functions
123 def _get_bounding_box(actor):
124 bb = actor.bounding_box.extent
125 corners = [
126 carla.Location(x=-bb.x, y=-bb.y),
127 carla.Location(x=bb.x, y=-bb.y),
128 carla.Location(x=bb.x, y=bb.y),
129 carla.Location(x=-bb.x, y=bb.y)]
130 t = actor.get_transform()
131 t.transform(corners)
132 corners = [carla_map.transform_to_geolocation(p) for p in corners]
133 return corners
134
135 def _get_trigger_volume(actor):
136 bb = actor.trigger_volume.extent
137 corners = [carla.Location(x=-bb.x, y=-bb.y),
138 carla.Location(x=bb.x, y=-bb.y),
139 carla.Location(x=bb.x, y=bb.y),
140 carla.Location(x=-bb.x, y=bb.y),
141 carla.Location(x=-bb.x, y=-bb.y)]
142 corners = [x + actor.trigger_volume.location for x in corners]
143 t = actor.get_transform()
144 t.transform(corners)
145 corners = [carla_map.transform_to_geolocation(p) for p in corners]
146 return corners
147
148 def _split_actors(actors):
149 vehicles = []
150 traffic_lights = []
151 speed_limits = []
152 walkers = []
153 stops = []
154 static_obstacles = []
155 for actor in actors:
156 if 'vehicle' in actor.type_id:
157 vehicles.append(actor)
158 elif 'traffic_light' in actor.type_id:
159 traffic_lights.append(actor)
160 elif 'speed_limit' in actor.type_id:
161 speed_limits.append(actor)
162 elif 'walker' in actor.type_id:
163 walkers.append(actor)
164 elif 'stop' in actor.type_id:
165 stops.append(actor)
166 elif 'static.prop' in actor.type_id:
167 static_obstacles.append(actor)
168
169
170 return (vehicles, traffic_lights, speed_limits, walkers, stops, static_obstacles)
171
172 # Public functions
173 def get_stop_signals(stops):
174 stop_signals_dict = dict()
175 for stop in stops:
176 st_transform = stop.get_transform()
177 location_gnss = carla_map.transform_to_geolocation(st_transform.location)
178 st_dict = {

Callers

nothing calls this directly

Calls 8

_split_actorsFunction · 0.85
get_vehiclesFunction · 0.85
get_hero_vehicleFunction · 0.85
get_walkersFunction · 0.85
get_traffic_lightsFunction · 0.85
get_stop_signalsFunction · 0.85
get_speed_limitsFunction · 0.85
get_static_obstaclesFunction · 0.85

Tested by

no test coverage detected