增加主页设置三维建模通信设置及状态监测

pull/9/head
caoyuhui 7 months ago
parent f67967ff71
commit 1aa55856c5

@ -13,7 +13,7 @@ GDDCSet::GDDCSet(QWidget *parent) : QWidget(parent), ui(new Ui::GDDCSet) {
GDDCSet::~GDDCSet() { delete ui; }
void GDDCSet::initWindow() {
this->setWindowTitle("通信设置");
setWindowTitle("通信设置");
setAttribute(Qt::WA_QuitOnClose, false);
// 交付时隐藏部分未开发接口

@ -74,6 +74,7 @@ void GDDCdlg::initWindow() {
hide();
m_DlgGDDCSet = new GDDCSet();
m_DlgGDDCSet->setWindowFlags(Qt::Window); // 设置为独立窗口
m_GDDCCmdDlg = new GDDCCmdDlg(this);
m_GDDCStateDlg = new GDDCStateInfo(this);
ui->pushButShowStatePage->setIcon(QIcon(":/res/right.png"));
@ -527,7 +528,7 @@ void GDDCdlg::stopPushURL() {
// 设置页面弹出
void GDDCdlg::pushButtonSet_clicked() {
m_DlgGDDCSet->show();
m_DlgGDDCSet->activateWindow();
m_DlgGDDCSet->activateWindow(); // 置为顶层
}
// udp数据接收

@ -1,52 +1,69 @@
#ifndef STRUCTDEFINEMYSLEF_H
#define STRUCTDEFINEMYSLEF_H
#include <QString>
#include <QHostAddress>
#include <QString>
struct MyPairNetwork
{
struct MyPairNetwork {
public:
MyPairNetwork(){};
MyPairNetwork(QString a,int b,QString c,int d){
localIP = a;
localPort = b;
remoteIP = c;
remotePort = d;
localAddr.setAddress(localIP);
remoteAddr.setAddress(remoteIP);
}
MyPairNetwork() {};
MyPairNetwork(QString a, int b, QString c, int d) {
localIP = a;
localPort = b;
remoteIP = c;
remotePort = d;
localAddr.setAddress(localIP);
remoteAddr.setAddress(remoteIP);
}
private:
QString localIP;
quint16 localPort;
QHostAddress localAddr;
QString remoteIP;
quint16 remotePort;
QHostAddress remoteAddr;
QString localIP;
quint16 localPort;
QHostAddress localAddr;
QString remoteIP;
quint16 remotePort;
QHostAddress remoteAddr;
public:
void setLocalIP(QString ip){
localIP = ip;
localAddr.setAddress(localIP);
}
void setLocalPort(quint16 port){
localPort = port;
}
void setRemoteIP(QString ip){
remoteIP = ip;
remoteAddr.setAddress(remoteIP);
}
void setRemotePort(quint16 port){
remotePort = port;
}
QString getLocalIP(){return localIP;}
quint16 getLocalPort(){return localPort;}
QHostAddress getLocalAddr(){return localAddr;}
QString getRemoteIP(){return remoteIP;}
quint16 getRemotePort(){return remotePort;}
QHostAddress getRemoteAddr(){return remoteAddr;}
void setLocalIP(QString ip) {
localIP = ip;
localAddr.setAddress(localIP);
}
void setLocalPort(quint16 port) { localPort = port; }
void setRemoteIP(QString ip) {
remoteIP = ip;
remoteAddr.setAddress(remoteIP);
}
void setRemotePort(quint16 port) { remotePort = port; }
QString getLocalIP() { return localIP; }
quint16 getLocalPort() { return localPort; }
QHostAddress getLocalAddr() { return localAddr; }
QString getRemoteIP() { return remoteIP; }
quint16 getRemotePort() { return remotePort; }
QHostAddress getRemoteAddr() { return remoteAddr; }
};
// 串口
struct serialStruct {
QString serialId;
int baudrate;
};
// 网口
struct netStruct {
QString localIp;
QString remoteIp;
int localPort;
int remotePort;
};
// 设置结构体
struct settingStruct {
public:
settingStruct() {};
// settingStruct(QString str1, QString str2, int d) { url = str1; }
public:
QString url; // 网址
serialStruct serial; // 串口
netStruct net; // 网口
};
#endif // STRUCTDEFINEMYSLEF_H

@ -124,35 +124,51 @@ void deviceStateDlg::receiveResult(int id, QString result) {
QIcon(":/res/lamp/red.png"));
}
break;
case 4:
if (result == "在线") {
ui->pushButton_state_3DCamra->setIcon(QIcon(":/res/lamp/green.png"));
} else {
ui->pushButton_state_3DCamra->setIcon(QIcon(":/res/lamp/red.png"));
}
break;
default:
break;
}
}
// 接收更改的IP
void deviceStateDlg::setDeviceIP(int id, QString ip) {
void deviceStateDlg::setDeviceIP(int id, settingStruct param) {
QString strIp;
strIp = stringIPSelect(ip);
switch (id) {
case HomePageSetingWidget::GDDC:
strIp = stringIPSelect(param.net.remoteIp);
cmdlist[0].clear();
cmdlist[0] << "/c" << "ping" << strIp;
m_networkDetection[0]->DyChangeCmdList(cmdlist[0]); // 更新到网络检测线程
break;
case HomePageSetingWidget::L_Link:
strIp = stringIPSelect(param.url);
cmdlist[1].clear();
cmdlist[1] << "/c" << "ping" << strIp;
m_networkDetection[1]->DyChangeCmdList(cmdlist[1]); // 更新到网络检测线程
break;
case HomePageSetingWidget::Adhoc_Network:
strIp = stringIPSelect(param.url);
cmdlist[2].clear();
cmdlist[2] << "/c" << "ping" << strIp;
m_networkDetection[2]->DyChangeCmdList(cmdlist[2]); // 更新到网络检测线程
break;
case HomePageSetingWidget::Satelite_Comm:
strIp = stringIPSelect(param.url);
cmdlist[3].clear();
cmdlist[3] << "/c" << "ping" << strIp;
m_networkDetection[3]->DyChangeCmdList(cmdlist[3]); // 更新到网络检测线程
break;
case HomePageSetingWidget::ModelCamera:
strIp = stringIPSelect(param.net.remoteIp);
cmdlist[4].clear();
cmdlist[4] << "/c" << "ping" << strIp;
m_networkDetection[4]->DyChangeCmdList(cmdlist[4]); // 更新到网络检测线程
break;
default:
break;
}
@ -168,7 +184,7 @@ QString deviceStateDlg::stringIPSelect(QString str) {
QString str2 = str.remove(0, start); // 192.168.1.2/224//115
end = str2.indexOf("/");
if (end != -1) {
end += 1;
// end += 1;
str2.truncate(end);
return str2;
} else {
@ -177,7 +193,7 @@ QString deviceStateDlg::stringIPSelect(QString str) {
} else {
end = str.indexOf("/");
if (end != -1) {
end += 1;
// end += 1;
str.truncate(end);
return str;
} else {
@ -187,12 +203,14 @@ QString deviceStateDlg::stringIPSelect(QString str) {
// index = str.indexOf("http://")
}
// 获得url地址
void deviceStateDlg::setUrl(std::unordered_map<QString, QString> &urlMap) {
void deviceStateDlg::setUrl(
std::unordered_map<QString, settingStruct> &urlMap) {
m_urlMap = urlMap;
setDeviceIP(HomePageSetingWidget::GDDC, m_urlMap["光电吊舱"]);
setDeviceIP(HomePageSetingWidget::L_Link, m_urlMap["L链"]);
setDeviceIP(HomePageSetingWidget::Adhoc_Network, m_urlMap["宽带自组网"]);
setDeviceIP(HomePageSetingWidget::Satelite_Comm, m_urlMap["机载卫通"]);
setDeviceIP(HomePageSetingWidget::ModelCamera, m_urlMap["三维建模"]);
}
// 开始网络监测
void deviceStateDlg::startNetDetn() {

@ -49,14 +49,20 @@ private:
Ui::deviceStateDlg *ui;
public:
QStringList cmdlist[deviceNum]; // 0光电吊舱1L链 2 自组网3ku卫通 4
// 0光电吊舱
// 1L链
// 2 自组网
// 3ku卫通
// 4三维相机
QStringList cmdlist[deviceNum];
networkDetection *m_networkDetection[deviceNum];
QThread *m_workerThread[deviceNum];
QTimer *m_timer;
void setDeviceIP(int, QString);
void setDeviceIP(int, settingStruct);
QString stringIPSelect(QString);
std::unordered_map<QString, QString> m_urlMap; // 存储url地址
void setUrl(std::unordered_map<QString, QString> &urlMap); // 获得url地址
std::unordered_map<QString, settingStruct> m_urlMap;
void setUrl(std::unordered_map<QString, settingStruct> &urlMap);
void startNetDetn();
void stopNetDetn();
public slots:

@ -20,8 +20,9 @@ HomePageDlg::HomePageDlg(QWidget *parent)
m_deviceStateDlg = new deviceStateDlg(this); // 状态嵌入窗口
m_deviceStateDlg->show();
std::unordered_map<QString, QString> urlmap = settingWidget->getUrl();
m_deviceStateDlg->setUrl(urlmap);
std::unordered_map<QString, settingStruct> allParam =
settingWidget->getAllParam();
m_deviceStateDlg->setUrl(allParam);
initButton();
}
@ -51,8 +52,8 @@ void HomePageDlg::initButton() {
});
// 设置页面设置ip后更新网络检测页面ip
connect(settingWidget, &HomePageSetingWidget::sendOnlyUrl, this,
[&](unsigned char urlIndex, QString url) {
connect(settingWidget, &HomePageSetingWidget::sendOneSet, this,
[&](unsigned char urlIndex, settingStruct url) {
m_deviceStateDlg->setDeviceIP(urlIndex, url);
});
}

@ -5,7 +5,6 @@
#include "Src/HomePage/homepagesetingwidget.h"
#include "deviceStateDlg.h"
#include <QWidget>
#include <unordered_map>
namespace Ui {
class HomePageDlg;

@ -2,8 +2,7 @@
#include "ui_homepagesetingwidget.h"
HomePageSetingWidget::HomePageSetingWidget(QWidget *parent)
: QWidget(parent), ui(new Ui::HomePageSetingWidget), _GDDCIp(""),
_lLinkIp(""), _adHocNetwork(""), _satelliteComm("") {
: QWidget(parent), ui(new Ui::HomePageSetingWidget) {
ui->setupUi(this);
init();
}
@ -15,55 +14,83 @@ void HomePageSetingWidget::init() {
_configIni = std::make_unique<QSettings>(urlFile, QSettings::IniFormat);
// 读取配置信息
_GDDCIp = _configIni->value("光电吊舱/IP").toString();
_lLinkIp = _configIni->value("L链/IP").toString();
_adHocNetwork = _configIni->value("宽带自组网/IP").toString();
_satelliteComm = _configIni->value("机载卫通/IP").toString();
_GDDC.net.remoteIp = _configIni->value("光电吊舱/IP").toString();
_GDDC.net.remotePort = _configIni->value("光电吊舱/Port").toInt();
_lLink.url = _configIni->value("L链/IP").toString();
_adHocNetwork.url = _configIni->value("宽带自组网/IP").toString();
_satelliteComm.url = _configIni->value("机载卫通/IP").toString();
_ModelCamera.net.remoteIp = _configIni->value("三维建模/remoteIp").toString();
_ModelCamera.net.remotePort =
_configIni->value("三维建模/remotePort").toInt();
_ModelCamera.net.localIp = _configIni->value("三维建模/localIp").toString();
_ModelCamera.net.localPort = _configIni->value("三维建模/localPort").toInt();
// 存储配置信息到MAP容器中
_urlMap.insert({"光电吊舱", _GDDCIp});
_urlMap.insert({"L链", _lLinkIp});
_urlMap.insert({"宽带自组网", _adHocNetwork});
_urlMap.insert({"机载卫通", _satelliteComm});
_allParamMap.insert({"光电吊舱", _GDDC});
_allParamMap.insert({"L链", _lLink});
_allParamMap.insert({"宽带自组网", _adHocNetwork});
_allParamMap.insert({"机载卫通", _satelliteComm});
_allParamMap.insert({"三维建模", _ModelCamera});
// 显示到配置页面
ui->GDDCLineEdit->setText(_GDDCIp);
ui->lLinkLineEdit->setText(_lLinkIp);
ui->netLineEdit->setText(_adHocNetwork);
ui->sateliteLineEdit->setText(_satelliteComm);
ui->GDDCLineEdit->setText(_GDDC.net.remoteIp);
ui->lLinkLineEdit->setText(_lLink.url);
ui->netLineEdit->setText(_adHocNetwork.url);
ui->sateliteLineEdit->setText(_satelliteComm.url);
ui->modelCameraLineEditRemoteIp->setText(_ModelCamera.net.remoteIp);
ui->modelCameraLineEditRemotePort->setText(
QString::number(_ModelCamera.net.remotePort));
ui->modelCameraLineEditLocalIp->setText(_ModelCamera.net.localIp);
ui->modelCameraLineEditLocalPort->setText(
QString::number(_ModelCamera.net.localPort));
// 发送消息到其他页面
emit sendOnlyUrl(GDDC, _GDDCIp);
emit sendOnlyUrl(L_Link, _lLinkIp);
emit sendOnlyUrl(Adhoc_Network, _adHocNetwork);
emit sendOnlyUrl(Satelite_Comm, _satelliteComm);
emit sendOneSet(GDDC, _GDDC);
emit sendOneSet(L_Link, _lLink);
emit sendOneSet(Adhoc_Network, _adHocNetwork);
emit sendOneSet(Satelite_Comm, _satelliteComm);
emit sendOneSet(ModelCamera, _ModelCamera);
}
void HomePageSetingWidget::on_GDDCPushButton_clicked() {
// 写参数到配置文件
_GDDCIp = ui->GDDCLineEdit->text();
_configIni->setValue("光电吊舱/IP", _GDDCIp);
emit sendOnlyUrl(GDDC, _GDDCIp);
_GDDC.net.remoteIp = ui->GDDCLineEdit->text();
_configIni->setValue("光电吊舱/IP", _GDDC.net.remoteIp);
emit sendOneSet(GDDC, _GDDC);
}
void HomePageSetingWidget::on_lLinkButton_clicked() {
// 写参数到配置文件
_lLinkIp = ui->lLinkLineEdit->text();
_configIni->setValue("L链/IP", _lLinkIp);
emit sendOnlyUrl(L_Link, _lLinkIp);
_lLink.url = ui->lLinkLineEdit->text();
_configIni->setValue("L链/IP", _lLink.url);
emit sendOneSet(L_Link, _lLink);
}
void HomePageSetingWidget::on_netButton_clicked() {
// 写参数到配置文件
_adHocNetwork = ui->netLineEdit->text();
_configIni->setValue("宽带自组网/IP", _adHocNetwork);
emit sendOnlyUrl(Adhoc_Network, _adHocNetwork);
_adHocNetwork.url = ui->netLineEdit->text();
_configIni->setValue("宽带自组网/IP", _adHocNetwork.url);
emit sendOneSet(Adhoc_Network, _adHocNetwork);
}
void HomePageSetingWidget::on_sateliteButton_clicked() {
// 写参数到配置文件
_satelliteComm = ui->sateliteLineEdit->text();
_configIni->setValue("机载卫通/IP", _satelliteComm);
emit sendOnlyUrl(Satelite_Comm, _satelliteComm);
_satelliteComm.url = ui->sateliteLineEdit->text();
_configIni->setValue("机载卫通/IP", _satelliteComm.url);
emit sendOneSet(Satelite_Comm, _satelliteComm);
}
// 三维相机
void HomePageSetingWidget::on_modelCameraButton_clicked() {
// 写参数到配置文件
_ModelCamera.net.remoteIp = ui->modelCameraLineEditRemoteIp->text();
_ModelCamera.net.remotePort =
ui->modelCameraLineEditRemotePort->text().toInt();
_ModelCamera.net.localIp = ui->modelCameraLineEditLocalIp->text();
_ModelCamera.net.localPort = ui->modelCameraLineEditLocalPort->text().toInt();
_configIni->setValue("三维建模/remoteIp", _ModelCamera.net.remoteIp);
_configIni->setValue("三维建模/remotePort", _ModelCamera.net.remotePort);
_configIni->setValue("三维建模/localIp", _ModelCamera.net.localIp);
_configIni->setValue("三维建模/localPort", _ModelCamera.net.localPort);
emit sendOneSet(ModelCamera, _ModelCamera);
}
// 一键配置
void HomePageSetingWidget::on_oneKeyButton_clicked() {
@ -73,10 +100,10 @@ void HomePageSetingWidget::on_oneKeyButton_clicked() {
on_sateliteButton_clicked();
}
/*************************************************
* @func getUrl
* @func getAllParam
* @brief url
* @param
**************************************************/
std::unordered_map<QString, QString> HomePageSetingWidget::getUrl() {
return _urlMap;
std::unordered_map<QString, settingStruct> HomePageSetingWidget::getAllParam() {
return _allParamMap;
}

@ -1,6 +1,7 @@
#ifndef HOMEPAGESETINGWIDGET_H
#define HOMEPAGESETINGWIDGET_H
#include "Src/GDDC/structDefineMyslef.h"
#include <QSettings>
#include <QWidget>
@ -17,28 +18,30 @@ public:
private:
Ui::HomePageSetingWidget *ui;
QString _GDDCIp; // 光电吊舱
QString _lLinkIp; // L链
QString _adHocNetwork; // 自组网
QString _satelliteComm; // PDT
std::unique_ptr<QSettings> _configIni; // 配置文件写入
QString urlFile; // 配置文件路径
std::unordered_map<QString, QString> _urlMap; // map容器存储url
std::unique_ptr<QSettings> _configIni; // 配置文件写入
QString urlFile; // 配置文件路径
settingStruct _GDDC; // 光电吊舱
settingStruct _lLink; // L链
settingStruct _adHocNetwork; // 自组网
settingStruct _satelliteComm; // PDT
settingStruct _ModelCamera; // 三维建模
std::unordered_map<QString, settingStruct> _allParamMap; // 存储所有设置信息
public:
void init();
/*************************************************
* @func getUrl
* @func getAllParam
* @brief url
* @param
**************************************************/
std::unordered_map<QString, QString> getUrl();
std::unordered_map<QString, settingStruct> getAllParam();
public:
enum urlEnum : unsigned char {
GDDC = 1,
L_Link,
Adhoc_Network,
Satelite_Comm
Satelite_Comm,
ModelCamera
};
private slots:
@ -48,9 +51,11 @@ private slots:
void on_oneKeyButton_clicked();
void on_GDDCPushButton_clicked();
void on_modelCameraButton_clicked();
signals:
void sendOnlyUrl(unsigned char urlIndex, QString url); // 发送信号给网页显示
void sendAllUrl(std::unordered_map<QString, QString> urlMap);
// 发送信号给网页显示
void sendOneSet(unsigned char, settingStruct);
};
#endif // HOMEPAGESETINGWIDGET_H

@ -7,7 +7,7 @@
<x>0</x>
<y>0</y>
<width>725</width>
<height>404</height>
<height>532</height>
</rect>
</property>
<property name="windowTitle">
@ -280,6 +280,100 @@
</layout>
</widget>
</item>
<item>
<widget class="QGroupBox" name="modelCameraGroupBox">
<property name="title">
<string>三维建模</string>
</property>
<layout class="QGridLayout" name="gridLayout_4">
<item row="0" column="0">
<widget class="QLabel" name="label_5">
<property name="text">
<string>远端IP:</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QLineEdit" name="modelCameraLineEditRemoteIp"/>
</item>
<item row="0" column="2">
<widget class="QLabel" name="label_6">
<property name="text">
<string>远端端口:</string>
</property>
</widget>
</item>
<item row="0" column="3">
<widget class="QLineEdit" name="modelCameraLineEditRemotePort"/>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_7">
<property name="text">
<string>本地IP:</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QLineEdit" name="modelCameraLineEditLocalIp"/>
</item>
<item row="1" column="2">
<widget class="QLabel" name="label_8">
<property name="text">
<string>本地端口:</string>
</property>
</widget>
</item>
<item row="1" column="3">
<widget class="QLineEdit" name="modelCameraLineEditLocalPort"/>
</item>
<item row="1" column="4">
<layout class="QHBoxLayout" name="horizontalLayout_8">
<item>
<spacer name="horizontalSpacer_7">
<property name="orientation">
<enum>Qt::Orientation::Horizontal</enum>
</property>
<property name="sizeType">
<enum>QSizePolicy::Policy::Fixed</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QPushButton" name="modelCameraButton">
<property name="sizePolicy">
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
<horstretch>100</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>100</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>200</width>
<height>16777215</height>
</size>
</property>
<property name="text">
<string>设置</string>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</widget>
</item>
</layout>
</widget>
</item>

@ -29,7 +29,8 @@ void EncodeModelCamera::SendCMD(QByteArray cmdDataArray) {
stream << crc16;
cmdArray.append(byteArray);
cameraUDP->writeDatagram(cmdArray, QHostAddress("127.0.0.1"), 8181);
cameraUDP->writeDatagram(cmdArray, QHostAddress(m_net.remoteIp),
m_net.remotePort);
}
// upd socket收到数据
@ -51,5 +52,13 @@ void EncodeModelCamera::ReadData() {
if (crc16 == Rcrc) {
emit UDP_Receive(array);
}
cameraUDP->writeDatagram(cmdArray, QHostAddress("172.10.1.237"), 10001);
cameraUDP->writeDatagram(cmdArray, QHostAddress(m_net.remoteIp),
m_net.remotePort);
}
void EncodeModelCamera::setIPandPort(netStruct net) {
m_net = net;
// 断开 重连
// cameraUDP->abort();
cameraUDP->bind(QHostAddress(m_net.localIp), m_net.localPort);
}

@ -1,18 +1,20 @@
#ifndef ENCODEMODELCAMERA_H
#define ENCODEMODELCAMERA_H
#include "Src/GDDC/structDefineMyslef.h"
#include <QByteArray>
#include <QDataStream>
#include <QObject>
#include <QUdpSocket>
class EncodeModelCamera : public QObject {
Q_OBJECT
public:
explicit EncodeModelCamera(QObject *parent = nullptr);
// ~EncodeModelCamera();
void setIPandPort(netStruct); // 设置ip和端口
private:
netStruct m_net;
QByteArray cmdArray;
QUdpSocket *cameraUDP;
public slots:

@ -27,6 +27,12 @@ ModelCameraDlg::~ModelCameraDlg() {
}
}
void ModelCameraDlg::setNetParam(netStruct net) {
if (encodeModelCamera != nullptr) {
encodeModelCamera->setIPandPort(net);
}
}
void ModelCameraDlg::InitialComboBox() {
ui->photoTimeDbSpinBox->setSuffix("s");

@ -1,65 +1,68 @@
#ifndef MODELCAMERADLG_H
#define MODELCAMERADLG_H
#include <QDialog>
#include "Src/GDDC/structDefineMyslef.h"
#include "encodemodelcamera.h"
#include <QByteArray>
#include <QDialog>
#include <QThread>
#include "encodemodelcamera.h"
#include <qendian.h>
namespace Ui {
class ModelCameraDlg;
}
class ModelCameraDlg : public QDialog
{
Q_OBJECT
class ModelCameraDlg : public QDialog {
Q_OBJECT
public:
explicit ModelCameraDlg(QWidget *parent = nullptr);
~ModelCameraDlg();
explicit ModelCameraDlg(QWidget *parent = nullptr);
~ModelCameraDlg();
void setNetParam(netStruct);
signals:
void on_sendCmdData_signal(QByteArray cmdDataArray);
void on_sendCmdData_signal(QByteArray cmdDataArray);
private slots:
void on_startPhotoBtn_clicked();
void on_startPhotoBtn_clicked();
void on_stopPhotoBtn_clicked();
void on_stopPhotoBtn_clicked();
void on_ONBtn_clicked();
void on_ONBtn_clicked();
void on_OFFBtn_clicked();
void on_OFFBtn_clicked();
void on_pushButton_5_clicked();
void on_pushButton_5_clicked();
void on_SSComboBox_activated(int index);
void on_SSComboBox_activated(int index);
void on_ISOComboBox_activated(int index);
void on_ISOComboBox_activated(int index);
void on_AWBComboBox_activated(int index);
void on_AWBComboBox_activated(int index);
void on_cameraModelComboBox_activated(int index);
void on_cameraModelComboBox_activated(int index);
void on_ColorModelComboBox_activated(int index);
void on_ColorModelComboBox_activated(int index);
void on_receiveUDP(QByteArray cmdDataArray);
void on_receiveUDP(QByteArray cmdDataArray);
private:
void InitialComboBox();
// 状态查询指令
// 查询开关机
void quireOnorOff();
void quirePictranStatus();
void quireShutterSpeed();
void quireISO();
void quireAWB();
void quireCameraMode();
void quireColorMode();
void quireTempe();
void quirePicNumAll();
void InitialComboBox();
// 状态查询指令
// 查询开关机
void quireOnorOff();
void quirePictranStatus();
void quireShutterSpeed();
void quireISO();
void quireAWB();
void quireCameraMode();
void quireColorMode();
void quireTempe();
void quirePicNumAll();
private:
Ui::ModelCameraDlg *ui;
QThread* cameraCMDThread;
QByteArray cmdDataArray;
EncodeModelCamera* encodeModelCamera;
Ui::ModelCameraDlg *ui;
QThread *cameraCMDThread;
QByteArray cmdDataArray;
EncodeModelCamera *encodeModelCamera;
};
#endif // MODELCAMERADLG_H

@ -77,17 +77,24 @@ void MainWindow::initWindow() {
m_SDFPDlg = new SDFPDlg(this);
m_GDDCdlg = new GDDCdlg(this);
m_HomePagedlg = new HomePageDlg(this);
m_ModelCameraDlg = new ModelCameraDlg(this);
m_rescueLoadWidget = new RescueLoadWidget(this);
// 使用类中的get方法获取配置文件中的IP
m_urlMap = m_HomePagedlg->settingWidget->getUrl();
m_allSetMap = m_HomePagedlg->settingWidget->getAllParam();
qDebug() << "=============设备配置================";
qDebug() << "光电吊舱" << m_urlMap["光电吊舱"];
qDebug() << "L链" << m_urlMap["L链"];
qDebug() << "宽带自组网" << m_urlMap["宽带自组网"];
qDebug() << "机载卫通" << m_urlMap["机载卫通"];
qDebug() << "光电吊舱------";
qDebug() << "远端ip" << m_allSetMap["光电吊舱"].net.remoteIp;
qDebug() << "L链----------";
qDebug() << "ULR:" << m_allSetMap["L链"].url;
qDebug() << "宽带自组网-----";
qDebug() << "URL:" << m_allSetMap["宽带自组网"].url;
qDebug() << "机载卫通------";
qDebug() << "URL:" << m_allSetMap["机载卫通"].url;
qDebug() << "三维建模------";
qDebug() << "远端ip:" << m_allSetMap["三维建模"].net.remoteIp;
qDebug() << "远端端口:" << m_allSetMap["三维建模"].net.remotePort;
qDebug() << "本地ip:" << m_allSetMap["三维建模"].net.localIp;
qDebug() << "本地端口:" << m_allSetMap["三维建模"].net.localPort;
mWeb = new CWebEngineView();
mWeb->setPage(new CustomWebEnginePage());
@ -95,31 +102,37 @@ void MainWindow::initWindow() {
lLinkWeb = new CWebEngineView();
lLinkWeb->setPage(new CustomWebEnginePage());
lLinkWeb->load(QUrl(m_urlMap["L链"]));
lLinkWeb->load(QUrl(m_allSetMap["L链"].url));
adHocNetworkWeb = new CWebEngineView();
adHocNetworkWeb->setPage(new CustomWebEnginePage());
adHocNetworkWeb->load(QUrl(m_urlMap["宽带自组网"]));
adHocNetworkWeb->load(QUrl(m_allSetMap["宽带自组网"].url));
satelliteCommWeb = new CWebEngineView();
satelliteCommWeb->setPage(new CustomWebEnginePage());
satelliteCommWeb->load(QUrl(m_urlMap["机载卫通"]));
satelliteCommWeb->load(QUrl(m_allSetMap["机载卫通"].url));
m_ModelCameraDlg = new ModelCameraDlg(this);
m_ModelCameraDlg->setNetParam(m_allSetMap["三维建模"].net);
// 接收主页面设置窗口的url数据传递并设置
connect(m_HomePagedlg->settingWidget, &HomePageSetingWidget::sendOnlyUrl,
this, [&](unsigned char urlIndex, QString url) {
connect(m_HomePagedlg->settingWidget, &HomePageSetingWidget::sendOneSet, this,
[&](unsigned char urlIndex, settingStruct settings) {
switch (urlIndex) {
case HomePageSetingWidget::GDDC:
// dosomething
break;
case HomePageSetingWidget::L_Link:
lLinkWeb->load(QUrl(url));
lLinkWeb->load(QUrl(settings.url));
break;
case HomePageSetingWidget::Adhoc_Network:
adHocNetworkWeb->load(QUrl(url));
adHocNetworkWeb->load(QUrl(settings.url));
break;
case HomePageSetingWidget::Satelite_Comm:
satelliteCommWeb->load(QUrl(url));
satelliteCommWeb->load(QUrl(settings.url));
break;
case HomePageSetingWidget::ModelCamera:
m_ModelCameraDlg->setNetParam(settings.net);
break;
default:
break;
@ -332,6 +345,7 @@ void MainWindow::toolButton_clicked() {
ui->stackedWidget->setCurrentWidget(m_HomePagedlg);
process->kill();
}
// 光电吊舱
void MainWindow::toolButton_2_clicked() {
changeBtnColor(2);

@ -1,74 +1,74 @@
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include "SDFPDlg.h"
#include "Src/GDDC/gddcdlg.h"
#include "Src/ModelCamera/modelcameradlg.h"
#include "Src/HomePage/homepagedlg.h"
#include "Src/ModelCamera/modelcameradlg.h"
#include "Src/RescueLoad/rescueloadwidget.h"
#include "SDFPDlg.h"
#include <QPushButton>
#include <QLabel>
#include <QAction>
#include <QGridLayout>
#include <QLabel>
#include <QLineEdit>
#include <QTextEdit>
#include <QMainWindow>
#include <QMenu>
#include <QMenuBar>
#include <QGridLayout>
#include <QWebEngineView>
#include <QProcess>
#include <QPushButton>
#include <QTextEdit>
#include <QWebEngineView>
QT_BEGIN_NAMESPACE
namespace Ui {
class MainWindow;
}
QT_END_NAMESPACE
class MainWindow : public QMainWindow
{
Q_OBJECT
class MainWindow : public QMainWindow {
Q_OBJECT
public:
MainWindow(QWidget *parent = nullptr);
~MainWindow();
MainWindow(QWidget *parent = nullptr);
~MainWindow();
private:
Ui::MainWindow *ui;
Ui::MainWindow *ui;
void initFile();
void initFile();
public:
void initWindow();
void initButton();
void initMenuBar();
void initToolBar();
void initSignalSlot();
void initWindow();
void initButton();
void initMenuBar();
void initToolBar();
void initSignalSlot();
private slots:
void toolButton_clicked();
void toolButton_2_clicked();
void toolButton_3_clicked();
void toolButton_4_clicked();
void toolButton_5_clicked();
void toolButton_6_clicked();
void toolButton_7_clicked();
void toolButton_8_clicked();
void toolButton_9_clicked();
void toolButton_clicked();
void toolButton_2_clicked();
void toolButton_3_clicked();
void toolButton_4_clicked();
void toolButton_5_clicked();
void toolButton_6_clicked();
void toolButton_7_clicked();
void toolButton_8_clicked();
void toolButton_9_clicked();
public:
GDDCdlg *m_GDDCdlg;
HomePageDlg *m_HomePagedlg;
RescueLoadWidget *m_rescueLoadWidget;
SDFPDlg *m_SDFPDlg;
//QWeb *m_qWeb;
QWebEngineView *mWeb;
ModelCameraDlg* m_ModelCameraDlg;
QWebEngineView *lLinkWeb;//L链
QWebEngineView *adHocNetworkWeb;//自组网
QWebEngineView *satelliteCommWeb;//卫通
GDDCdlg *m_GDDCdlg;
HomePageDlg *m_HomePagedlg;
RescueLoadWidget *m_rescueLoadWidget;
SDFPDlg *m_SDFPDlg;
// QWeb *m_qWeb;
QWebEngineView *mWeb;
ModelCameraDlg *m_ModelCameraDlg;
QWebEngineView *lLinkWeb; // L链
QWebEngineView *adHocNetworkWeb; // 自组网
QWebEngineView *satelliteCommWeb; // 卫通
private:
QProcess *process;
QString exeDirPathName = "";
std::unordered_map<QString,QString> m_urlMap;
QProcess *process;
QString exeDirPathName = "";
std::unordered_map<QString, settingStruct> m_allSetMap;
public:
void changeBtnColor(int num);
void changeBtnColor(int num);
};
#endif // MAINWINDOW_H

Loading…
Cancel
Save