From f37084fd89f5d5564407f6d2ee484dce8d7651b6 Mon Sep 17 00:00:00 2001 From: Shane Smiskol Date: Mon, 23 May 2022 15:01:11 -0700 Subject: [PATCH] test --- SConstruct | 1 - selfdrive/ui/navd/map_renderer.cc | 1 + selfdrive/ui/qt/maps/map.cc | 150 ++++++++++++++++++------------ selfdrive/ui/qt/maps/map.h | 3 + 4 files changed, 92 insertions(+), 63 deletions(-) diff --git a/SConstruct b/SConstruct index d9d05f7940..18573e4e89 100644 --- a/SConstruct +++ b/SConstruct @@ -165,7 +165,6 @@ env = Environment( "-g", "-fPIC", "-O2", - "-Wunused", "-Werror", "-Wshadow", "-Wno-unknown-warning-option", diff --git a/selfdrive/ui/navd/map_renderer.cc b/selfdrive/ui/navd/map_renderer.cc index 638689ca48..99d7df7366 100644 --- a/selfdrive/ui/navd/map_renderer.cc +++ b/selfdrive/ui/navd/map_renderer.cc @@ -140,6 +140,7 @@ void MapRenderer::updateRoute(QList coordinates) { } void MapRenderer::initLayers() { + qDebug() << "SHOULDN'T BE HERE"; if (!m_map->layerExists("navLayer")) { QVariantMap nav; nav["id"] = "navLayer"; diff --git a/selfdrive/ui/qt/maps/map.cc b/selfdrive/ui/qt/maps/map.cc index 8d6f6d5a16..b2013c266a 100644 --- a/selfdrive/ui/qt/maps/map.cc +++ b/selfdrive/ui/qt/maps/map.cc @@ -64,6 +64,9 @@ MapWindow::~MapWindow() { } void MapWindow::initLayers() { + if (layers_initialized) return; +// if (!gl_initialized) return; + layers_initialized = true; // This doesn't work from initializeGL if (!m_map->layerExists("modelPathLayer")) { qDebug() << "Initializing modelPathLayer"; @@ -102,6 +105,7 @@ void MapWindow::initLayers() { m_map->setLayoutProperty("carPosLayer", "icon-ignore-placement", true); m_map->setLayoutProperty("carPosLayer", "icon-allow-overlap", true); m_map->setLayoutProperty("carPosLayer", "symbol-sort-key", 0); +// if (m_map->layerExists("carPosLayer")) car_layer_initialized = true; } } @@ -109,17 +113,17 @@ void MapWindow::updateState(const UIState &s) { if (!uiState()->scene.started) { return; } - double t = millis_since_boot(); - double e; +// double t = millis_since_boot(); +// double e; - update(); - qDebug() << "updateState()"; +// update(); +// qDebug() << "updateState()"; const SubMaster &sm = *(s.sm); - e = millis_since_boot() - t; - qDebug() << "update():" << e << "ms"; - t = millis_since_boot(); - -// sm.update(0); +// e = millis_since_boot() - t; +// qDebug() << "update():" << e << "ms"; +// t = millis_since_boot(); +// +//// sm.update(0); if (sm.updated("liveLocationKalman")) { auto location = sm["liveLocationKalman"].getLiveLocationKalman(); auto pos = location.getPositionGeodetic(); @@ -135,11 +139,11 @@ void MapWindow::updateState(const UIState &s) { velocity_filter.update(velocity.getValue()[0]); } } - - e = millis_since_boot() - t; - qDebug() << "liveLocationKalman:" << e << "ms"; - t = millis_since_boot(); - +// +// e = millis_since_boot() - t; +// qDebug() << "liveLocationKalman:" << e << "ms"; +// t = millis_since_boot(); +// if (sm.updated("navRoute") && sm["navRoute"].getNavRoute().getCoordinates().size()) { qWarning() << "Got new navRoute from navd. Opening map:" << allow_open; @@ -149,31 +153,39 @@ void MapWindow::updateState(const UIState &s) { allow_open = false; } } - - e = millis_since_boot() - t; - qDebug() << "navRoute:" << e << "ms"; - t = millis_since_boot(); - +// +// e = millis_since_boot() - t; +// qDebug() << "navRoute:" << e << "ms"; +// t = millis_since_boot(); +// if (m_map.isNull()) { return; } - - loaded_once = loaded_once || m_map->isFullyLoaded(); - if (!loaded_once) { - map_instructions->showError("Map Loading"); - return; - } - - e = millis_since_boot() - t; - qDebug() << "instructions:" << e << "ms"; - t = millis_since_boot(); - - initLayers(); - - e = millis_since_boot() - t; - qDebug() << "initLayers:" << e << "ms"; - t = millis_since_boot(); - +// +// loaded_once = loaded_once || m_map->isFullyLoaded(); +// if (!loaded_once) { +// map_instructions->showError("Map Loading"); +// return; +// } +// +// e = millis_since_boot() - t; +// qDebug() << "instructions:" << e << "ms"; +// t = millis_since_boot(); +// + if (gl_initialized) { + qDebug() << "About to initialize layers"; + initLayers(); + QVector layers = m_map->layerIds(); + qDebug() << "layer size:" << layers.size(); +// for (auto layer_id : layers) { +// qDebug() << layer_id; +// } + } +// +// e = millis_since_boot() - t; +// qDebug() << "initLayers:" << e << "ms"; +// t = millis_since_boot(); +// if (!localizer_valid) { map_instructions->showError("Waiting for GPS"); } else { @@ -187,32 +199,37 @@ void MapWindow::updateState(const UIState &s) { carPosSource["data"] = QVariant::fromValue(feature1); m_map->updateSource("carPosSource", carPosSource); } - - e = millis_since_boot() - t; - qDebug() << "location marker:" << e << "ms"; - t = millis_since_boot(); - +// +// e = millis_since_boot() - t; +// qDebug() << "location marker:" << an_counter == 0) { +// if (last_position) m_map->setCoordinate(*last_position); +// if (last_bearing) m_map->setBearing(*last_bearing); +// } else { +// pan_counter--; +// }e << "ms"; +// t = millis_since_boot(); +// if (pan_counter == 0) { if (last_position) m_map->setCoordinate(*last_position); if (last_bearing) m_map->setBearing(*last_bearing); } else { pan_counter--; } - - e = millis_since_boot() - t; - qDebug() << "pan counter:" << e << "ms"; - t = millis_since_boot(); - +// +// e = millis_since_boot() - t; +// qDebug() << "pan counter:" << e << "ms"; +// t = millis_since_boot(); +// if (zoom_counter == 0) { m_map->setZoom(util::map_val(velocity_filter.x(), 0, 30, MAX_ZOOM, MIN_ZOOM)); } else { zoom_counter--; } - e = millis_since_boot() - t; - qDebug() << "zoom counter:" << e << "ms"; - t = millis_since_boot(); - +// e = millis_since_boot() - t; +// qDebug() << "zoom counter:" << e << "ms"; +// t = millis_since_boot(); +// if (sm.updated("navInstruction")) { if (sm.valid("navInstruction")) { auto i = sm["navInstruction"].getNavInstruction(); @@ -228,11 +245,11 @@ void MapWindow::updateState(const UIState &s) { clearRoute(); } } - - e = millis_since_boot() - t; - qDebug() << "navInstruction:" << e << "ms"; - t = millis_since_boot(); - +// +// e = millis_since_boot() - t; +// qDebug() << "navInstruction:" << e << "ms"; +// t = millis_since_boot(); +// if (sm.rcv_frame("navRoute") != route_rcv_frame) { qWarning() << "Updating navLayer with new route"; auto route = sm["navRoute"].getNavRoute(); @@ -246,19 +263,22 @@ void MapWindow::updateState(const UIState &s) { route_rcv_frame = sm.rcv_frame("navRoute"); } - - e = millis_since_boot() - t; - qDebug() << "navRoute:" << e << "ms"; - t = millis_since_boot(); - qDebug() << "\n\n"; +// +// e = millis_since_boot() - t; +// qDebug() << "navRoute:" << e << "ms"; +// t = millis_since_boot(); +// qDebug() << "\n\n"; + update(); } void MapWindow::resizeGL(int w, int h) { + qDebug() << "resizeGL"; m_map->resize(size() / MAP_SCALE); map_instructions->setFixedWidth(width()); } void MapWindow::initializeGL() { + qDebug() << "initializeGL"; m_map.reset(new QMapboxGL(this, m_settings, size(), 1)); if (last_position) { @@ -276,11 +296,12 @@ void MapWindow::initializeGL() { loaded_once = true; } }); + gl_initialized = true; } void MapWindow::paintGL() { - if (!isVisible() || m_map.isNull()) return; double t = millis_since_boot(); + if (!isVisible() || m_map.isNull()) return; m_map->render(); double e = millis_since_boot() - t; qDebug() << "MapWindow::paintGL():" << e << "ms"; @@ -313,12 +334,15 @@ void MapWindow::mouseDoubleClickEvent(QMouseEvent *ev) { } void MapWindow::mouseMoveEvent(QMouseEvent *ev) { + double t = millis_since_boot(); QPointF delta = ev->localPos() - m_lastPos; if (!delta.isNull()) { pan_counter = PAN_TIMEOUT; m_map->moveBy(delta / MAP_SCALE); -// update(); + update(); + double e = millis_since_boot() - t; + qDebug() << "MapWindow::mouseMoveEvent():" << e << "ms"; } m_lastPos = ev->localPos(); @@ -429,6 +453,7 @@ MapInstructions::MapInstructions(QWidget * parent) : QWidget(parent) { } void MapInstructions::updateDistance(float d) { + qDebug() << "updateDistance"; d = std::max(d, 0.0f); QString distance_str; @@ -627,6 +652,7 @@ void MapETA::updateETA(float s, float s_typical, float d) { hide(); return; } + qDebug() << "updateETA"; // ETA auto eta_time = QDateTime::currentDateTime().addSecs(s).time(); diff --git a/selfdrive/ui/qt/maps/map.h b/selfdrive/ui/qt/maps/map.h index f301ffe445..d85278ff17 100644 --- a/selfdrive/ui/qt/maps/map.h +++ b/selfdrive/ui/qt/maps/map.h @@ -80,6 +80,9 @@ private: QMapboxGLSettings m_settings; QScopedPointer m_map; + bool car_layer_initialized = false; + bool layers_initialized = false; + bool gl_initialized = false; void initLayers();