diff --git a/selfdrive/ui/sunnypilot/qt/onroad/hud.cc b/selfdrive/ui/sunnypilot/qt/onroad/hud.cc index 8e797fe7ff..b7f5b33579 100644 --- a/selfdrive/ui/sunnypilot/qt/onroad/hud.cc +++ b/selfdrive/ui/sunnypilot/qt/onroad/hud.cc @@ -161,10 +161,8 @@ void HudRendererSP::updateState(const UIState &s) { navigationValid = nav.getValid(); if (navigationValid && nav.getAllManeuvers().size() > 0) { auto maneuver = nav.getAllManeuvers()[-1]; - QString modifier = QString::fromStdString(maneuver.getModifier()); - if (modifier == "left") navigationArrowType = "left"; - else if (modifier == "right") navigationArrowType = "right"; - else navigationArrowType = "straight"; + navigationModifier = QString::fromStdString(maneuver.getModifier()); + navigationManeuverType = QString::fromStdString(maneuver.getType()); float dist = maneuver.getDistance(); if (is_metric) { @@ -189,10 +187,22 @@ void HudRendererSP::updateState(const UIState &s) { } else { navigationStreet = instruction; } + + // Get next maneuver if available + if (nav.getAllManeuvers().size() > 1) { + auto nextManeuver = nav.getAllManeuvers()[-2]; + navigationNextModifier = QString::fromStdString(nextManeuver.getModifier()); + navigationNextManeuverType = QString::fromStdString(nextManeuver.getType()); + navigationHasNext = true; + } else { + navigationHasNext = false; + } } else { navigationStreet = "W. Gonzalez Blvd."; // sample fields for metadrive sim (@nayan) navigationDistance = "5.8 mi"; - navigationArrowType = "straight"; + navigationModifier = "straight"; + navigationNextModifier = "right"; + navigationHasNext = true; } } } @@ -226,17 +236,17 @@ void HudRendererSP::draw(QPainter &p, const QRect &surface_rect) { if (smartCruiseControlMapEnabled) y_scc_m = orders[i++]; // Smart Cruise Control - Vision - bool scc_vision_active_pulse = pulseElement(smartCruiseControlVisionFrame); - if ((smartCruiseControlVisionEnabled && !smartCruiseControlVisionActive) || (smartCruiseControlVisionActive && scc_vision_active_pulse)) { + //bool scc_vision_active_pulse = pulseElement(smartCruiseControlVisionFrame); + //if ((smartCruiseControlVisionEnabled && !smartCruiseControlVisionActive) || (smartCruiseControlVisionActive && scc_vision_active_pulse)) { drawSmartCruiseControlOnroadIcon(p, surface_rect, x_offset, y_scc_v, "SCC-V"); - } + //} smartCruiseControlVisionFrame = smartCruiseControlVisionActive ? (smartCruiseControlVisionFrame + 1) : 0; // Smart Cruise Control - Map - bool scc_map_active_pulse = pulseElement(smartCruiseControlMapFrame); - if ((smartCruiseControlMapEnabled && !smartCruiseControlMapActive) || (smartCruiseControlMapActive && scc_map_active_pulse)) { + //bool scc_map_active_pulse = pulseElement(smartCruiseControlMapFrame); + //if ((smartCruiseControlMapEnabled && !smartCruiseControlMapActive) || (smartCruiseControlMapActive && scc_map_active_pulse)) { drawSmartCruiseControlOnroadIcon(p, surface_rect, x_offset, y_scc_m, "SCC-M"); - } + //} smartCruiseControlMapFrame = smartCruiseControlMapActive ? (smartCruiseControlMapFrame + 1) : 0; // Bottom Dev UI @@ -349,7 +359,7 @@ bool HudRendererSP::pulseElement(int frame) { } void HudRendererSP::drawSmartCruiseControlOnroadIcon(QPainter &p, const QRect &surface_rect, int x_offset, int y_offset, std::string name) { - int x = surface_rect.center().x(); + int x = surface_rect.left() + 860; int y = surface_rect.height() / 4; QString text = QString::fromStdString(name); @@ -727,36 +737,41 @@ void HudRendererSP::drawSpeedLimitPreActiveArrow(QPainter &p, QRect &sign_rect) } void HudRendererSP::drawSetSpeedSP(QPainter &p, const QRect &surface_rect) { - // Draw outer box + border to contain set speed - const QSize default_size = {172, 204}; - QSize set_speed_size = is_metric ? QSize(200, 204) : default_size; - QRect set_speed_rect(QPoint(60 + (default_size.width() - set_speed_size.width()) / 2, 45), set_speed_size); + // Combined speed display container - taller to fit both speeds + const int container_width = 172; + const int container_height = 280; + const int container_x = 60; + const int container_y = 45; - // Draw set speed box + QRect speed_container(container_x, container_y, container_width, container_height); + + // Draw outer rounded rectangle container p.setPen(QPen(QColor(255, 255, 255, 75), 6)); p.setBrush(QColor(0, 0, 0, 166)); - p.drawRoundedRect(set_speed_rect, 32, 32); + p.drawRoundedRect(speed_container, 24, 24); + + // ===== BOTTOM SECTION: MAX/SET SPEED ===== // Colors based on status - QColor max_color = QColor(0xa6, 0xa6, 0xa6, 0xff); + QColor max_label_color = QColor(0xa6, 0xa6, 0xa6, 0xff); QColor set_speed_color = QColor(0x72, 0x72, 0x72, 0xff); if (is_cruise_set) { set_speed_color = QColor(255, 255, 255); if (speedLimitAssistActive) { set_speed_color = longOverride ? QColor(0x91, 0x9b, 0x95, 0xff) : QColor(0, 0xff, 0, 0xff); - max_color = longOverride ? QColor(0x91, 0x9b, 0x95, 0xff) : QColor(0x80, 0xd8, 0xa6, 0xff); + max_label_color = longOverride ? QColor(0x91, 0x9b, 0x95, 0xff) : QColor(0x80, 0xd8, 0xa6, 0xff); } else { if (status == STATUS_DISENGAGED) { - max_color = QColor(255, 255, 255); + max_label_color = QColor(255, 255, 255); } else if (status == STATUS_OVERRIDE) { - max_color = QColor(0x91, 0x9b, 0x95, 0xff); + max_label_color = QColor(0x91, 0x9b, 0x95, 0xff); } else { - max_color = QColor(0x80, 0xd8, 0xa6, 0xff); + max_label_color = QColor(0x80, 0xd8, 0xa6, 0xff); } } } - // Draw "MAX" or carState.cruiseState.speedCluster (when ICBM is active) text + // ICBM counter logic if (!pcmCruiseSpeed && carControlEnabled) { if (std::nearbyint(set_speed) != std::nearbyint(speedCluster)) { icbm_active_counter = 3 * UI_FREQ; @@ -766,19 +781,25 @@ void HudRendererSP::drawSetSpeedSP(QPainter &p, const QRect &surface_rect) { } else { icbm_active_counter = 0; } - int max_str_size = (icbm_active_counter != 0) ? 60 : 40; - int max_str_y = (icbm_active_counter != 0) ? 15 : 27; + + // ===== DIVIDER LINE ===== + int divider_y = container_y + 165; + p.setPen(QPen(QColor(255, 255, 255, 50), 2)); + p.drawLine(container_x + 20, divider_y, container_x + container_width - 20, divider_y); + + // Bottom section - MAX label + QRect max_label_rect(container_x, container_y + 175, container_width, 30); + p.setFont(InterFont(28, QFont::Normal)); + p.setPen(max_label_color); QString max_str = (icbm_active_counter != 0) ? QString::number(std::nearbyint(speedCluster)) : tr("MAX"); + p.drawText(max_label_rect, Qt::AlignCenter, max_str); - p.setFont(InterFont(max_str_size, QFont::DemiBold)); - p.setPen(max_color); - p.drawText(set_speed_rect.adjusted(0, max_str_y, 0, 0), Qt::AlignTop | Qt::AlignHCenter, max_str); - - // Draw set speed + // Bottom section - Set speed value + QRect set_speed_rect(container_x, container_y + 210, container_width, 60); QString setSpeedStr = is_cruise_set ? QString::number(std::nearbyint(set_speed)) : "–"; - p.setFont(InterFont(90, QFont::Bold)); + p.setFont(InterFont(58, QFont::Bold)); p.setPen(set_speed_color); - p.drawText(set_speed_rect.adjusted(0, 77, 0, 0), Qt::AlignTop | Qt::AlignHCenter, setSpeedStr); + p.drawText(set_speed_rect, Qt::AlignCenter, setSpeedStr); } void HudRendererSP::drawE2eAlert(QPainter &p, const QRect &surface_rect, const QString &alert_alt_text) { @@ -836,17 +857,26 @@ void HudRendererSP::drawE2eAlert(QPainter &p, const QRect &surface_rect, const Q } void HudRendererSP::drawCurrentSpeedSP(QPainter &p, const QRect &surface_rect) { + // Draw in top section of the unified speed container + const int container_width = 172; + const int container_x = 60; + const int container_y = 45; + + // ===== TOP SECTION: CURRENT SPEED ===== + + // Current speed value (larger and bolder) QString speedStr = QString::number(std::nearbyint(speed)); + QRect current_speed_rect(container_x, container_y + 25, container_width, 90); + p.setFont(InterFont(85, QFont::Bold)); + p.setPen(Qt::white); + p.drawText(current_speed_rect, Qt::AlignCenter, speedStr); - int speedX = surface_rect.left() + 120; - int speedY = surface_rect.center().y() - 50; - int unitsY = surface_rect.center().y(); - - p.setFont(InterFont(176, QFont::Bold)); - HudRenderer::drawText(p, speedX, speedY, speedStr); - - p.setFont(InterFont(66)); - HudRenderer::drawText(p, speedX, unitsY, is_metric ? tr("km/h") : tr("mph"), 200); + // Speed unit label + QRect unit_rect(container_x, container_y + 115, container_width, 35); + p.setFont(InterFont(30, QFont::Normal)); + p.setPen(QColor(180, 180, 180, 255)); + QString unit = is_metric ? tr("km/h") : tr("mph"); + p.drawText(unit_rect, Qt::AlignCenter, unit); } void HudRendererSP::drawBlinker(QPainter &p, const QRect &surface_rect) { @@ -933,99 +963,245 @@ void HudRendererSP::drawBlinker(QPainter &p, const QRect &surface_rect) { p.restore(); } +QString HudRendererSP::getNavigationIconName(const QString &type, const QString &mod) { + // Map maneuver type and modifier to icon filename + // Icon naming convention: direction_{maneuver_type}_{modifier}.png + + QString icon_name; + + // Maneuver types that support all modifiers + if (type == "turn") { + // turn: uturn, sharp_right, right, slight_right, straight, slight_left, left, sharp_left + if (mod == "uturn") icon_name = "direction_uturn.png"; + else if (mod == "sharp right") icon_name = "direction_turn_sharp_right.png"; + else if (mod == "right") icon_name = "direction_turn_right.png"; + else if (mod == "slight right") icon_name = "direction_turn_slight_right.png"; + else if (mod == "straight") icon_name = "direction_turn_straight.png"; + else if (mod == "slight left") icon_name = "direction_turn_slight_left.png"; + else if (mod == "left") icon_name = "direction_turn_left.png"; + else if (mod == "sharp left") icon_name = "direction_turn_sharp_left.png"; + } + else if (type == "new name") { + // new name: sharp_right, right, slight_right, straight, slight_left, left, sharp_left + if (mod == "sharp right") icon_name = "direction_new_name_sharp_right.png"; + else if (mod == "right") icon_name = "direction_new_name_right.png"; + else if (mod == "slight right") icon_name = "direction_new_name_slight_right.png"; + else if (mod == "straight") icon_name = "direction_new_name_straight.png"; + else if (mod == "slight left") icon_name = "direction_new_name_slight_left.png"; + else if (mod == "left") icon_name = "direction_new_name_left.png"; + else if (mod == "sharp left") icon_name = "direction_new_name_sharp_left.png"; + } + else if (type == "depart") { + // depart: right, straight, left + if (mod == "right") icon_name = "direction_depart_right.png"; + else if (mod == "straight") icon_name = "direction_depart_straight.png"; + else if (mod == "left") icon_name = "direction_depart_left.png"; + else icon_name = "direction_depart.png"; // default depart + } + else if (type == "arrive") { + // arrive: right, straight, left + if (mod == "right") icon_name = "direction_arrive_right.png"; + else if (mod == "straight") icon_name = "direction_arrive_straight.png"; + else if (mod == "left") icon_name = "direction_arrive_left.png"; + else icon_name = "direction_arrive.png"; // default arrive (flag) + } + else if (type == "merge") { + // merge: slight_right, straight, slight_left, left, right + if (mod == "slight right") icon_name = "direction_merge_slight_right.png"; + else if (mod == "right") icon_name = "direction_merge_right.png"; + else if (mod == "straight") icon_name = "direction_merge_straight.png"; + else if (mod == "slight left") icon_name = "direction_merge_slight_left.png"; + else if (mod == "left") icon_name = "direction_merge_left.png"; + } + else if (type == "on ramp") { + // on ramp: sharp_right, right, slight_right, straight, slight_left, left, sharp_left + if (mod == "sharp right") icon_name = "direction_on_ramp_sharp_right.png"; + else if (mod == "right") icon_name = "direction_on_ramp_right.png"; + else if (mod == "slight right") icon_name = "direction_on_ramp_slight_right.png"; + else if (mod == "straight") icon_name = "direction_on_ramp_straight.png"; + else if (mod == "slight left") icon_name = "direction_on_ramp_slight_left.png"; + else if (mod == "left") icon_name = "direction_on_ramp_left.png"; + else if (mod == "sharp left") icon_name = "direction_on_ramp_sharp_left.png"; + } + else if (type == "off ramp") { + // off ramp: slight_right, right, slight_left, left + if (mod == "slight right") icon_name = "direction_off_ramp_slight_right.png"; + else if (mod == "right") icon_name = "direction_off_ramp_right.png"; + else if (mod == "slight left") icon_name = "direction_off_ramp_slight_left.png"; + else if (mod == "left") icon_name = "direction_off_ramp_left.png"; + } + else if (type == "fork") { + // fork: slight_right, right, straight, slight_left, left + if (mod == "slight right") icon_name = "direction_fork_slight_right.png"; + else if (mod == "right") icon_name = "direction_fork_right.png"; + else if (mod == "straight") icon_name = "direction_fork_straight.png"; + else if (mod == "slight left") icon_name = "direction_fork_slight_left.png"; + else if (mod == "left") icon_name = "direction_fork_left.png"; + else icon_name = "direction_fork.png"; // default fork + } + else if (type == "end of road") { + // end of road: right, left + if (mod == "right") icon_name = "direction_end_of_road_right.png"; + else if (mod == "left") icon_name = "direction_end_of_road_left.png"; + } + else if (type == "continue") { + // continue: uturn, right, slight_right, straight, slight_left, left + if (mod == "uturn") icon_name = "direction_continue_uturn.png"; + else if (mod == "right") icon_name = "direction_continue_right.png"; + else if (mod == "slight right") icon_name = "direction_continue_slight_right.png"; + else if (mod == "straight") icon_name = "direction_continue_straight.png"; + else if (mod == "slight left") icon_name = "direction_continue_slight_left.png"; + else if (mod == "left") icon_name = "direction_continue_left.png"; + else icon_name = "direction_continue.png"; // default continue + } + else if (type == "roundabout") { + // roundabout: sharp_right, right, slight_right, straight, slight_left, left, sharp_left + if (mod == "sharp right") icon_name = "direction_roundabout_sharp_right.png"; + else if (mod == "right") icon_name = "direction_roundabout_right.png"; + else if (mod == "slight right") icon_name = "direction_roundabout_slight_right.png"; + else if (mod == "straight") icon_name = "direction_roundabout_straight.png"; + else if (mod == "slight left") icon_name = "direction_roundabout_slight_left.png"; + else if (mod == "left") icon_name = "direction_roundabout_left.png"; + else if (mod == "sharp left") icon_name = "direction_roundabout_sharp_left.png"; + else icon_name = "direction_roundabout.png"; // default roundabout + } + else if (type == "rotary") { + // rotary: sharp_right, right, slight_right, straight, slight_left, left, sharp_left + if (mod == "sharp right") icon_name = "direction_rotary_sharp_right.png"; + else if (mod == "right") icon_name = "direction_rotary_right.png"; + else if (mod == "slight right") icon_name = "direction_rotary_slight_right.png"; + else if (mod == "straight") icon_name = "direction_rotary_straight.png"; + else if (mod == "slight left") icon_name = "direction_rotary_slight_left.png"; + else if (mod == "left") icon_name = "direction_rotary_left.png"; + else if (mod == "sharp left") icon_name = "direction_rotary_sharp_left.png"; + else icon_name = "direction_rotary.png"; // default rotary + } + else if (type == "roundabout turn") { + // Use roundabout icons + if (mod == "sharp right") icon_name = "direction_roundabout_sharp_right.png"; + else if (mod == "right") icon_name = "direction_roundabout_right.png"; + else if (mod == "slight right") icon_name = "direction_roundabout_slight_right.png"; + else if (mod == "straight") icon_name = "direction_roundabout_straight.png"; + else if (mod == "slight left") icon_name = "direction_roundabout_slight_left.png"; + else if (mod == "left") icon_name = "direction_roundabout_left.png"; + else if (mod == "sharp left") icon_name = "direction_roundabout_sharp_left.png"; + else icon_name = "direction_roundabout.png"; + } + else if (type == "notification") { + // notification: sharp_right, right, slight_right, straight, slight_left, left, sharp_left + if (mod == "sharp right") icon_name = "direction_notification_sharp_right.png"; + else if (mod == "right") icon_name = "direction_notification_right.png"; + else if (mod == "slight right") icon_name = "direction_notification_slight_right.png"; + else if (mod == "straight") icon_name = "direction_notification_straight.png"; + else if (mod == "slight left") icon_name = "direction_notification_slight_left.png"; + else if (mod == "left") icon_name = "direction_notification_left.png"; + else if (mod == "sharp left") icon_name = "direction_notification_sharp_left.png"; + } + + // If no match found, return default based on modifier only + if (icon_name.isEmpty()) { + if (mod == "uturn") icon_name = "direction_uturn.png"; + else if (mod == "sharp right") icon_name = "direction_turn_sharp_right.png"; + else if (mod == "right") icon_name = "direction_turn_right.png"; + else if (mod == "slight right") icon_name = "direction_turn_slight_right.png"; + else if (mod == "straight") icon_name = "direction_continue_straight.png"; + else if (mod == "slight left") icon_name = "direction_turn_slight_left.png"; + else if (mod == "left") icon_name = "direction_turn_left.png"; + else if (mod == "sharp left") icon_name = "direction_turn_sharp_left.png"; + else icon_name = "direction_continue_straight.png"; // ultimate fallback + } + + return icon_name; +} + void HudRendererSP::drawNavigationHUD(QPainter &p, const QRect &surface_rect) { - int x = surface_rect.center().x(); - int y = 50; - int arrowSize = 176; - int cy_offset = (navigationArrowType == "left" || navigationArrowType == "right") ? -20 : 0; - int cx = x - 100; - int textY = y + arrowSize/2 + cy_offset; - int cy = (navigationArrowType == "straight") ? textY + 20 : textY + 60; // make straight more centered-ish bc its big boy + + // For local testing + /* + navigationValid = true; + navigationHasNext = true; + + navigationStreet = "W. Gonzalez Blvd."; + navigationDistance = "5.8 mi"; + navigationModifier = "right"; + navigationManeuverType = "roundabout"; + navigationNextModifier = "left"; + navigationNextManeuverType = "arrive"; + */ + + if (!navigationValid && navigationStreet.isEmpty()) return; p.save(); - p.setPen(Qt::NoPen); - p.setBrush(Qt::white); - if (navigationArrowType == "left") { - drawLeftArrow(p, cx, cy, arrowSize); - } else if (navigationArrowType == "right") { - drawRightArrow(p, cx, cy, arrowSize); - } else { - drawStraightArrow(p, cx, cy, arrowSize); + const int container_width = 620; + const int container_height = 120; + const int container_x = (surface_rect.width() - container_width) / 2; + const int container_y = 80; + const int border_radius = 28; + + QRect container_rect(container_x, container_y, container_width, container_height); + + p.setPen(Qt::NoPen); + p.setBrush(QColor(0, 0, 0, 180)); + p.drawRoundedRect(container_rect, border_radius, border_radius); + + // Navigation icon + const int icon_size = 80; + const int icon_padding = 20; + const int icon_x = container_x + icon_padding; + const int icon_y = container_y + (container_height - icon_size) / 2; + + QString icon_name = getNavigationIconName(navigationManeuverType, navigationModifier); + QPixmap nav_icon = loadPixmap("../../sunnypilot/selfdrive/assets/navigation/" + icon_name, {icon_size, icon_size}); + + if (!nav_icon.isNull()) { + p.drawPixmap(icon_x, icon_y, nav_icon); + } + + const int then_section_width = 90; + const int text_x = icon_x + icon_size + 20; + const int text_area_width = container_width - (text_x - container_x) - icon_padding - then_section_width; + + // Street name + p.setFont(InterFont(45, QFont::Bold)); + p.setPen(QColor(220, 220, 220, 255)); + QFontMetrics fm(p.font()); + QString truncated_street = fm.elidedText(navigationStreet, Qt::ElideRight, text_area_width); + QRect street_rect(text_x, container_y + 15, text_area_width, 50); + p.drawText(street_rect, Qt::AlignLeft | Qt::AlignVCenter, truncated_street); + + // Distance + p.setFont(InterFont(36, QFont::Normal)); + p.setPen(Qt::white); + QRect distance_rect(text_x, container_y + 70, text_area_width, 40); + p.drawText(distance_rect, Qt::AlignLeft | Qt::AlignVCenter, navigationDistance); + + // Next Maneuver + if (navigationHasNext) { + + const int divider_x = container_x + container_width - then_section_width - 5; + p.setPen(QPen(QColor(255, 255, 255, 50), 2)); + p.drawLine(divider_x, container_y + 15, divider_x, container_y + container_height - 15); + + const int then_x = divider_x + 10; + const int then_icon_size = 50; + + QRect then_label_rect(then_x, container_y + 10, then_section_width - 15, 25); + p.setFont(InterFont(25, QFont::Normal)); + p.setPen(QColor(180, 180, 180, 255)); + p.drawText(then_label_rect, Qt::AlignCenter, tr("Then")); + + // Next maneuver icon + const int then_icon_x = then_x + (then_section_width - 15 - then_icon_size) / 2; + const int then_icon_y = container_y + 45; + + QString next_icon_name = getNavigationIconName(navigationNextManeuverType, navigationNextModifier); + QPixmap next_nav_icon = loadPixmap("../../sunnypilot/selfdrive/assets/navigation/" + next_icon_name, {then_icon_size, then_icon_size}); + + if (!next_nav_icon.isNull()) { + p.drawPixmap(then_icon_x, then_icon_y, next_nav_icon); + } } p.restore(); - - int gap = (navigationArrowType == "left") ? -10 : 20; - int textX = cx + arrowSize/2 + gap; - if (navigationArrowType == "right") textX += 40; // move that beech over for right arrow - - // Draw distance text - p.setFont(InterFont(80, QFont::Bold)); - p.setPen(Qt::white); - p.drawText(textX, textY, navigationDistance); - - p.setFont(InterFont(50)); - int streetY = textY + 60; // draw street name below distance text - p.drawText(textX, streetY, navigationStreet); -} - -void HudRendererSP::drawStraightArrow(QPainter &p, int cx, int cy, int size) { - int rectWidth = size * 0.2; - int rectHeight = size * 0.6; - int rectX = cx - rectWidth / 2; - int rectY = cy - rectHeight / 2; - p.drawRect(rectX, rectY, rectWidth, rectHeight); - - int triangleHeight = size * 0.3; - int triangleBaseWidth = rectWidth * 3; - QPolygon triangle; - triangle << QPoint(cx - triangleBaseWidth / 2, rectY) - << QPoint(cx + triangleBaseWidth / 2, rectY) - << QPoint(cx, rectY - triangleHeight); - p.drawPolygon(triangle); -} - -void HudRendererSP::drawLeftArrow(QPainter &p, int cx, int cy, int size) { - int vertHeight = size * 0.6; - int vertWidth = size * 0.2; - int vertX = cx - vertWidth / 2; - int vertY = cy - vertHeight; - p.drawRect(vertX, vertY, vertWidth, vertHeight); - - int horizWidth = size * 0.4; - int horizHeight = size * 0.2; - int horizX = cx - horizWidth + vertWidth / 2 + 1; // 1 to adjust pix gap bc my math ain't mathing today - int horizY = cy - vertHeight - horizHeight / 2; - p.drawRect(horizX, horizY, horizWidth, horizHeight); - - int triangleWidth = size * 0.4; - int triangleHeight = size * 0.4; - QPolygon triangle; - triangle << QPoint(horizX, horizY + horizHeight / 2 - triangleHeight / 2) - << QPoint(horizX, horizY + horizHeight / 2 + triangleHeight / 2) - << QPoint(horizX - triangleWidth, horizY + horizHeight / 2); - p.drawPolygon(triangle); // I think i dislike qpolygons. they're mad annoying -} - -void HudRendererSP::drawRightArrow(QPainter &p, int cx, int cy, int size) { - int vertHeight = size * 0.6; - int vertWidth = size * 0.2; - int vertX = cx - vertWidth / 2; - int vertY = cy - vertHeight; - p.drawRect(vertX, vertY, vertWidth, vertHeight); - - int horizWidth = size * 0.4; - int horizHeight = size * 0.2; - int horizX = cx - vertWidth / 2; - int horizY = cy - vertHeight - horizHeight / 2; - p.drawRect(horizX, horizY, horizWidth, horizHeight); - - int triangleWidth = size * 0.4; - int triangleHeight = size * 0.4; - QPolygon triangle; - triangle << QPoint(horizX + horizWidth, horizY + horizHeight / 2 - triangleHeight / 2) - << QPoint(horizX + horizWidth, horizY + horizHeight / 2 + triangleHeight / 2) - << QPoint(horizX + horizWidth + triangleWidth, horizY + horizHeight / 2); - p.drawPolygon(triangle); } diff --git a/selfdrive/ui/sunnypilot/qt/onroad/hud.h b/selfdrive/ui/sunnypilot/qt/onroad/hud.h index af2b0e149b..00e4c64fe9 100644 --- a/selfdrive/ui/sunnypilot/qt/onroad/hud.h +++ b/selfdrive/ui/sunnypilot/qt/onroad/hud.h @@ -40,10 +40,7 @@ private: void drawCurrentSpeedSP(QPainter &p, const QRect &surface_rect); void drawBlinker(QPainter &p, const QRect &surface_rect); void drawNavigationHUD(QPainter &p, const QRect &surface_rect); - - void drawStraightArrow(QPainter &p, int cx, int cy, int size); - void drawLeftArrow(QPainter &p, int cx, int cy, int size); - void drawRightArrow(QPainter &p, int cx, int cy, int size); + QString getNavigationIconName(const QString &type, const QString &mod); bool lead_status; float lead_d_rel; @@ -129,5 +126,9 @@ private: bool navigationValid; QString navigationStreet; QString navigationDistance; - QString navigationArrowType; + QString navigationModifier; + QString navigationManeuverType; + QString navigationNextModifier; + QString navigationNextManeuverType; + bool navigationHasNext; }; diff --git a/sunnypilot/selfdrive/assets/navigation/direction_arrive.png b/sunnypilot/selfdrive/assets/navigation/direction_arrive.png new file mode 100644 index 0000000000..f8c5bdc2d8 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_arrive.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae17f4c1896c88a6d520f1acdca99ab23d4ce1140a500b64bea3185041f8ecd9 +size 1246 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_arrive_left.png b/sunnypilot/selfdrive/assets/navigation/direction_arrive_left.png new file mode 100644 index 0000000000..6f59ab3711 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_arrive_left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:86a2eaf6070d6b93df385945bd7f4a6e9bb78b7cc42eb5b7ef9a9b6c075c80ce +size 1581 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_arrive_right.png b/sunnypilot/selfdrive/assets/navigation/direction_arrive_right.png new file mode 100644 index 0000000000..318e041339 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_arrive_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:398f30c89e396bb4bdbac1ba6dfe292f6e3278923e14113e705f4d0591671f32 +size 1528 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_arrive_straight.png b/sunnypilot/selfdrive/assets/navigation/direction_arrive_straight.png new file mode 100644 index 0000000000..f8c5bdc2d8 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_arrive_straight.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ae17f4c1896c88a6d520f1acdca99ab23d4ce1140a500b64bea3185041f8ecd9 +size 1246 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_close.png b/sunnypilot/selfdrive/assets/navigation/direction_close.png new file mode 100644 index 0000000000..0e9e478d45 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_close.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0e23cac9bec0de20f9632d19618be9b05eedb010c6e23b0ba7a8e3cc8225f64e +size 865 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_continue.png b/sunnypilot/selfdrive/assets/navigation/direction_continue.png new file mode 100644 index 0000000000..ce2c42c43d --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_continue.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:008cf037b8713c710eacd1129973119faa2527ab1c19aee5340a16dc0659df8a +size 1063 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_continue_left.png b/sunnypilot/selfdrive/assets/navigation/direction_continue_left.png new file mode 100644 index 0000000000..438532ee29 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_continue_left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:579d6a27e062779d41beb9320abf5797bc8ec81de1f355a4197c3b3ee0766f28 +size 1400 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_continue_right.png b/sunnypilot/selfdrive/assets/navigation/direction_continue_right.png new file mode 100644 index 0000000000..4ee7ebc3b4 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_continue_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a4010c8122af918dbdb50e88629adbf79f7733f022bba263e6f44f6ffae3e7a5 +size 1371 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_continue_slight_left.png b/sunnypilot/selfdrive/assets/navigation/direction_continue_slight_left.png new file mode 100644 index 0000000000..29f4440460 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_continue_slight_left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89041889817454869d98adfb5a16fae33596c038d5484ec734fe3a5cc532c45c +size 1334 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_continue_slight_right.png b/sunnypilot/selfdrive/assets/navigation/direction_continue_slight_right.png new file mode 100644 index 0000000000..755935b84c --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_continue_slight_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e691dd43947c9430fcd73e6bede94aa5fd8995e9303eba53cc0ac589a7c9f106 +size 1347 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_continue_straight.png b/sunnypilot/selfdrive/assets/navigation/direction_continue_straight.png new file mode 100644 index 0000000000..ce2c42c43d --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_continue_straight.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:008cf037b8713c710eacd1129973119faa2527ab1c19aee5340a16dc0659df8a +size 1063 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_continue_uturn.png b/sunnypilot/selfdrive/assets/navigation/direction_continue_uturn.png new file mode 100644 index 0000000000..ff9d97893f --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_continue_uturn.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e02ac2720f12f9373ae2d86d91fffb6203e18aba04b493bd6f41d2953a11cbc9 +size 1780 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_depart.png b/sunnypilot/selfdrive/assets/navigation/direction_depart.png new file mode 100644 index 0000000000..aa4e4f7115 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_depart.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8f83214c1fa6aba33ca3e1fe29db09733a275efe19864866b9edecbb59abb171 +size 1234 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_depart_left.png b/sunnypilot/selfdrive/assets/navigation/direction_depart_left.png new file mode 100644 index 0000000000..76937eb5d3 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_depart_left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:459fe6410e061542876fa7de93efaf901d15937f891e801e1b93f8270e750130 +size 1613 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_depart_right.png b/sunnypilot/selfdrive/assets/navigation/direction_depart_right.png new file mode 100644 index 0000000000..149626b171 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_depart_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e3f5fb80d62c92876a5e490917f549e2a443dfc683a6787506747bbbeb75d33b +size 1538 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_depart_straight.png b/sunnypilot/selfdrive/assets/navigation/direction_depart_straight.png new file mode 100644 index 0000000000..aa4e4f7115 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_depart_straight.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8f83214c1fa6aba33ca3e1fe29db09733a275efe19864866b9edecbb59abb171 +size 1234 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_end_of_road_left.png b/sunnypilot/selfdrive/assets/navigation/direction_end_of_road_left.png new file mode 100644 index 0000000000..32a602bdef --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_end_of_road_left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b9c86ddd75ea1ed2c49c1bdc2e7f98ed15d12226938073688dda1b0bbdf62308 +size 1439 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_end_of_road_right.png b/sunnypilot/selfdrive/assets/navigation/direction_end_of_road_right.png new file mode 100644 index 0000000000..68915cee25 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_end_of_road_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:cc7248e62d11cf36f9a13d408a0954a51ff0eee9b8e03d8910a2eb2cb6a09ffd +size 1456 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_flag.png b/sunnypilot/selfdrive/assets/navigation/direction_flag.png new file mode 100644 index 0000000000..26e8a220f2 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_flag.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8509bd5dbf96e44f73421dc09ca8f7c1dddf2dc21f3b4b15650472b3e06b3470 +size 658 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_fork.png b/sunnypilot/selfdrive/assets/navigation/direction_fork.png new file mode 100644 index 0000000000..c3019a5991 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_fork.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:5198a3fdb610001358501ca76ab52fe0979b9254ed85cbbb2ce1fab1cb77929a +size 2015 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_fork_left.png b/sunnypilot/selfdrive/assets/navigation/direction_fork_left.png new file mode 100644 index 0000000000..a847257e9b --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_fork_left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:752424da0ad8430c619045455a86c640b576f8bbe6d3d8b5b6a599b1c61ef489 +size 1863 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_fork_right.png b/sunnypilot/selfdrive/assets/navigation/direction_fork_right.png new file mode 100644 index 0000000000..102ddf753c --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_fork_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6590df8da1f30ec61b3bdf729fda1956d340c5abab448ea0062105500cc5da5 +size 1841 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_fork_slight_left.png b/sunnypilot/selfdrive/assets/navigation/direction_fork_slight_left.png new file mode 100644 index 0000000000..945ef744e0 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_fork_slight_left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b4fbd63acf8f5e7f734b332a96e9ad138ad22ee07000ad425712e71b77ce0728 +size 1800 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_fork_slight_right.png b/sunnypilot/selfdrive/assets/navigation/direction_fork_slight_right.png new file mode 100644 index 0000000000..65db839df9 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_fork_slight_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a7a7f5bcab30ce961ff7e345c460cfbd133e45c66da1fe1f0e7bc7c826b05f30 +size 1805 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_fork_straight.png b/sunnypilot/selfdrive/assets/navigation/direction_fork_straight.png new file mode 100644 index 0000000000..74528d230c --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_fork_straight.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:676cbe95f9a663816dd77c55dbcf2c346bfae2454be7832914b5527219aba91f +size 2473 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_invalid.png b/sunnypilot/selfdrive/assets/navigation/direction_invalid.png new file mode 100644 index 0000000000..ce2c42c43d --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_invalid.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:008cf037b8713c710eacd1129973119faa2527ab1c19aee5340a16dc0659df8a +size 1063 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_invalid_left.png b/sunnypilot/selfdrive/assets/navigation/direction_invalid_left.png new file mode 100644 index 0000000000..438532ee29 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_invalid_left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:579d6a27e062779d41beb9320abf5797bc8ec81de1f355a4197c3b3ee0766f28 +size 1400 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_invalid_right.png b/sunnypilot/selfdrive/assets/navigation/direction_invalid_right.png new file mode 100644 index 0000000000..4ee7ebc3b4 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_invalid_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a4010c8122af918dbdb50e88629adbf79f7733f022bba263e6f44f6ffae3e7a5 +size 1371 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_invalid_slight_left.png b/sunnypilot/selfdrive/assets/navigation/direction_invalid_slight_left.png new file mode 100644 index 0000000000..29f4440460 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_invalid_slight_left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89041889817454869d98adfb5a16fae33596c038d5484ec734fe3a5cc532c45c +size 1334 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_invalid_slight_right.png b/sunnypilot/selfdrive/assets/navigation/direction_invalid_slight_right.png new file mode 100644 index 0000000000..755935b84c --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_invalid_slight_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e691dd43947c9430fcd73e6bede94aa5fd8995e9303eba53cc0ac589a7c9f106 +size 1347 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_invalid_straight.png b/sunnypilot/selfdrive/assets/navigation/direction_invalid_straight.png new file mode 100644 index 0000000000..ce2c42c43d --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_invalid_straight.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:008cf037b8713c710eacd1129973119faa2527ab1c19aee5340a16dc0659df8a +size 1063 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_invalid_uturn.png b/sunnypilot/selfdrive/assets/navigation/direction_invalid_uturn.png new file mode 100644 index 0000000000..ff9d97893f --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_invalid_uturn.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e02ac2720f12f9373ae2d86d91fffb6203e18aba04b493bd6f41d2953a11cbc9 +size 1780 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_merge_left.png b/sunnypilot/selfdrive/assets/navigation/direction_merge_left.png new file mode 100644 index 0000000000..7812f9eb94 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_merge_left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:08245891301f814fc0245133e39df3fb14720025cc3e4bc7131f953ead47edc8 +size 1535 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_merge_right.png b/sunnypilot/selfdrive/assets/navigation/direction_merge_right.png new file mode 100644 index 0000000000..3c44c8fc75 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_merge_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8c629c7273fe2613538295aba807edfddbbae86ae77d6f9b0b60b0486e3f7ca9 +size 1484 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_merge_slight_left.png b/sunnypilot/selfdrive/assets/navigation/direction_merge_slight_left.png new file mode 100644 index 0000000000..756fb01853 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_merge_slight_left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:72c1ef39486f3dc3f7a0a97777bce16c7c369cc85bf6c82629d6780803804967 +size 1765 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_merge_slight_right.png b/sunnypilot/selfdrive/assets/navigation/direction_merge_slight_right.png new file mode 100644 index 0000000000..b8d42b741f --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_merge_slight_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:8b8bfd8019320127ed0fe03d4a1bddab57d5c2345b6cdeab66558ea9b53c0266 +size 1699 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_merge_straight.png b/sunnypilot/selfdrive/assets/navigation/direction_merge_straight.png new file mode 100644 index 0000000000..60035c1f01 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_merge_straight.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d10bdde82e7896de072de28da46412d5e2f6c902fd5643c6b48a8fc79ed4232f +size 113 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_new_name_left.png b/sunnypilot/selfdrive/assets/navigation/direction_new_name_left.png new file mode 100644 index 0000000000..438532ee29 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_new_name_left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:579d6a27e062779d41beb9320abf5797bc8ec81de1f355a4197c3b3ee0766f28 +size 1400 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_new_name_right.png b/sunnypilot/selfdrive/assets/navigation/direction_new_name_right.png new file mode 100644 index 0000000000..4ee7ebc3b4 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_new_name_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a4010c8122af918dbdb50e88629adbf79f7733f022bba263e6f44f6ffae3e7a5 +size 1371 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_new_name_sharp_left.png b/sunnypilot/selfdrive/assets/navigation/direction_new_name_sharp_left.png new file mode 100644 index 0000000000..ae1f3741ef --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_new_name_sharp_left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0457b0597386d0b7d3cc06d961df5fb34211ee575da7fab2f81e424d9954bb42 +size 1549 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_new_name_sharp_right.png b/sunnypilot/selfdrive/assets/navigation/direction_new_name_sharp_right.png new file mode 100644 index 0000000000..0d8cd3ed53 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_new_name_sharp_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4f6e1556f0b888afb6856f8cf3e16632959190f88dd66c4d9db4832a8269cbc5 +size 1552 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_new_name_slight_left.png b/sunnypilot/selfdrive/assets/navigation/direction_new_name_slight_left.png new file mode 100644 index 0000000000..29f4440460 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_new_name_slight_left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89041889817454869d98adfb5a16fae33596c038d5484ec734fe3a5cc532c45c +size 1334 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_new_name_slight_right.png b/sunnypilot/selfdrive/assets/navigation/direction_new_name_slight_right.png new file mode 100644 index 0000000000..755935b84c --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_new_name_slight_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e691dd43947c9430fcd73e6bede94aa5fd8995e9303eba53cc0ac589a7c9f106 +size 1347 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_new_name_straight.png b/sunnypilot/selfdrive/assets/navigation/direction_new_name_straight.png new file mode 100644 index 0000000000..ce2c42c43d --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_new_name_straight.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:008cf037b8713c710eacd1129973119faa2527ab1c19aee5340a16dc0659df8a +size 1063 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_notificaiton_right.png b/sunnypilot/selfdrive/assets/navigation/direction_notificaiton_right.png new file mode 100644 index 0000000000..4ee7ebc3b4 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_notificaiton_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a4010c8122af918dbdb50e88629adbf79f7733f022bba263e6f44f6ffae3e7a5 +size 1371 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_notificaiton_sharp_right.png b/sunnypilot/selfdrive/assets/navigation/direction_notificaiton_sharp_right.png new file mode 100644 index 0000000000..f338742e58 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_notificaiton_sharp_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:57dbfdabe88f6abbb8993982eef72803ac504842e9a9d388e7dde1623f69f0d7 +size 1551 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_notification_left.png b/sunnypilot/selfdrive/assets/navigation/direction_notification_left.png new file mode 100644 index 0000000000..438532ee29 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_notification_left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:579d6a27e062779d41beb9320abf5797bc8ec81de1f355a4197c3b3ee0766f28 +size 1400 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_notification_right.png b/sunnypilot/selfdrive/assets/navigation/direction_notification_right.png new file mode 100644 index 0000000000..4ee7ebc3b4 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_notification_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a4010c8122af918dbdb50e88629adbf79f7733f022bba263e6f44f6ffae3e7a5 +size 1371 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_notification_sharp_left.png b/sunnypilot/selfdrive/assets/navigation/direction_notification_sharp_left.png new file mode 100644 index 0000000000..d2f1d491a0 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_notification_sharp_left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4f2016b7bac3accf541f100a2c83871618214e1806e95e4d80867d30d1dfcf03 +size 1546 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_notification_slight_left.png b/sunnypilot/selfdrive/assets/navigation/direction_notification_slight_left.png new file mode 100644 index 0000000000..29f4440460 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_notification_slight_left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89041889817454869d98adfb5a16fae33596c038d5484ec734fe3a5cc532c45c +size 1334 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_notification_slight_right.png b/sunnypilot/selfdrive/assets/navigation/direction_notification_slight_right.png new file mode 100644 index 0000000000..755935b84c --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_notification_slight_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e691dd43947c9430fcd73e6bede94aa5fd8995e9303eba53cc0ac589a7c9f106 +size 1347 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_notification_straight.png b/sunnypilot/selfdrive/assets/navigation/direction_notification_straight.png new file mode 100644 index 0000000000..ce2c42c43d --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_notification_straight.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:008cf037b8713c710eacd1129973119faa2527ab1c19aee5340a16dc0659df8a +size 1063 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_off_ramp_left.png b/sunnypilot/selfdrive/assets/navigation/direction_off_ramp_left.png new file mode 100644 index 0000000000..d01bb4fce3 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_off_ramp_left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6736b6c2123cbaf90d2c8e4da79a4089ba42c0e7a220a596e45afd511166da9b +size 1524 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_off_ramp_right.png b/sunnypilot/selfdrive/assets/navigation/direction_off_ramp_right.png new file mode 100644 index 0000000000..013ec5a4c9 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_off_ramp_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6a636d33568c658b05e460e05a1eac5c4e1cfced204044657a04191027c44c4c +size 1580 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_off_ramp_slight_left.png b/sunnypilot/selfdrive/assets/navigation/direction_off_ramp_slight_left.png new file mode 100644 index 0000000000..39497c8d41 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_off_ramp_slight_left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a27d55d704f77bca4beaac30a2c5b5abee304986627d09f971b2a2e0367e8477 +size 1478 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_off_ramp_slight_right.png b/sunnypilot/selfdrive/assets/navigation/direction_off_ramp_slight_right.png new file mode 100644 index 0000000000..a68d28d674 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_off_ramp_slight_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e711c8e2184440f4ddead06897c90758470e7475fa7e0cf8b2db567e491c8e57 +size 1519 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_on_ramp_left.png b/sunnypilot/selfdrive/assets/navigation/direction_on_ramp_left.png new file mode 100644 index 0000000000..438532ee29 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_on_ramp_left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:579d6a27e062779d41beb9320abf5797bc8ec81de1f355a4197c3b3ee0766f28 +size 1400 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_on_ramp_right.png b/sunnypilot/selfdrive/assets/navigation/direction_on_ramp_right.png new file mode 100644 index 0000000000..4ee7ebc3b4 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_on_ramp_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a4010c8122af918dbdb50e88629adbf79f7733f022bba263e6f44f6ffae3e7a5 +size 1371 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_on_ramp_sharp_left.png b/sunnypilot/selfdrive/assets/navigation/direction_on_ramp_sharp_left.png new file mode 100644 index 0000000000..ae1f3741ef --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_on_ramp_sharp_left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0457b0597386d0b7d3cc06d961df5fb34211ee575da7fab2f81e424d9954bb42 +size 1549 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_on_ramp_sharp_right.png b/sunnypilot/selfdrive/assets/navigation/direction_on_ramp_sharp_right.png new file mode 100644 index 0000000000..f338742e58 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_on_ramp_sharp_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:57dbfdabe88f6abbb8993982eef72803ac504842e9a9d388e7dde1623f69f0d7 +size 1551 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_on_ramp_slight_left.png b/sunnypilot/selfdrive/assets/navigation/direction_on_ramp_slight_left.png new file mode 100644 index 0000000000..e640fe3404 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_on_ramp_slight_left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:7b2f19864347794510da5e13ebaed40cc01d45bbd649c3e5097052607af52fa7 +size 1334 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_on_ramp_slight_right.png b/sunnypilot/selfdrive/assets/navigation/direction_on_ramp_slight_right.png new file mode 100644 index 0000000000..d309f2d14e --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_on_ramp_slight_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0d2704d4d480568deb63598a48b741b024f4e55f5936e3eeb9cdc3daf6618837 +size 1346 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_on_ramp_straight.png b/sunnypilot/selfdrive/assets/navigation/direction_on_ramp_straight.png new file mode 100644 index 0000000000..ce2c42c43d --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_on_ramp_straight.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:008cf037b8713c710eacd1129973119faa2527ab1c19aee5340a16dc0659df8a +size 1063 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_rotary.png b/sunnypilot/selfdrive/assets/navigation/direction_rotary.png new file mode 100644 index 0000000000..20b4052015 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_rotary.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1868ec727cd761aad76fb6cb7705360ed9f70a92aea97f4c3b945b043996d1e2 +size 1906 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_rotary_left.png b/sunnypilot/selfdrive/assets/navigation/direction_rotary_left.png new file mode 100644 index 0000000000..f610501286 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_rotary_left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b2d41ab080452ce24ce27ed833f24790a6e6218dc4a5df4b35d23d6cfc425fbb +size 1543 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_rotary_right.png b/sunnypilot/selfdrive/assets/navigation/direction_rotary_right.png new file mode 100644 index 0000000000..9b8ea37ddf --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_rotary_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:94251b2485f1f8bd0b22eb32fd59459626229c38e4de9aa538ff249b3cc16505 +size 1743 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_rotary_sharp_left.png b/sunnypilot/selfdrive/assets/navigation/direction_rotary_sharp_left.png new file mode 100644 index 0000000000..cbc0882791 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_rotary_sharp_left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:6fbc14fb3720b7452c34c64af8c9b6ce4c953a5e65f3b28ad1ed17b5b2bc47f0 +size 1532 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_rotary_sharp_right.png b/sunnypilot/selfdrive/assets/navigation/direction_rotary_sharp_right.png new file mode 100644 index 0000000000..c7d4ba3175 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_rotary_sharp_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0fe99a15432706ac8bdd5766d3ed4869042b50e0d3c54665b63ba8eb2aaaef20 +size 1855 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_rotary_slight_left.png b/sunnypilot/selfdrive/assets/navigation/direction_rotary_slight_left.png new file mode 100644 index 0000000000..9b5912030b --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_rotary_slight_left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:45115d7c0d4a6285406777787b19b5f6f9c8231ba773aaaa86ab62b7f94b1c51 +size 1699 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_rotary_slight_right.png b/sunnypilot/selfdrive/assets/navigation/direction_rotary_slight_right.png new file mode 100644 index 0000000000..bc5e6b0d2e --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_rotary_slight_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ea0a56d30f763f69ba1c5051f05eac13e61a715ae4d80412b1e0570f3263e27 +size 1821 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_rotary_straight.png b/sunnypilot/selfdrive/assets/navigation/direction_rotary_straight.png new file mode 100644 index 0000000000..ac4eec685e --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_rotary_straight.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:77c42dadeda4d9fdc5b8e7915319880908dd61acb46e289e88f8e067b8e57410 +size 1736 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_roundabout.png b/sunnypilot/selfdrive/assets/navigation/direction_roundabout.png new file mode 100644 index 0000000000..20b4052015 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_roundabout.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:1868ec727cd761aad76fb6cb7705360ed9f70a92aea97f4c3b945b043996d1e2 +size 1906 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_roundabout_left.png b/sunnypilot/selfdrive/assets/navigation/direction_roundabout_left.png new file mode 100644 index 0000000000..f610501286 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_roundabout_left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b2d41ab080452ce24ce27ed833f24790a6e6218dc4a5df4b35d23d6cfc425fbb +size 1543 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_roundabout_right.png b/sunnypilot/selfdrive/assets/navigation/direction_roundabout_right.png new file mode 100644 index 0000000000..9b8ea37ddf --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_roundabout_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:94251b2485f1f8bd0b22eb32fd59459626229c38e4de9aa538ff249b3cc16505 +size 1743 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_roundabout_sharp_left.png b/sunnypilot/selfdrive/assets/navigation/direction_roundabout_sharp_left.png new file mode 100644 index 0000000000..204586589d --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_roundabout_sharp_left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e7423462cc52bf5d97b6d2e05626f8066a6580b03922bc35589690b15d04a222 +size 1532 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_roundabout_sharp_right.png b/sunnypilot/selfdrive/assets/navigation/direction_roundabout_sharp_right.png new file mode 100644 index 0000000000..c7d4ba3175 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_roundabout_sharp_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:0fe99a15432706ac8bdd5766d3ed4869042b50e0d3c54665b63ba8eb2aaaef20 +size 1855 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_roundabout_slight_left.png b/sunnypilot/selfdrive/assets/navigation/direction_roundabout_slight_left.png new file mode 100644 index 0000000000..d8b806137c --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_roundabout_slight_left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2b6cdda3bc23add330fa03095fc46251dbe2516f974d4ae44c321d87dc662d54 +size 1702 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_roundabout_slight_right.png b/sunnypilot/selfdrive/assets/navigation/direction_roundabout_slight_right.png new file mode 100644 index 0000000000..bc5e6b0d2e --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_roundabout_slight_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:9ea0a56d30f763f69ba1c5051f05eac13e61a715ae4d80412b1e0570f3263e27 +size 1821 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_roundabout_straight.png b/sunnypilot/selfdrive/assets/navigation/direction_roundabout_straight.png new file mode 100644 index 0000000000..ac4eec685e --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_roundabout_straight.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:77c42dadeda4d9fdc5b8e7915319880908dd61acb46e289e88f8e067b8e57410 +size 1736 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_turn_left.png b/sunnypilot/selfdrive/assets/navigation/direction_turn_left.png new file mode 100644 index 0000000000..438532ee29 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_turn_left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:579d6a27e062779d41beb9320abf5797bc8ec81de1f355a4197c3b3ee0766f28 +size 1400 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_turn_right.png b/sunnypilot/selfdrive/assets/navigation/direction_turn_right.png new file mode 100644 index 0000000000..4ee7ebc3b4 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_turn_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:a4010c8122af918dbdb50e88629adbf79f7733f022bba263e6f44f6ffae3e7a5 +size 1371 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_turn_sharp_left.png b/sunnypilot/selfdrive/assets/navigation/direction_turn_sharp_left.png new file mode 100644 index 0000000000..d2f1d491a0 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_turn_sharp_left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:4f2016b7bac3accf541f100a2c83871618214e1806e95e4d80867d30d1dfcf03 +size 1546 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_turn_sharp_right.png b/sunnypilot/selfdrive/assets/navigation/direction_turn_sharp_right.png new file mode 100644 index 0000000000..f338742e58 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_turn_sharp_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:57dbfdabe88f6abbb8993982eef72803ac504842e9a9d388e7dde1623f69f0d7 +size 1551 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_turn_slight_left.png b/sunnypilot/selfdrive/assets/navigation/direction_turn_slight_left.png new file mode 100644 index 0000000000..29f4440460 --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_turn_slight_left.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:89041889817454869d98adfb5a16fae33596c038d5484ec734fe3a5cc532c45c +size 1334 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_turn_slight_right.png b/sunnypilot/selfdrive/assets/navigation/direction_turn_slight_right.png new file mode 100644 index 0000000000..755935b84c --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_turn_slight_right.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e691dd43947c9430fcd73e6bede94aa5fd8995e9303eba53cc0ac589a7c9f106 +size 1347 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_turn_straight.png b/sunnypilot/selfdrive/assets/navigation/direction_turn_straight.png new file mode 100644 index 0000000000..ce2c42c43d --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_turn_straight.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:008cf037b8713c710eacd1129973119faa2527ab1c19aee5340a16dc0659df8a +size 1063 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_updown.png b/sunnypilot/selfdrive/assets/navigation/direction_updown.png new file mode 100644 index 0000000000..3c9e3fe22e --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_updown.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:41adb4c64ca3cecf2f6de7dcca8826980369995959ad0eb3d7ec584bbac9b4a6 +size 1327 diff --git a/sunnypilot/selfdrive/assets/navigation/direction_uturn.png b/sunnypilot/selfdrive/assets/navigation/direction_uturn.png new file mode 100644 index 0000000000..ff9d97893f --- /dev/null +++ b/sunnypilot/selfdrive/assets/navigation/direction_uturn.png @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e02ac2720f12f9373ae2d86d91fffb6203e18aba04b493bd6f41d2953a11cbc9 +size 1780