Python carla.Color() Examples
The following are 16
code examples of carla.Color().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
carla
, or try the search function
.
Example #1
Source File: env_utils.py From tensorforce with Apache License 2.0 | 6 votes |
def draw_radar_measurement(debug_helper: carla.DebugHelper, data: carla.RadarMeasurement, velocity_range=7.5, size=0.075, life_time=0.06): """Code adapted from carla/PythonAPI/examples/manual_control.py: - White: means static points. - Red: indicates points moving towards the object. - Blue: denoted points moving away. """ radar_rotation = data.transform.rotation for detection in data: azimuth = math.degrees(detection.azimuth) + radar_rotation.yaw altitude = math.degrees(detection.altitude) + radar_rotation.pitch # move to local coordinates: forward_vec = carla.Vector3D(x=detection.depth - 0.25) global_to_local(forward_vec, reference=carla.Rotation(pitch=altitude, yaw=azimuth, roll=radar_rotation.roll)) # draw: debug_helper.draw_point(data.transform.location + forward_vec, size=size, life_time=life_time, persistent_lines=False, color=carla.Color(255, 255, 255)) # ------------------------------------------------------------------------------------------------- # -- Math # -------------------------------------------------------------------------------------------------
Example #2
Source File: nav_utils.py From macad-gym with MIT License | 6 votes |
def draw(self): actor_z = self.actor.get_location().z for i in range(self.path_index + 1, len(self.path)): hop1 = self.path[i - 1][0].transform.location hop2 = self.path[i][0].transform.location hop1.z = actor_z hop2.z = actor_z if i == len(self.path) - 1: self.world.debug.draw_arrow( hop1, hop2, life_time=0.5, color=carla.Color(0, 255, 0), thickness=0.5) else: self.world.debug.draw_line( hop1, hop2, life_time=0.5, color=carla.Color(0, 255, 0), thickness=0.5)
Example #3
Source File: chauffeur_logger_operator.py From pylot with Apache License 2.0 | 6 votes |
def _draw_trigger_volume(self, world, tl_actor): transform = tl_actor.get_transform() tv = transform.transform(tl_actor.trigger_volume.location) bbox = carla.BoundingBox(tv, tl_actor.trigger_volume.extent) tl_state = tl_actor.get_state() if tl_state in TL_STATE_TO_PIXEL_COLOR: r, g, b = TL_STATE_TO_PIXEL_COLOR[tl_state] bbox_color = carla.Color(r, g, b) else: bbox_color = carla.Color(0, 0, 0) bbox_life_time = (1 / self._flags.carla_fps + TL_BBOX_LIFETIME_BUFFER) world.debug.draw_box(bbox, transform.rotation, thickness=0.5, color=bbox_color, life_time=bbox_life_time)
Example #4
Source File: carla_lap_env.py From Carla-ppo with MIT License | 6 votes |
def _draw_path(self, life_time=60.0, skip=0): """ Draw a connected path from start of route to end. Green node = start Red node = point along path Blue node = destination """ for i in range(0, len(self.route_waypoints)-1, skip+1): w0 = self.route_waypoints[i][0] w1 = self.route_waypoints[i+1][0] self.world.debug.draw_line( w0.transform.location + carla.Location(z=0.25), w1.transform.location + carla.Location(z=0.25), thickness=0.1, color=carla.Color(255, 0, 0), life_time=life_time, persistent_lines=False) self.world.debug.draw_point( w0.transform.location + carla.Location(z=0.25), 0.1, carla.Color(0, 255, 0) if i == 0 else carla.Color(255, 0, 0), life_time, False) self.world.debug.draw_point( self.route_waypoints[-1][0].transform.location + carla.Location(z=0.25), 0.1, carla.Color(0, 0, 255), life_time, False)
Example #5
Source File: carla_route_env.py From Carla-ppo with MIT License | 6 votes |
def _draw_path(self, life_time=60.0, skip=0): """ Draw a connected path from start of route to end. Green node = start Red node = point along path Blue node = destination """ for i in range(0, len(self.route_waypoints)-1, skip+1): w0 = self.route_waypoints[i][0] w1 = self.route_waypoints[i+1][0] self.world.debug.draw_line( w0.transform.location + carla.Location(z=0.25), w1.transform.location + carla.Location(z=0.25), thickness=0.1, color=carla.Color(255, 0, 0), life_time=life_time, persistent_lines=False) self.world.debug.draw_point( w0.transform.location + carla.Location(z=0.25), 0.1, carla.Color(0, 255, 0) if i == 0 else carla.Color(255, 0, 0), life_time, False) self.world.debug.draw_point( self.route_waypoints[-1][0].transform.location + carla.Location(z=0.25), 0.1, carla.Color(0, 0, 255), life_time, False)
Example #6
Source File: plot_traj_carla.py From Multiverse with Apache License 2.0 | 6 votes |
def plot_trajs_carla(world, trajs, carla_color, z, line_time=30.0, show_person_id=False): for person_id, traj in trajs: points = zip(traj[:-1], traj[1:]) for p1, p2 in points: p1 = carla.Location(x=p1[0], y=p1[1], z=z) p2 = carla.Location(x=p2[0], y=p2[1], z=z) world.debug.draw_arrow( p1, p2, thickness=0.1, arrow_size=0.1, color=carla_color, life_time=line_time) if show_person_id: world.debug.draw_string( carla.Location(x=traj[0][0], y=traj[0][1], z=z), "# %s" % person_id, draw_shadow=False, color=carla.Color(r=255, g=0, b=0), life_time=line_time, persistent_lines=False) # computed using compute_actev_world_norm.py # min -> max
Example #7
Source File: route_scenario.py From scenario_runner with MIT License | 5 votes |
def _draw_waypoints(self, world, waypoints, vertical_shift, persistency=-1): """ Draw a list of waypoints at a certain height given in vertical_shift. """ for w in waypoints: wp = w[0].location + carla.Location(z=vertical_shift) size = 0.2 if w[1] == RoadOption.LEFT: # Yellow color = carla.Color(255, 255, 0) elif w[1] == RoadOption.RIGHT: # Cyan color = carla.Color(0, 255, 255) elif w[1] == RoadOption.CHANGELANELEFT: # Orange color = carla.Color(255, 64, 0) elif w[1] == RoadOption.CHANGELANERIGHT: # Dark Cyan color = carla.Color(0, 64, 255) elif w[1] == RoadOption.STRAIGHT: # Gray color = carla.Color(128, 128, 128) else: # LANEFOLLOW color = carla.Color(0, 255, 0) # Green size = 0.1 world.debug.draw_point(wp, size=size, color=color, life_time=persistency) world.debug.draw_point(waypoints[0][0].location + carla.Location(z=vertical_shift), size=0.2, color=carla.Color(0, 0, 255), life_time=persistency) world.debug.draw_point(waypoints[-1][0].location + carla.Location(z=vertical_shift), size=0.2, color=carla.Color(255, 0, 0), life_time=persistency)
Example #8
Source File: nav_utils.py From macad-gym with MIT License | 5 votes |
def draw_shortest_path(world, planner, origin, destination): """Draws shortest feasible lines/arrows from origin to destination Args: world: planner: origin (tuple): (x, y, z) destination (tuple): (x, y, z) Returns: next waypoint as a list of coordinates (x,y,z) """ hops = get_shortest_path_waypoints(world, planner, origin, destination) for i in range(1, len(hops)): hop1 = hops[i - 1][0].transform.location hop2 = hops[i][0].transform.location hop1.z = origin[2] hop2.z = origin[2] if i == len(hops) - 1: world.debug.draw_arrow( hop1, hop2, life_time=1.0, color=carla.Color(0, 255, 0), thickness=0.5) else: world.debug.draw_line( hop1, hop2, life_time=1.0, color=carla.Color(0, 255, 0), thickness=0.5)
Example #9
Source File: nav_utils.py From macad-gym with MIT License | 5 votes |
def draw_shortest_path_old(world, planner, origin, destination): """Draws shortest feasible lines/arrows from origin to destination Args: world: planner: origin (typle): (x, y, z) destination: Returns: """ xys = get_shortest_path_waypoints(planner, (origin[0], origin[1]), destination) if len(xys) > 2: for i in range(len(xys) - 2): world.debug.draw_line( carla.Location(*xys[i]), carla.Location(*xys[i + 1]), life_time=1.0, color=carla.Color(0, 255, 0)) elif len(xys) == 2: world.debug.draw_arrow( carla.Location(*xys[-2]), carla.Location(*xys[-1]), life_time=100.0, color=carla.Color(0, 255, 0), thickness=0.5)
Example #10
Source File: visualizer_operator.py From pylot with Apache License 2.0 | 5 votes |
def _visualize_imu(self, msg): import carla transform = msg.transform # Acceleration measured in ego frame, not global # z acceleration not useful for visualization so set to 0 rotation_transform = carla.Transform( location=carla.Location(0, 0, 0), rotation=transform.rotation.as_carla_rotation()) acceleration = msg.acceleration.as_carla_vector() rotated_acceleration = rotation_transform.transform( carla.Location(acceleration.x, acceleration.y, 0)) # Construct arrow. loc = transform.location.as_carla_location() begin_acc = loc + carla.Location(z=0.5) end_acc = begin_acc + carla.Location(rotated_acceleration.x, rotated_acceleration.y, 0) # not useful for visualization # draw arrow self._logger.debug("Acc: {}".format(rotated_acceleration)) self._world.debug.draw_arrow(begin_acc, end_acc, arrow_size=0.1, life_time=0.1, color=carla.Color(255, 0, 0))
Example #11
Source File: lane.py From pylot with Apache License 2.0 | 5 votes |
def draw_on_world(self, world): import carla for marking in self.left_markings: world.debug.draw_point(marking.as_carla_location(), size=0.1, color=carla.Color(255, 255, 0)) for marking in self.right_markings: world.debug.draw_point(marking.as_carla_location(), size=0.1, color=carla.Color(255, 255, 0))
Example #12
Source File: debug_helper.py From ros-bridge with MIT License | 5 votes |
def on_marker(self, marker_array): """ Receive markers from ROS and apply in CARLA """ for marker in marker_array.markers: if marker.header.frame_id != "map": rospy.logwarn( "Could not draw marker in frame '{}'. Only 'map' supported.".format( marker.header.frame_id)) continue lifetime = -1. if marker.lifetime: lifetime = marker.lifetime.to_sec() color = carla.Color(int(marker.color.r * 255), int(marker.color.g * 255), int(marker.color.b * 255), int(marker.color.a * 255)) if marker.type == Marker.POINTS: self.draw_points(marker, lifetime, color) elif marker.type == Marker.LINE_STRIP: self.draw_line_strips(marker, lifetime, color) elif marker.type == Marker.ARROW: self.draw_arrow(marker, lifetime, color) elif marker.type == Marker.CUBE: self.draw_box(marker, lifetime, color) else: rospy.logwarn("Marker type '{}' not supported.".format(marker.type))
Example #13
Source File: moment_editor.py From Multiverse with Apache License 2.0 | 5 votes |
def plot_actor_3d_bbox(world, actor, color, fps): color = carla.Color(r=color[0], g=color[1], b=color[2]) # get the current transform (location + rotation) transform = actor.get_transform() # bounding box is relative to the actor bounding_box = actor.bounding_box bounding_box.location += transform.location # from relative to world world.debug.draw_box(bounding_box, transform.rotation, color=color, life_time=1.0/fps)
Example #14
Source File: annotate_carla.py From Multiverse with Apache License 2.0 | 5 votes |
def plot_actor_3d_bbox(world, actor, color, fps, thickness=0.1): color = carla.Color(r=color[0], g=color[1], b=color[2]) # get the current transform (location + rotation) transform = actor.get_transform() # bounding box is relative to the actor bounding_box = actor.bounding_box bounding_box.location += transform.location # from relative to world world.debug.draw_box(bounding_box, transform.rotation, thickness=thickness, color=color, life_time=1.0/fps)
Example #15
Source File: route_scenario.py From scenario_runner with MIT License | 4 votes |
def _build_scenario_instances(self, world, ego_vehicle, scenario_definitions, scenarios_per_tick=5, timeout=300, debug_mode=False): """ Based on the parsed route and possible scenarios, build all the scenario classes. """ scenario_instance_vec = [] if debug_mode: for scenario in scenario_definitions: loc = carla.Location(scenario['trigger_position']['x'], scenario['trigger_position']['y'], scenario['trigger_position']['z']) + carla.Location(z=2.0) world.debug.draw_point(loc, size=0.3, color=carla.Color(255, 0, 0), life_time=100000) world.debug.draw_string(loc, str(scenario['name']), draw_shadow=False, color=carla.Color(0, 0, 255), life_time=100000, persistent_lines=True) for scenario_number, definition in enumerate(scenario_definitions): # Get the class possibilities for this scenario number scenario_class = NUMBER_CLASS_TRANSLATION[definition['name']] # Create the other actors that are going to appear if definition['other_actors'] is not None: list_of_actor_conf_instances = self._get_actors_instances(definition['other_actors']) else: list_of_actor_conf_instances = [] # Create an actor configuration for the ego-vehicle trigger position egoactor_trigger_position = convert_json_to_transform(definition['trigger_position']) scenario_configuration = ScenarioConfiguration() scenario_configuration.other_actors = list_of_actor_conf_instances scenario_configuration.trigger_points = [egoactor_trigger_position] scenario_configuration.subtype = definition['scenario_type'] scenario_configuration.ego_vehicles = [ActorConfigurationData('vehicle.lincoln.mkz2017', ego_vehicle.get_transform(), 'hero')] route_var_name = "ScenarioRouteNumber{}".format(scenario_number) scenario_configuration.route_var_name = route_var_name try: scenario_instance = scenario_class(world, [ego_vehicle], scenario_configuration, criteria_enable=False, timeout=timeout) # Do a tick every once in a while to avoid spawning everything at the same time if scenario_number % scenarios_per_tick == 0: if CarlaDataProvider.is_sync_mode(): world.tick() else: world.wait_for_tick() scenario_number += 1 except Exception as e: # pylint: disable=broad-except if debug_mode: traceback.print_exc() print("Skipping scenario '{}' due to setup error: {}".format(definition['name'], e)) continue scenario_instance_vec.append(scenario_instance) return scenario_instance_vec
Example #16
Source File: moment_editor.py From Multiverse with Apache License 2.0 | 4 votes |
def plot_trajs_carla(world, traj_data, args, is_vehicle=False): vehicle_traj_color = ((0, 255, 255), (255, 0, 255)) person_traj_color = ((255, 255, 0), (0, 255, 0)) color = person_traj_color if is_vehicle: color = vehicle_traj_color red = carla.Color(r=255, g=0, b=0) for pid in traj_data: trajs = traj_data[pid] # show the person id at the beginning string = "Person #%s" % pid if is_vehicle: string = "Vehicle #%s" % pid world.debug.draw_string( xyz_to_carla(trajs[0]["xyz"]), string, draw_shadow=False, color=red, life_time=1.0/args.video_fps) # just a point: if len(trajs) == 1: frame_id = trajs[0]["frame_id"] # color for observation this_color = color[0] if frame_id >= args.moment_frame_ids[args.obs_length]: # color for prediction period this_color = color[1] this_color = carla.Color( r=this_color[0], g=this_color[1], b=this_color[2]) world.debug.draw_point( xyz_to_carla(trajs[0]["xyz"]), color=this_color, size=0.1, life_time=1.0/args.video_fps) # assuming the trajectory is sorted in time for p1, p2 in zip(trajs[:-1], trajs[1:]): frame_id = p2["frame_id"] # color for observation this_color = color[0] if frame_id >= args.moment_frame_ids[args.obs_length]: # color for prediction period this_color = color[1] this_color = carla.Color( r=this_color[0], g=this_color[1], b=this_color[2]) p1_xyz = xyz_to_carla(p1["xyz"]) p2_xyz = xyz_to_carla(p2["xyz"]) world.debug.draw_arrow( p1_xyz, p2_xyz, thickness=0.1, arrow_size=0.1, color=this_color, life_time=1.0/args.video_fps) if p2["is_stationary"]: world.debug.draw_point( p2_xyz, color=red, size=0.1, life_time=1.0/args.video_fps)