Server: Add send calibration files menu function

This commit is contained in:
Arthur Golubtsov
2019-10-16 17:10:05 +03:00
parent 01287a766e
commit 5745daaf67
3 changed files with 30 additions and 3 deletions

View File

@@ -222,12 +222,15 @@ class Ui_MainWindow(object):
self.actionSend_any_command.setObjectName("actionSend_any_command")
self.action_stop_music = QtWidgets.QAction(MainWindow)
self.action_stop_music.setObjectName("action_stop_music")
self.action_send_calibrations = QtWidgets.QAction(MainWindow)
self.action_send_calibrations.setObjectName("action_send_calibrations")
self.menuDeveloper_mode.addAction(self.action_send_any_file)
self.menuDeveloper_mode.addAction(self.actionSend_any_command)
self.menuOptions.addAction(self.action_send_animations)
self.menuOptions.addAction(self.action_send_configurations)
self.menuOptions.addAction(self.action_send_Aruco_map)
self.menuOptions.addAction(self.action_send_launch_file)
self.menuOptions.addAction(self.action_send_Aruco_map)
self.menuOptions.addAction(self.action_send_calibrations)
self.menuOptions.addSeparator()
self.menuOptions.addAction(self.menuDeveloper_mode.menuAction())
self.menuOptions.addSeparator()
@@ -302,3 +305,4 @@ class Ui_MainWindow(object):
self.action_send_any_file.setText(_translate("MainWindow", "Send any file"))
self.actionSend_any_command.setText(_translate("MainWindow", "Send any command"))
self.action_stop_music.setText(_translate("MainWindow", "Stop music"))
self.action_send_calibrations.setText(_translate("MainWindow", "Send camera calibrations"))

View File

@@ -344,8 +344,9 @@
</widget>
<addaction name="action_send_animations"/>
<addaction name="action_send_configurations"/>
<addaction name="action_send_Aruco_map"/>
<addaction name="action_send_launch_file"/>
<addaction name="action_send_Aruco_map"/>
<addaction name="action_send_calibrations"/>
<addaction name="separator"/>
<addaction name="menuDeveloper_mode"/>
<addaction name="separator"/>
@@ -491,6 +492,11 @@
<string>Stop music</string>
</property>
</action>
<action name="action_send_calibrations">
<property name="text">
<string>Send camera calibrations</string>
</property>
</action>
</widget>
<tabstops>
<tabstop>start_delay_spin</tabstop>

View File

@@ -131,6 +131,7 @@ class MainWindow(QtWidgets.QMainWindow):
self.ui.calibrate_level.clicked.connect(self.calibrate_level_selected)
self.ui.action_send_animations.triggered.connect(self.send_animations)
self.ui.action_send_calibrations.triggered.connect(self.send_calibrations)
self.ui.action_send_configurations.triggered.connect(self.send_configurations)
self.ui.action_send_Aruco_map.triggered.connect(self.send_aruco)
self.ui.action_send_launch_file.triggered.connect(self.send_launch)
@@ -308,7 +309,7 @@ class MainWindow(QtWidgets.QMainWindow):
print("Selected directory:", path)
files = [file for file in glob.glob(path + '/*.csv')]
names = [os.path.basename(file).split(".")[0] for file in files]
print(files)
# print(files)
for file, name in zip(files, names):
for copter in self.model.user_selected():
if name == copter.copter_id:
@@ -316,6 +317,22 @@ class MainWindow(QtWidgets.QMainWindow):
else:
print("Filename has no matches with any drone selected")
@pyqtSlot()
def send_calibrations(self):
path = str(QFileDialog.getExistingDirectory(self, "Select directory with calibration files"))
if path:
print("Selected directory:", path)
files = [file for file in glob.glob(path + '/*.yaml')]
names = [os.path.basename(file).split(".")[0] for file in files]
# print(files)
for file, name in zip(files, names):
for copter in self.model.user_selected():
if name == copter.copter_id:
copter.client.send_file(file, "/home/pi/catkin_ws/src/clever/clever/camera_info/calibration.yaml")
else:
print("Filename has no matches with any drone selected")
@pyqtSlot()
def send_configurations(self):
path = QFileDialog.getOpenFileName(self, "Select configuration file", filter="Configs (*.ini *.txt .cfg)")[0]