Paparazzi UAS
v7.0_unstable
Paparazzi is a free software Unmanned Aircraft System.
Loading...
Searching...
No Matches
AngleSelector.py
Go to the documentation of this file.
1
#!/usr/bin/env python3
2
3
import
typing
4
5
from
PyQt5
import
QtCore, QtGui, QtWidgets
6
from
PyQt5.QtWidgets
import
QWidget,QMainWindow,QApplication
7
from
gaia_python.ArrowDial
import
ArrowDial
8
9
class
Ui_Form
(object):
10
def
setupUi
(self, Form):
11
Form.setObjectName
(
"Form"
)
12
Form.resize
(175, 200)
13
self.
verticalLayout
=
QtWidgets.QVBoxLayout
(Form)
14
self.
verticalLayout
.
setObjectName
(
"verticalLayout"
)
15
self.
gridLayout
=
QtWidgets.QGridLayout
()
16
self.
gridLayout
.
setObjectName
(
"gridLayout"
)
17
self.
label_3
=
QtWidgets.QLabel
(Form)
18
self.
label_3
.
setObjectName
(
"label_3"
)
19
self.
gridLayout
.
addWidget
(self.
label_3
, 0, 1, 1, 1,
QtCore.Qt.AlignHCenter
|
QtCore.Qt.AlignBottom
)
20
self.
label_4
=
QtWidgets.QLabel
(Form)
21
self.
label_4
.
setObjectName
(
"label_4"
)
22
self.
gridLayout
.
addWidget
(self.
label_4
, 1, 2, 1, 1,
QtCore.Qt.AlignLeft
|
QtCore.Qt.AlignVCenter
)
23
self.
label_2
=
QtWidgets.QLabel
(Form)
24
self.
label_2
.
setObjectName
(
"label_2"
)
25
self.
gridLayout
.
addWidget
(self.
label_2
, 1, 0, 1, 1,
QtCore.Qt.AlignRight
|
QtCore.Qt.AlignVCenter
)
26
self.
dial
=
ArrowDial
(Form)
27
sizePolicy =
QtWidgets.QSizePolicy
(
QtWidgets.QSizePolicy.MinimumExpanding
,
QtWidgets.QSizePolicy.MinimumExpanding
)
28
sizePolicy.setHorizontalStretch
(0)
29
sizePolicy.setVerticalStretch
(0)
30
sizePolicy.setHeightForWidth
(self.
dial
.
sizePolicy
().
hasHeightForWidth
())
31
self.
dial
.
setSizePolicy
(sizePolicy)
32
self.
dial
.
setMinimumSize
(
QtCore.QSize
(100, 100))
33
self.
dial
.
setMaximum
(360)
34
self.
dial
.
setWrapping
(
True
)
35
self.
dial
.
setNotchesVisible
(
True
)
36
self.
dial
.
setObjectName
(
"dial"
)
37
self.
gridLayout
.
addWidget
(self.
dial
, 1, 1, 1, 1)
38
self.
label_5
=
QtWidgets.QLabel
(Form)
39
self.
label_5
.
setObjectName
(
"label_5"
)
40
self.
gridLayout
.
addWidget
(self.
label_5
, 2, 1, 1, 1,
QtCore.Qt.AlignHCenter
|
QtCore.Qt.AlignTop
)
41
self.
verticalLayout
.
addLayout
(self.
gridLayout
)
42
self.
horizontalLayout
=
QtWidgets.QHBoxLayout
()
43
self.
horizontalLayout
.
setObjectName
(
"horizontalLayout"
)
44
self.
label
=
QtWidgets.QLabel
(Form)
45
self.
label
.
setObjectName
(
"label"
)
46
self.
horizontalLayout
.
addWidget
(self.
label
)
47
self.
spinBox
=
QtWidgets.QSpinBox
(Form)
48
self.
spinBox
.
setWrapping
(
True
)
49
self.
spinBox
.
setMaximum
(360)
50
self.
spinBox
.
setObjectName
(
"spinBox"
)
51
self.
horizontalLayout
.
addWidget
(self.
spinBox
)
52
self.
verticalLayout
.
addLayout
(self.
horizontalLayout
)
53
54
self.
retranslateUi
(Form)
55
QtCore.QMetaObject.connectSlotsByName
(Form)
56
57
def
retranslateUi
(self, Form):
58
_translate =
QtCore.QCoreApplication.translate
59
Form.setWindowTitle
(
_translate
(
"Form"
,
"Form"
))
60
self.
label_3
.setText(
_translate
(
"Form"
,
"0"
))
61
self.
label_4
.setText(
_translate
(
"Form"
,
"90"
))
62
self.
label_2
.setText(
_translate
(
"Form"
,
"270"
))
63
self.
label_5
.setText(
_translate
(
"Form"
,
"180"
))
64
self.
label
.setText(
_translate
(
"Form"
,
"Angle (°)"
))
65
66
67
class
AngleSelector
(QWidget):
68
def
__init__
(self, parent: QWidget |
None
= ..., flags:
QtCore.Qt.WindowFlags
|
QtCore.Qt.WindowType
=
QtCore.Qt.WindowType.Widget
) ->
None
:
69
super
().
__init__
(parent, flags)
70
self.
ui
=
Ui_Form
()
71
self.
ui
.setupUi(self)
72
73
self.
ui
.
dial.valueChanged.connect
(
lambda
v : self.
ui
.
spinBox.setValue
(v))
74
self.
ui
.
spinBox.valueChanged.connect
(
lambda
v : self.
ui
.
dial.setValue
(v))
75
76
self.
valueChanged
= self.
ui
.
dial.valueChanged
77
78
self.
setValue
(0)
79
80
def
setText
(self,s:str):
81
self.
ui
.
label.setText
(s)
82
83
def
setValue
(self,v:int):
84
self.
ui
.
dial.setValue
(v)
85
self.
ui
.
spinBox.setValue
(v)
86
87
def
value
(self) -> int:
88
return
self.
ui
.
spinBox.value
()
89
90
91
92
if
__name__ ==
"__main__"
:
93
app = QApplication([])
94
window = QMainWindow()
95
window.setCentralWidget
(
AngleSelector
(window))
96
window.show
()
97
app.exec
()
AngleSelector.AngleSelector
Definition
AngleSelector.py:67
AngleSelector.AngleSelector.setValue
setValue(self, int v)
Definition
AngleSelector.py:83
AngleSelector.AngleSelector.value
int value(self)
Definition
AngleSelector.py:87
AngleSelector.AngleSelector.valueChanged
valueChanged
Definition
AngleSelector.py:76
AngleSelector.AngleSelector.__init__
None __init__(self, QWidget|None parent=..., QtCore.Qt.WindowFlags|QtCore.Qt.WindowType flags=QtCore.Qt.WindowType.Widget)
Definition
AngleSelector.py:68
AngleSelector.AngleSelector.ui
ui
Definition
AngleSelector.py:70
AngleSelector.AngleSelector.setText
setText(self, str s)
Definition
AngleSelector.py:80
AngleSelector.Ui_Form
Definition
AngleSelector.py:9
AngleSelector.Ui_Form.label
label
Definition
AngleSelector.py:44
AngleSelector.Ui_Form.label_4
label_4
Definition
AngleSelector.py:20
AngleSelector.Ui_Form.verticalLayout
verticalLayout
Definition
AngleSelector.py:13
AngleSelector.Ui_Form.retranslateUi
retranslateUi(self, Form)
Definition
AngleSelector.py:57
AngleSelector.Ui_Form.gridLayout
gridLayout
Definition
AngleSelector.py:15
AngleSelector.Ui_Form.label_3
label_3
Definition
AngleSelector.py:17
AngleSelector.Ui_Form.label_2
label_2
Definition
AngleSelector.py:23
AngleSelector.Ui_Form.spinBox
spinBox
Definition
AngleSelector.py:47
AngleSelector.Ui_Form.label_5
label_5
Definition
AngleSelector.py:38
AngleSelector.Ui_Form.setupUi
setupUi(self, Form)
Definition
AngleSelector.py:10
AngleSelector.Ui_Form.dial
dial
Definition
AngleSelector.py:26
AngleSelector.Ui_Form.horizontalLayout
horizontalLayout
Definition
AngleSelector.py:42
foo
uint16_t foo
Definition
main_demo5.c:58
ArrowDial
Definition
ArrowDial.py:1
sw
simulator
gaia_python
AngleSelector.py
Generated on Wed Apr 22 2026 22:47:09 for Paparazzi UAS by
1.9.8