-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathgui_.py
More file actions
360 lines (354 loc) · 20.1 KB
/
gui_.py
File metadata and controls
360 lines (354 loc) · 20.1 KB
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
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
# -*- coding: utf-8 -*-
# Form implementation generated from reading ui file 'gui.ui'
#
# Created: Thu Dec 29 07:23:27 2016
# by: PyQt5 UI code generator 5.2.1
#
# WARNING! All changes made in this file will be lost!
from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_Drummer(object):
def setupUi(self, Drummer):
Drummer.setObjectName("Drummer")
Drummer.resize(800, 610)
self.horizontalLayoutWidget = QtWidgets.QWidget(Drummer)
self.horizontalLayoutWidget.setGeometry(QtCore.QRect(10, 10, 801, 561))
self.horizontalLayoutWidget.setObjectName("horizontalLayoutWidget")
self.horizontalLayout = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget)
self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
self.horizontalLayout.setObjectName("horizontalLayout")
self.verticalLayout = QtWidgets.QVBoxLayout()
self.verticalLayout.setObjectName("verticalLayout")
self.groupBox_2 = QtWidgets.QGroupBox(self.horizontalLayoutWidget)
self.groupBox_2.setObjectName("groupBox_2")
self.gridLayoutWidget = QtWidgets.QWidget(self.groupBox_2)
self.gridLayoutWidget.setGeometry(QtCore.QRect(10, 30, 371, 131))
self.gridLayoutWidget.setObjectName("gridLayoutWidget")
self.gridLayout = QtWidgets.QGridLayout(self.gridLayoutWidget)
self.gridLayout.setContentsMargins(0, 0, 0, 0)
self.gridLayout.setObjectName("gridLayout")
self.label_11 = QtWidgets.QLabel(self.gridLayoutWidget)
self.label_11.setObjectName("label_11")
self.gridLayout.addWidget(self.label_11, 3, 0, 1, 1)
self.label = QtWidgets.QLabel(self.gridLayoutWidget)
self.label.setObjectName("label")
self.gridLayout.addWidget(self.label, 0, 0, 1, 1)
self.radiusSlider = QtWidgets.QSlider(self.gridLayoutWidget)
self.radiusSlider.setMinimum(1)
self.radiusSlider.setMaximum(1000)
self.radiusSlider.setProperty("value", 50)
self.radiusSlider.setOrientation(QtCore.Qt.Horizontal)
self.radiusSlider.setTickPosition(QtWidgets.QSlider.NoTicks)
self.radiusSlider.setObjectName("radiusSlider")
self.gridLayout.addWidget(self.radiusSlider, 0, 1, 1, 1)
self.label_3 = QtWidgets.QLabel(self.gridLayoutWidget)
self.label_3.setObjectName("label_3")
self.gridLayout.addWidget(self.label_3, 1, 0, 1, 1)
self.decaySlider = QtWidgets.QSlider(self.gridLayoutWidget)
self.decaySlider.setMinimum(1)
self.decaySlider.setMaximum(100)
self.decaySlider.setSingleStep(1)
self.decaySlider.setPageStep(10)
self.decaySlider.setProperty("value", 50)
self.decaySlider.setOrientation(QtCore.Qt.Horizontal)
self.decaySlider.setObjectName("decaySlider")
self.gridLayout.addWidget(self.decaySlider, 1, 1, 1, 1)
self.label_12 = QtWidgets.QLabel(self.gridLayoutWidget)
self.label_12.setObjectName("label_12")
self.gridLayout.addWidget(self.label_12, 2, 0, 1, 1)
self.densityLineEdit = QtWidgets.QLineEdit(self.gridLayoutWidget)
self.densityLineEdit.setInputMask("")
self.densityLineEdit.setMaxLength(5)
self.densityLineEdit.setObjectName("densityLineEdit")
self.gridLayout.addWidget(self.densityLineEdit, 3, 2, 1, 1)
self.densitySlider = QtWidgets.QSlider(self.gridLayoutWidget)
self.densitySlider.setMinimum(1)
self.densitySlider.setMaximum(1000)
self.densitySlider.setProperty("value", 100)
self.densitySlider.setOrientation(QtCore.Qt.Horizontal)
self.densitySlider.setObjectName("densitySlider")
self.gridLayout.addWidget(self.densitySlider, 3, 1, 1, 1)
self.tensionSlider = QtWidgets.QSlider(self.gridLayoutWidget)
self.tensionSlider.setMinimum(1)
self.tensionSlider.setMaximum(1000)
self.tensionSlider.setProperty("value", 500)
self.tensionSlider.setOrientation(QtCore.Qt.Horizontal)
self.tensionSlider.setObjectName("tensionSlider")
self.gridLayout.addWidget(self.tensionSlider, 2, 1, 1, 1)
self.tensionLineEdit = QtWidgets.QLineEdit(self.gridLayoutWidget)
self.tensionLineEdit.setInputMask("")
self.tensionLineEdit.setMaxLength(5)
self.tensionLineEdit.setObjectName("tensionLineEdit")
self.gridLayout.addWidget(self.tensionLineEdit, 2, 2, 1, 1)
self.radiusLineEdit = QtWidgets.QLineEdit(self.gridLayoutWidget)
self.radiusLineEdit.setInputMask("")
self.radiusLineEdit.setMaxLength(5)
self.radiusLineEdit.setCursorMoveStyle(QtCore.Qt.VisualMoveStyle)
self.radiusLineEdit.setObjectName("radiusLineEdit")
self.gridLayout.addWidget(self.radiusLineEdit, 0, 2, 1, 1)
self.decayLineEdit = QtWidgets.QLineEdit(self.gridLayoutWidget)
self.decayLineEdit.setInputMask("")
self.decayLineEdit.setMaxLength(5)
self.decayLineEdit.setObjectName("decayLineEdit")
self.gridLayout.addWidget(self.decayLineEdit, 1, 2, 1, 1)
self.label_2 = QtWidgets.QLabel(self.gridLayoutWidget)
self.label_2.setObjectName("label_2")
self.gridLayout.addWidget(self.label_2, 0, 3, 1, 1)
self.label_13 = QtWidgets.QLabel(self.gridLayoutWidget)
self.label_13.setObjectName("label_13")
self.gridLayout.addWidget(self.label_13, 1, 3, 1, 1)
self.label_14 = QtWidgets.QLabel(self.gridLayoutWidget)
self.label_14.setObjectName("label_14")
self.gridLayout.addWidget(self.label_14, 2, 3, 1, 1)
self.label_15 = QtWidgets.QLabel(self.gridLayoutWidget)
self.label_15.setObjectName("label_15")
self.gridLayout.addWidget(self.label_15, 3, 3, 1, 1)
self.gridLayout.setColumnStretch(0, 3)
self.gridLayout.setColumnStretch(1, 5)
self.gridLayout.setColumnStretch(2, 2)
self.gridLayout.setRowStretch(0, 1)
self.gridLayout.setRowStretch(1, 1)
self.gridLayout.setRowStretch(2, 1)
self.gridLayout.setRowStretch(3, 1)
self.verticalLayout.addWidget(self.groupBox_2)
self.groupBox_3 = QtWidgets.QGroupBox(self.horizontalLayoutWidget)
self.groupBox_3.setObjectName("groupBox_3")
self.gridLayoutWidget_2 = QtWidgets.QWidget(self.groupBox_3)
self.gridLayoutWidget_2.setGeometry(QtCore.QRect(10, 30, 371, 112))
self.gridLayoutWidget_2.setObjectName("gridLayoutWidget_2")
self.gridLayout_4 = QtWidgets.QGridLayout(self.gridLayoutWidget_2)
self.gridLayout_4.setContentsMargins(0, 0, 0, 0)
self.gridLayout_4.setObjectName("gridLayout_4")
self.label_4 = QtWidgets.QLabel(self.gridLayoutWidget_2)
self.label_4.setObjectName("label_4")
self.gridLayout_4.addWidget(self.label_4, 0, 0, 1, 1)
self.rStepsSlider = QtWidgets.QSlider(self.gridLayoutWidget_2)
self.rStepsSlider.setMinimum(10)
self.rStepsSlider.setMaximum(100)
self.rStepsSlider.setProperty("value", 30)
self.rStepsSlider.setOrientation(QtCore.Qt.Horizontal)
self.rStepsSlider.setObjectName("rStepsSlider")
self.gridLayout_4.addWidget(self.rStepsSlider, 0, 1, 1, 1)
self.label_5 = QtWidgets.QLabel(self.gridLayoutWidget_2)
self.label_5.setObjectName("label_5")
self.gridLayout_4.addWidget(self.label_5, 1, 0, 1, 1)
self.maxMSlider = QtWidgets.QSlider(self.gridLayoutWidget_2)
self.maxMSlider.setMinimum(1)
self.maxMSlider.setMaximum(10)
self.maxMSlider.setProperty("value", 2)
self.maxMSlider.setOrientation(QtCore.Qt.Horizontal)
self.maxMSlider.setObjectName("maxMSlider")
self.gridLayout_4.addWidget(self.maxMSlider, 2, 1, 1, 1)
self.thetaStepsSlider = QtWidgets.QSlider(self.gridLayoutWidget_2)
self.thetaStepsSlider.setMinimum(10)
self.thetaStepsSlider.setMaximum(720)
self.thetaStepsSlider.setProperty("value", 60)
self.thetaStepsSlider.setOrientation(QtCore.Qt.Horizontal)
self.thetaStepsSlider.setObjectName("thetaStepsSlider")
self.gridLayout_4.addWidget(self.thetaStepsSlider, 1, 1, 1, 1)
self.label_7 = QtWidgets.QLabel(self.gridLayoutWidget_2)
self.label_7.setObjectName("label_7")
self.gridLayout_4.addWidget(self.label_7, 3, 0, 1, 1)
self.label_6 = QtWidgets.QLabel(self.gridLayoutWidget_2)
self.label_6.setObjectName("label_6")
self.gridLayout_4.addWidget(self.label_6, 2, 0, 1, 1)
self.maxNSlider = QtWidgets.QSlider(self.gridLayoutWidget_2)
self.maxNSlider.setMinimum(1)
self.maxNSlider.setMaximum(10)
self.maxNSlider.setProperty("value", 5)
self.maxNSlider.setOrientation(QtCore.Qt.Horizontal)
self.maxNSlider.setObjectName("maxNSlider")
self.gridLayout_4.addWidget(self.maxNSlider, 3, 1, 1, 1)
self.rStepsLineEdit = QtWidgets.QLineEdit(self.gridLayoutWidget_2)
self.rStepsLineEdit.setInputMask("")
self.rStepsLineEdit.setMaxLength(5)
self.rStepsLineEdit.setObjectName("rStepsLineEdit")
self.gridLayout_4.addWidget(self.rStepsLineEdit, 0, 2, 1, 1)
self.thetaStepsLineEdit = QtWidgets.QLineEdit(self.gridLayoutWidget_2)
self.thetaStepsLineEdit.setInputMask("")
self.thetaStepsLineEdit.setMaxLength(5)
self.thetaStepsLineEdit.setObjectName("thetaStepsLineEdit")
self.gridLayout_4.addWidget(self.thetaStepsLineEdit, 1, 2, 1, 1)
self.maxMLineEdit = QtWidgets.QLineEdit(self.gridLayoutWidget_2)
self.maxMLineEdit.setInputMask("")
self.maxMLineEdit.setMaxLength(5)
self.maxMLineEdit.setObjectName("maxMLineEdit")
self.gridLayout_4.addWidget(self.maxMLineEdit, 2, 2, 1, 1)
self.maxNLineEdit = QtWidgets.QLineEdit(self.gridLayoutWidget_2)
self.maxNLineEdit.setInputMask("")
self.maxNLineEdit.setMaxLength(5)
self.maxNLineEdit.setObjectName("maxNLineEdit")
self.gridLayout_4.addWidget(self.maxNLineEdit, 3, 2, 1, 1)
self.label_16 = QtWidgets.QLabel(self.gridLayoutWidget_2)
self.label_16.setObjectName("label_16")
self.gridLayout_4.addWidget(self.label_16, 0, 3, 1, 1)
self.label_17 = QtWidgets.QLabel(self.gridLayoutWidget_2)
self.label_17.setObjectName("label_17")
self.gridLayout_4.addWidget(self.label_17, 1, 3, 1, 1)
self.label_18 = QtWidgets.QLabel(self.gridLayoutWidget_2)
self.label_18.setObjectName("label_18")
self.gridLayout_4.addWidget(self.label_18, 2, 3, 1, 1)
self.label_19 = QtWidgets.QLabel(self.gridLayoutWidget_2)
self.label_19.setObjectName("label_19")
self.gridLayout_4.addWidget(self.label_19, 3, 3, 1, 1)
self.gridLayout_4.setColumnStretch(0, 3)
self.gridLayout_4.setColumnStretch(1, 5)
self.gridLayout_4.setColumnStretch(2, 2)
self.gridLayout_4.setRowStretch(0, 1)
self.gridLayout_4.setRowStretch(1, 1)
self.gridLayout_4.setRowStretch(2, 1)
self.gridLayout_4.setRowStretch(3, 1)
self.verticalLayout.addWidget(self.groupBox_3)
self.groupBox = QtWidgets.QGroupBox(self.horizontalLayoutWidget)
self.groupBox.setObjectName("groupBox")
self.verticalLayoutWidget = QtWidgets.QWidget(self.groupBox)
self.verticalLayoutWidget.setGeometry(QtCore.QRect(10, 30, 371, 201))
self.verticalLayoutWidget.setObjectName("verticalLayoutWidget")
self.verticalLayout_3 = QtWidgets.QVBoxLayout(self.verticalLayoutWidget)
self.verticalLayout_3.setSizeConstraint(QtWidgets.QLayout.SetMaximumSize)
self.verticalLayout_3.setContentsMargins(0, 0, 0, 0)
self.verticalLayout_3.setObjectName("verticalLayout_3")
self.runningCheckBox = QtWidgets.QCheckBox(self.verticalLayoutWidget)
self.runningCheckBox.setChecked(True)
self.runningCheckBox.setObjectName("runningCheckBox")
self.verticalLayout_3.addWidget(self.runningCheckBox)
self.gridLayout_2 = QtWidgets.QGridLayout()
self.gridLayout_2.setObjectName("gridLayout_2")
self.speedSlider = QtWidgets.QSlider(self.verticalLayoutWidget)
self.speedSlider.setMinimum(10)
self.speedSlider.setMaximum(499)
self.speedSlider.setSingleStep(10)
self.speedSlider.setPageStep(100)
self.speedSlider.setProperty("value", 100)
self.speedSlider.setOrientation(QtCore.Qt.Horizontal)
self.speedSlider.setObjectName("speedSlider")
self.gridLayout_2.addWidget(self.speedSlider, 1, 1, 1, 1)
self.label_8 = QtWidgets.QLabel(self.verticalLayoutWidget)
self.label_8.setObjectName("label_8")
self.gridLayout_2.addWidget(self.label_8, 0, 0, 1, 1)
self.timeSlider = QtWidgets.QSlider(self.verticalLayoutWidget)
self.timeSlider.setMaximum(999)
self.timeSlider.setOrientation(QtCore.Qt.Horizontal)
self.timeSlider.setObjectName("timeSlider")
self.gridLayout_2.addWidget(self.timeSlider, 0, 1, 1, 1)
self.label_9 = QtWidgets.QLabel(self.verticalLayoutWidget)
self.label_9.setObjectName("label_9")
self.gridLayout_2.addWidget(self.label_9, 1, 0, 1, 1)
self.label_20 = QtWidgets.QLabel(self.verticalLayoutWidget)
self.label_20.setObjectName("label_20")
self.gridLayout_2.addWidget(self.label_20, 0, 3, 1, 1)
self.speedLineEdit = QtWidgets.QLineEdit(self.verticalLayoutWidget)
self.speedLineEdit.setInputMask("")
self.speedLineEdit.setMaxLength(5)
self.speedLineEdit.setObjectName("speedLineEdit")
self.gridLayout_2.addWidget(self.speedLineEdit, 1, 2, 1, 1)
self.timeLineEdit = QtWidgets.QLineEdit(self.verticalLayoutWidget)
self.timeLineEdit.setInputMask("")
self.timeLineEdit.setMaxLength(5)
self.timeLineEdit.setObjectName("timeLineEdit")
self.gridLayout_2.addWidget(self.timeLineEdit, 0, 2, 1, 1)
self.label_21 = QtWidgets.QLabel(self.verticalLayoutWidget)
self.label_21.setObjectName("label_21")
self.gridLayout_2.addWidget(self.label_21, 1, 3, 1, 1)
self.gridLayout_2.setColumnStretch(0, 3)
self.verticalLayout_3.addLayout(self.gridLayout_2)
self.soundGroupBox = QtWidgets.QGroupBox(self.verticalLayoutWidget)
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Preferred, QtWidgets.QSizePolicy.Fixed)
sizePolicy.setHorizontalStretch(0)
sizePolicy.setVerticalStretch(0)
sizePolicy.setHeightForWidth(self.soundGroupBox.sizePolicy().hasHeightForWidth())
self.soundGroupBox.setSizePolicy(sizePolicy)
self.soundGroupBox.setMinimumSize(QtCore.QSize(0, 80))
self.soundGroupBox.setCheckable(True)
self.soundGroupBox.setChecked(True)
self.soundGroupBox.setObjectName("soundGroupBox")
self.verticalLayoutWidget_2 = QtWidgets.QWidget(self.soundGroupBox)
self.verticalLayoutWidget_2.setGeometry(QtCore.QRect(10, 20, 351, 80))
self.verticalLayoutWidget_2.setObjectName("verticalLayoutWidget_2")
self.verticalLayout_5 = QtWidgets.QVBoxLayout(self.verticalLayoutWidget_2)
self.verticalLayout_5.setContentsMargins(0, 0, 0, 0)
self.verticalLayout_5.setObjectName("verticalLayout_5")
self.gridLayout_5 = QtWidgets.QGridLayout()
self.gridLayout_5.setObjectName("gridLayout_5")
self.distanceSlider = QtWidgets.QSlider(self.verticalLayoutWidget_2)
self.distanceSlider.setMinimum(1)
self.distanceSlider.setMaximum(100)
self.distanceSlider.setProperty("value", 10)
self.distanceSlider.setOrientation(QtCore.Qt.Horizontal)
self.distanceSlider.setObjectName("distanceSlider")
self.gridLayout_5.addWidget(self.distanceSlider, 0, 1, 1, 1)
self.label_23 = QtWidgets.QLabel(self.verticalLayoutWidget_2)
self.label_23.setObjectName("label_23")
self.gridLayout_5.addWidget(self.label_23, 0, 0, 1, 1)
self.distanceLineEdit = QtWidgets.QLineEdit(self.verticalLayoutWidget_2)
self.distanceLineEdit.setInputMask("")
self.distanceLineEdit.setMaxLength(5)
self.distanceLineEdit.setObjectName("distanceLineEdit")
self.gridLayout_5.addWidget(self.distanceLineEdit, 0, 2, 1, 1)
self.label_24 = QtWidgets.QLabel(self.verticalLayoutWidget_2)
self.label_24.setObjectName("label_24")
self.gridLayout_5.addWidget(self.label_24, 0, 3, 1, 1)
self.gridLayout_5.setColumnStretch(0, 3)
self.verticalLayout_5.addLayout(self.gridLayout_5)
self.formLayout_2 = QtWidgets.QFormLayout()
self.formLayout_2.setFieldGrowthPolicy(QtWidgets.QFormLayout.AllNonFixedFieldsGrow)
self.formLayout_2.setObjectName("formLayout_2")
self.label_25 = QtWidgets.QLabel(self.verticalLayoutWidget_2)
self.label_25.setObjectName("label_25")
self.formLayout_2.setWidget(0, QtWidgets.QFormLayout.LabelRole, self.label_25)
self.wavfnameLineEdit = QtWidgets.QLineEdit(self.verticalLayoutWidget_2)
self.wavfnameLineEdit.setObjectName("wavfnameLineEdit")
self.formLayout_2.setWidget(0, QtWidgets.QFormLayout.FieldRole, self.wavfnameLineEdit)
self.verticalLayout_5.addLayout(self.formLayout_2)
self.verticalLayout_3.addWidget(self.soundGroupBox)
self.verticalLayout.addWidget(self.groupBox)
self.verticalLayout.setStretch(0, 3)
self.verticalLayout.setStretch(1, 3)
self.verticalLayout.setStretch(2, 4)
self.horizontalLayout.addLayout(self.verticalLayout)
self.verticalLayout_2 = QtWidgets.QVBoxLayout()
self.verticalLayout_2.setObjectName("verticalLayout_2")
self.drumWidget = MplDrumWidget(self.horizontalLayoutWidget)
self.drumWidget.setObjectName("drumWidget")
self.verticalLayout_2.addWidget(self.drumWidget)
self.plotWidget = MplPlotWidget(self.horizontalLayoutWidget)
self.plotWidget.setObjectName("plotWidget")
self.verticalLayout_2.addWidget(self.plotWidget)
self.horizontalLayout.addLayout(self.verticalLayout_2)
self.horizontalLayout.setStretch(0, 1)
self.horizontalLayout.setStretch(1, 1)
self.retranslateUi(Drummer)
QtCore.QMetaObject.connectSlotsByName(Drummer)
def retranslateUi(self, Drummer):
_translate = QtCore.QCoreApplication.translate
Drummer.setWindowTitle(_translate("Drummer", "Drummer"))
self.groupBox_2.setTitle(_translate("Drummer", "Drum Parameters"))
self.label_11.setText(_translate("Drummer", "Mass Density"))
self.label.setText(_translate("Drummer", "Radius"))
self.label_3.setText(_translate("Drummer", "Half-Decay Time"))
self.label_12.setText(_translate("Drummer", "Surface Tension"))
self.label_2.setText(_translate("Drummer", "cm"))
self.label_13.setText(_translate("Drummer", "ms"))
self.label_14.setText(_translate("Drummer", "N/m"))
self.label_15.setText(_translate("Drummer", "milli. kg/m^2"))
self.groupBox_3.setTitle(_translate("Drummer", "Simulation Parameters"))
self.label_4.setText(_translate("Drummer", "r Steps"))
self.label_5.setText(_translate("Drummer", "theta Steps"))
self.label_7.setText(_translate("Drummer", "max cylindrical order (n)"))
self.label_6.setText(_translate("Drummer", "max Bessel order (m)"))
self.label_16.setText(_translate("Drummer", "steps"))
self.label_17.setText(_translate("Drummer", "steps"))
self.label_18.setText(_translate("Drummer", "unit"))
self.label_19.setText(_translate("Drummer", "unit"))
self.groupBox.setTitle(_translate("Drummer", "Playback"))
self.runningCheckBox.setText(_translate("Drummer", "Running"))
self.label_8.setText(_translate("Drummer", "time"))
self.label_9.setText(_translate("Drummer", "speed"))
self.label_20.setText(_translate("Drummer", "ms"))
self.label_21.setText(_translate("Drummer", "%"))
self.soundGroupBox.setTitle(_translate("Drummer", "Enable Sound"))
self.label_23.setText(_translate("Drummer", "observer distance"))
self.label_24.setText(_translate("Drummer", "m"))
self.label_25.setText(_translate("Drummer", "Save WAV:"))
self.wavfnameLineEdit.setPlaceholderText(_translate("Drummer", "output.wav"))
from mpl_plot_widget import MplPlotWidget
from mpl_drum_widget import MplDrumWidget