-
Notifications
You must be signed in to change notification settings - Fork 38
/
Copy pathcontrolswidget.cpp
123 lines (111 loc) · 4.45 KB
/
controlswidget.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
#include "controlswidget.h"
ControlsWidget::ControlsWidget(QWidget *parent) :
QWidget(parent)
{
controlsLayout = new QVBoxLayout();
laserLayout = new QHBoxLayout();
laserLabel = new QLabel("Laser Power");
laserPower = new QSlider(Qt::Horizontal);
laserPower->setMinimum(0);
laserPower->setMaximum(16);
laserPower->setValue(16);
laserPower->setSingleStep(1);
laserPower->setTickInterval(1);
laserPower->setTickPosition(QSlider::TicksBothSides);
laserLayout->addWidget(laserLabel);
laserLayout->addWidget(laserPower);
ivcamLayout = new QHBoxLayout();
ivcamLabel = new QLabel("IVCAM");
ivcamSetting = new QSlider(Qt::Horizontal);
ivcamSetting->setMinimum(1);
ivcamSetting->setMaximum(3);
ivcamSetting->setValue(2);
ivcamSetting->setSingleStep(1);
ivcamSetting->setTickInterval(1);
ivcamSetting->setTickPosition(QSlider::TicksBothSides);
ivcamLayout->addWidget(ivcamLabel);
ivcamLayout->addWidget(ivcamSetting);
mrtoLayout = new QHBoxLayout();
mrtoLabel = new QLabel("Motion Range Trade Off");
mrtoSetting = new QSlider(Qt::Horizontal);
mrtoSetting->setMinimum(0);
mrtoSetting->setMaximum(100);
mrtoSetting->setValue(0);
mrtoSetting->setSingleStep(1);
mrtoSetting->setTickInterval(10);
mrtoSetting->setTickPosition(QSlider::TicksBothSides);
mrtoLayout->addWidget(mrtoLabel);
mrtoLayout->addWidget(mrtoSetting);
filterLayout = new QHBoxLayout();
filterLabel = new QLabel("Filter Option");
filterSetting = new QSlider(Qt::Horizontal);
filterSetting->setMinimum(0);
filterSetting->setMaximum(7);
filterSetting->setValue(5);
filterSetting->setSingleStep(1);
filterSetting->setTickInterval(1);
filterSetting->setTickPosition(QSlider::TicksBothSides);
filterLayout->addWidget(filterLabel);
filterLayout->addWidget(filterSetting);
confidenceLayout = new QHBoxLayout();
confidenceLabel = new QLabel("Confidence Threshold");
confidenceSetting = new QSlider(Qt::Horizontal);
confidenceSetting->setMinimum(0);
confidenceSetting->setMaximum(15);
confidenceSetting->setValue(6);
confidenceSetting->setSingleStep(1);
confidenceSetting->setTickInterval(1);
confidenceSetting->setTickPosition(QSlider::TicksBothSides);
confidenceLayout->addWidget(confidenceLabel);
confidenceLayout->addWidget(confidenceSetting);
presetLayout = new QHBoxLayout();
defaultButton = new QPushButton("defaults");
accuracyButton = new QPushButton("accuracy");
infoButton = new QPushButton("information");
presetLayout->addWidget(defaultButton);
presetLayout->addWidget(accuracyButton);
presetLayout->addWidget(infoButton);
controlsLayout->addLayout(laserLayout);
controlsLayout->addLayout(ivcamLayout);
controlsLayout->addLayout(mrtoLayout);
controlsLayout->addLayout(filterLayout);
controlsLayout->addLayout(confidenceLayout);
controlsLayout->addLayout(presetLayout);
this->setLayout(controlsLayout);
connect(defaultButton,SIGNAL(clicked()),this,SLOT(setDefaults()));
connect(accuracyButton,SIGNAL(clicked()),this,SLOT(setAccuracy()));
connect(infoButton,SIGNAL(clicked()),this,SLOT(setInfo()));
}
void ControlsWidget::setCamera(CameraDataFeed * camera){
this->camera = camera;
connect(laserPower,SIGNAL(valueChanged(int)),camera,SLOT(setLaserPower(int)));
connect(ivcamSetting,SIGNAL(valueChanged(int)),camera,SLOT(setIvcamSetting(int)));
connect(mrtoSetting,SIGNAL(valueChanged(int)),camera,SLOT(setMrtoSetting(int)));
connect(filterSetting,SIGNAL(valueChanged(int)),camera,SLOT(setFilterSetting(int)));
connect(confidenceSetting,SIGNAL(valueChanged(int)),camera,SLOT(setConfidenceSetting(int)));
}
void ControlsWidget::setDefaults(){
laserPower->setValue(16);
ivcamSetting->setValue(2);
mrtoSetting->setValue(0);
filterSetting->setValue(5);
confidenceSetting->setValue(6);
}
void ControlsWidget::setAccuracy(){
laserPower->setValue(16);
ivcamSetting->setValue(3);
// mrtoSetting->setValue(0);
filterSetting->setValue(0);
confidenceSetting->setValue(15);
// minSetting->setValue(0);
// maxSetting->setValue(0xffff);
// bothButton->setChecked(true);
// QMetaObject::invokeMethod( vid, "setMask", Q_ARG( int, 0xffff ) );
}
void ControlsWidget::setInfo(){
laserPower->setValue(16);
ivcamSetting->setValue(3);
mrtoSetting->setValue(100);
filterSetting->setValue(7);
confidenceSetting->setValue(0);
}