summaryrefslogtreecommitdiffhomepage
path: root/tracker-trackhat/dialog.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tracker-trackhat/dialog.cpp')
-rw-r--r--tracker-trackhat/dialog.cpp19
1 files changed, 18 insertions, 1 deletions
diff --git a/tracker-trackhat/dialog.cpp b/tracker-trackhat/dialog.cpp
index 9e3f9655..c6144a4c 100644
--- a/tracker-trackhat/dialog.cpp
+++ b/tracker-trackhat/dialog.cpp
@@ -6,7 +6,7 @@ trackhat_dialog::trackhat_dialog()
{
ui.setupUi(this);
poll_tracker_info();
- poll_timer.setInterval(250);
+ poll_timer.setInterval(100);
const std::tuple<QString, model_type> model_types[] = {
{ tr("Cap"), model_cap },
@@ -98,6 +98,7 @@ void trackhat_dialog::unregister_tracker()
tracker = nullptr;
poll_tracker_info();
poll_timer.stop();
+ update_raw_data();
}
void trackhat_dialog::save()
@@ -127,6 +128,7 @@ void trackhat_dialog::poll_tracker_info()
ui.status_label->setText(tr("Status: %1 points detected. Good!").arg(tracker->get_n_points()));
else
ui.status_label->setText(tr("Status: %1 points detected. BAD!").arg(tracker->get_n_points()));
+ update_raw_data();
}
void trackhat_dialog::set_buttons_visible(bool x)
@@ -134,3 +136,18 @@ void trackhat_dialog::set_buttons_visible(bool x)
ui.buttonBox->setVisible(x);
adjustSize();
}
+void trackhat_dialog::update_raw_data()
+{
+ QLabel* labels[] = { ui.label_x, ui.label_y, ui.label_z, ui.label_yaw, ui.label_pitch, ui.label_roll };
+ if (tracker)
+ {
+ QString str; str.reserve(16);
+ double data[6] {};
+ tracker->data(data);
+ for (unsigned i = 0; i < std::size(labels); i++)
+ labels[i]->setText(str.sprintf("%.2f%s", data[i], i >= 3 ? "°" : " mm"));
+ }
+ else
+ for (QLabel* x : labels)
+ x->setText(QStringLiteral("-"));
+}