move onroad/driving stuff from system/ui to selfdrive/ui (#35425)

* mv system/ui/onroad->selfdrive/ui/onroad

* mv ui_state

* fix import path

* fix imports

* mv cameraview

* remove from application
pull/35428/head
Dean Lee 3 months ago committed by GitHub
parent bb36b6687c
commit 29afd667cc
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
  1. 0
      selfdrive/ui/onroad/__init__.py
  2. 2
      selfdrive/ui/onroad/alert_renderer.py
  3. 13
      selfdrive/ui/onroad/augmented_road_view.py
  4. 0
      selfdrive/ui/onroad/cameraview.py
  5. 4
      selfdrive/ui/onroad/driver_camera_view.py
  6. 2
      selfdrive/ui/onroad/driver_state.py
  7. 2
      selfdrive/ui/onroad/hud_renderer.py
  8. 2
      selfdrive/ui/onroad/model_renderer.py
  9. 0
      selfdrive/ui/ui_state.py
  10. 16
      system/ui/lib/application.py

@ -5,7 +5,7 @@ from cereal import messaging, log
from openpilot.system.hardware import TICI
from openpilot.system.ui.lib.application import gui_app, FontWeight
from openpilot.system.ui.lib.label import gui_text_box
from openpilot.system.ui.lib.ui_state import ui_state
from openpilot.selfdrive.ui.ui_state import ui_state
ALERT_MARGIN = 40

@ -3,12 +3,12 @@ import pyray as rl
from cereal import log
from msgq.visionipc import VisionStreamType
from openpilot.system.ui.lib.ui_state import ui_state, UIStatus, UI_BORDER_SIZE
from openpilot.system.ui.onroad.alert_renderer import AlertRenderer
from openpilot.system.ui.onroad.driver_state import DriverStateRenderer
from openpilot.system.ui.onroad.hud_renderer import HudRenderer
from openpilot.system.ui.onroad.model_renderer import ModelRenderer
from openpilot.system.ui.widgets.cameraview import CameraView
from openpilot.selfdrive.ui.ui_state import ui_state, UIStatus, UI_BORDER_SIZE
from openpilot.selfdrive.ui.onroad.alert_renderer import AlertRenderer
from openpilot.selfdrive.ui.onroad.driver_state import DriverStateRenderer
from openpilot.selfdrive.ui.onroad.hud_renderer import HudRenderer
from openpilot.selfdrive.ui.onroad.model_renderer import ModelRenderer
from openpilot.selfdrive.ui.onroad.cameraview import CameraView
from openpilot.system.ui.lib.application import gui_app
from openpilot.common.transformations.camera import DEVICE_CAMERAS, DeviceCameraConfig, view_frame_from_device_frame
from openpilot.common.transformations.orientation import rot_from_euler
@ -175,6 +175,7 @@ if __name__ == "__main__":
print("***press space to switch camera view***")
try:
for _ in gui_app.render():
ui_state.update()
if rl.is_key_released(rl.KeyboardKey.KEY_SPACE):
is_wide = road_camera_view.stream_type == VisionStreamType.VISION_STREAM_WIDE_ROAD
road_camera_view.switch_stream(VisionStreamType.VISION_STREAM_ROAD if is_wide else VisionStreamType.VISION_STREAM_WIDE_ROAD)

@ -1,11 +1,11 @@
import numpy as np
import pyray as rl
from cereal import messaging
from openpilot.system.ui.widgets.cameraview import CameraView
from msgq.visionipc import VisionStreamType
from openpilot.selfdrive.ui.onroad.cameraview import CameraView
from openpilot.selfdrive.ui.onroad.driver_state import DriverStateRenderer
from openpilot.system.ui.lib.application import gui_app, FontWeight
from openpilot.system.ui.lib.label import gui_label
from openpilot.system.ui.onroad.driver_state import DriverStateRenderer
class DriverCameraView(CameraView):

@ -1,8 +1,8 @@
import numpy as np
import pyray as rl
from dataclasses import dataclass
from openpilot.selfdrive.ui.ui_state import ui_state, UI_BORDER_SIZE
from openpilot.system.ui.lib.application import gui_app
from openpilot.system.ui.lib.ui_state import ui_state, UI_BORDER_SIZE
# Default 3D coordinates for face keypoints as a NumPy array

@ -1,7 +1,7 @@
import pyray as rl
from dataclasses import dataclass
from cereal.messaging import SubMaster
from openpilot.system.ui.lib.ui_state import ui_state, UIStatus
from openpilot.selfdrive.ui.ui_state import ui_state, UIStatus
from openpilot.system.ui.lib.application import gui_app, FontWeight
from openpilot.common.conversions import Conversions as CV

@ -4,8 +4,8 @@ import pyray as rl
from cereal import messaging, car
from dataclasses import dataclass, field
from openpilot.common.params import Params
from openpilot.selfdrive.ui.ui_state import ui_state
from openpilot.system.ui.lib.application import DEFAULT_FPS
from openpilot.system.ui.lib.ui_state import ui_state
from openpilot.system.ui.lib.shader_polygon import draw_polygon

@ -36,16 +36,6 @@ class FontWeight(IntEnum):
BLACK = 8
def _get_ui_state():
"""Safely import and return ui_state, or None if unavailable."""
try:
from openpilot.system.ui.lib.ui_state import ui_state
return ui_state
except ImportError:
return None
class GuiApplication:
def __init__(self, width: int, height: int):
self._fonts: dict[FontWeight, rl.Font] = {}
@ -149,7 +139,6 @@ class GuiApplication:
rl.close_window()
def render(self):
ui_state = _get_ui_state()
try:
while not (self._window_close_requested or rl.window_should_close()):
if self._render_texture:
@ -159,9 +148,6 @@ class GuiApplication:
rl.begin_drawing()
rl.clear_background(rl.BLACK)
if ui_state is not None:
ui_state.update()
yield
if self._render_texture:
@ -206,7 +192,7 @@ class GuiApplication:
# Create a character set from our keyboard layouts
from openpilot.system.ui.widgets.keyboard import KEYBOARD_LAYOUTS
from openpilot.system.ui.onroad.hud_renderer import CRUISE_DISABLED_CHAR
from openpilot.selfdrive.ui.onroad.hud_renderer import CRUISE_DISABLED_CHAR
all_chars = set()
for layout in KEYBOARD_LAYOUTS.values():
all_chars.update(key for row in layout for key in row)

Loading…
Cancel
Save