增加大场景仿真连接代码

LAMPCAE-dev
chenzenghui 2025-04-25 17:52:04 +08:00
parent 15a745b8b5
commit 9503bfe376
17 changed files with 317 additions and 29 deletions

View File

@ -95,8 +95,10 @@ set(VCPKG_LIB_DIR ${VCPKG_ROOT}/lib)
message("${VCPKG_ROOT}")
#-----------------------------------------------------------------------------
#
#-----------------------------------------------------------------------------
add_compile_definitions(QT_DISABLE_DEPRECATED_BEFORE=0x000000)

View File

@ -6,7 +6,7 @@ set(SOVERSION ${PROJECT_VERSION} ${PROJECT_VERSION_MAJOR} ${PROJECT_VERSION_MINO
#-----------------------------------------------------------------------------
list(APPEND _libraries BaseCppLibrary Common PythonModule SARibbonBar Settings DataProperty MeshData SelfDefObject Material Geometry BCBase ConfigOptions ParaClassFactory ModelData ModuleBase PostAlgorithm PostRenderData PostInterface PostCurveDataManager PostPlotWidget PostWidgets GeometryDataExchange ProjectTree ProjectTreeExtend GeometryCommand GeometryWidgets PluginManager GmshModule IO SolverControl MainWidgets UserGuidence)
list(APPEND _libraries PointCloudOperator)
list(APPEND _libraries json qcustomplot qhexedit qscintilla2 )
list(APPEND _libraries json qcustomplot qhexedit qscintilla2 qtpropertybrowser)
#[[if(_WIN_)
list(APPEND _libraries XGenerateReport License)
@ -65,7 +65,7 @@ endforeach()
#-----------------------------------------------------------------------------
#
#-----------------------------------------------------------------------------
list(APPEND _TestPlugins PointMeshAlgorithm)
list(APPEND _TestPlugins PointMeshAlgorithm )
foreach(_TestPlugin ${_TestPlugins})
list(APPEND LAMPCAE_TEST_Libraries ${LAMPCAE_${_TestPlugin}_Runtimes_Libraries})

View File

@ -519,7 +519,8 @@ namespace GUI {
connect(_ui->actionFEKOImageSetting_CircleImage,SIGNAL(triggered()), this,SIGNAL(on_actionFEKOImageSetting_CircleImage_SIGNAL()));
// 室内测量成像
connect(_ui->actionImportRoomMeasurementImage,SIGNAL(triggered()), this,SIGNAL(on_actionImportRoomMeasurementImage_SIGNAL()));
connect(_ui->actionForestTargetStructMeasurement,SIGNAL(triggered()), this,SIGNAL(onactionForestTargetStructMeasurement_SIGNAL()));
connect(_ui->actionIoutRoomSimulationImage,SIGNAL(triggered()), this,SLOT(on_action_simulation()));
}
@ -684,7 +685,7 @@ namespace GUI {
}
void MainWindow::on_action_simulation(){
QString exepath="D:\\WBFZCPP\\RasterProcessTool\\x64\\Release\\LAMPDataProcessEXE.exe";
QString exepath= QString(u8"%1\\%2").arg(QCoreApplication::applicationDirPath()).arg(u8"\\SatelliteSimualtionTool\\LAMPDataProcessEXE.exe");
QProcess program;
QString cmd = exepath;
program.start(cmd);

View File

@ -382,7 +382,7 @@ namespace GUI {
// 导入室内成像测量数据
void on_actionImportRoomMeasurementImage_SIGNAL();
void onactionForestTargetStructMeasurement_SIGNAL();

View File

@ -41,6 +41,10 @@ include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../qhexedit)
# opencv
include_directories(${OpenCV_INCLUDE_DIRS})
# qtpropertybrowser
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/qt)
#
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/SqliteDBProcess/src)
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/modelProcess)
@ -50,6 +54,7 @@ include_directories(${CMAKE_CURRENT_SOURCE_DIR}/PointCloudProcess)
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/SharedModuleLib)
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/TableProcess)
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/TaskXml)
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/MeasurementTableWidget)
@ -100,7 +105,8 @@ add_library(PluginWBFZExchangePlugin
${_interface}
${_header}
${_source}
${SOURCES}
${SOURCES}
)
@ -159,7 +165,7 @@ get_filename_component(_qt_bin_dir "${_qmake_executable}" DIRECTORY)
list(APPEND _depend_library
PointCloudOperator qcustomplot qhexedit qscintilla2 Common Settings PythonModule DataProperty MeshData Material Geometry BCBase ConfigOptions SelfDefObject ModelData ModuleBase PluginManager GeometryCommand GeometryWidgets IO MainWidgets MainWindow
PointCloudOperator qtpropertybrowser qcustomplot qhexedit qscintilla2 Common Settings PythonModule DataProperty MeshData Material Geometry BCBase ConfigOptions SelfDefObject ModelData ModuleBase PluginManager GeometryCommand GeometryWidgets IO MainWidgets MainWindow
)

View File

@ -6,7 +6,6 @@ LAMPDataShowClass::LAMPDataShowClass(QWidget *parent)
{
ui=new Ui::LAMPDataShowClassClass;
ui->setupUi(this);
// 添加菜单项
QMenu* FileOpenMenu = this->ui->menuFile->addMenu(u8"文件");
// QAction* action_openfile_tiff = FileOpenMenu->addAction(u8"tiff文件"); // 添加菜单项
@ -30,9 +29,10 @@ void LAMPDataShowClass::add_DataTree(TaskNode* node) {
QListWidgetItem* itemtemp = new QListWidgetItem(this->ui->listWidgetContent);
itemtemp->setSizeHint(node->sizeHint());
node->setMinimumHeight(24);
this->ui->listWidgetContent->setItemWidget(itemtemp, node);
this->ui->listWidgetContent->addItem(itemtemp);
itemtemp->setSizeHint(QSize(100,30));
this->ui->listWidgetContent->addItem(itemtemp);
}
void ShowComplexMatrixPlot(QCustomPlot* customPlot, const Eigen::MatrixXcd& complexMatrix) {
int nx = complexMatrix.rows(); // 行数

View File

@ -19,9 +19,12 @@
<widget class="QListWidget" name="listWidgetContent">
<property name="font">
<font>
<pointsize>14</pointsize>
<pointsize>16</pointsize>
</font>
</property>
<property name="lineWidth">
<number>2</number>
</property>
<item>
<property name="text">
<string>fsada</string>
@ -42,7 +45,7 @@
<x>0</x>
<y>0</y>
<width>285</width>
<height>26</height>
<height>23</height>
</rect>
</property>
<widget class="QMenu" name="menuFile">

View File

@ -0,0 +1,26 @@
//
// Created by 30453 on 25-4-25.
//
// You may need to build the project (run Qt uic code generator) to get "ui_MeasurementDataInputDialog.h" resolved
#include "MeasurementDataInputDialog.h"
#include "ui_MeasurementDataInputDialog.h"
//#include "qtpropertymanager.h"
//#include "qteditorfactory.h"
//#include "qttreepropertybrowser.h"
//#include "qtbuttonpropertybrowser.h"
//#include "qtgroupboxpropertybrowser.h"
MeasurementDataInputDialog::MeasurementDataInputDialog(QWidget *parent) :
QDialog(parent), ui(new Ui::MeasurementDataInputDialog) {
ui->setupUi(this);
}
MeasurementDataInputDialog::~MeasurementDataInputDialog() {
delete ui;
}

View File

@ -0,0 +1,28 @@
//
// Created by 30453 on 25-4-25.
//
#ifndef LAMPCAE_MEASUREMENTDATAINPUTDIALOG_H
#define LAMPCAE_MEASUREMENTDATAINPUTDIALOG_H
#include <QDialog>
QT_BEGIN_NAMESPACE
namespace Ui { class MeasurementDataInputDialog; }
QT_END_NAMESPACE
class MeasurementDataInputDialog : public QDialog {
Q_OBJECT
public:
explicit MeasurementDataInputDialog(QWidget *parent = nullptr);
~MeasurementDataInputDialog() override;
private:
Ui::MeasurementDataInputDialog *ui;
};
#endif //LAMPCAE_MEASUREMENTDATAINPUTDIALOG_H

View File

@ -0,0 +1,95 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>MeasurementDataInputDialog</class>
<widget class="QDialog" name="MeasurementDataInputDialog">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>929</width>
<height>503</height>
</rect>
</property>
<property name="windowTitle">
<string>MeasurementDataInputDialog</string>
</property>
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<widget class="QFrame" name="frame">
<property name="frameShape">
<enum>QFrame::StyledPanel</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Raised</enum>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QListWidget" name="listWidget"/>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QFrame" name="frame_2">
<property name="frameShape">
<enum>QFrame::StyledPanel</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Raised</enum>
</property>
<layout class="QVBoxLayout" name="verticalLayout_2">
<item>
<widget class="QTableWidget" name="tableWidget">
<row>
<property name="text">
<string>SampleHeight</string>
</property>
</row>
<row>
<property name="text">
<string>SampleLength</string>
</property>
</row>
<row>
<property name="text">
<string>SampleWidth</string>
</property>
</row>
<column>
<property name="text">
<string>列名</string>
</property>
</column>
<column>
<property name="text">
<string>参数值</string>
</property>
</column>
<item row="0" column="0">
<property name="text">
<string>SampleHeight</string>
</property>
</item>
<item row="1" column="0">
<property name="text">
<string>SampleLength</string>
</property>
</item>
<item row="2" column="0">
<property name="text">
<string>SampleWidth</string>
</property>
</item>
</widget>
</item>
<item>
<widget class="QWidget" name="widget" native="true"/>
</item>
</layout>
</widget>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>

View File

@ -530,9 +530,6 @@ void DataShowNode::Load_Image()
this->loadData();
}
DataShowNode::~DataShowNode()
{
}
@ -861,7 +858,7 @@ void FEKOResultImportTaskNode::getExcuteTaskResult(FEKOResultImport* obj)
tablewindow->setTableViewAutoSort(true);
tablewindow->LockFileOpen();
QFileInfo fileInfo((this->outPath));
QString titletext = QString::QString(u8"正在编辑 ") + fileInfo.fileName();
QString titletext = QString(u8"正在编辑 ") + fileInfo.fileName();
tablewindow->setWindowTitle(titletext);
tablewindow->show();
}

View File

@ -13,6 +13,8 @@
#include "DialogPCLPoissonMesh.h"
#include "Settings/BusAPI.h"
#include <QFileInfo>
#include <QString>
#include <QMessageBox>
#include "Common/DebugLogger.h"
#include "AllHead.h"
#include "TaskTreeClass.h"
@ -21,7 +23,7 @@
#include "SqliteDBMainWindow.h"
#include "LAMPImageCreateClass.h"
#include "OCCTLine2Face.h"
#include "MeasurementDataInputDialog.h"
//#include "dialogechodatashow.h"
namespace WBFZ {
@ -75,8 +77,7 @@ namespace WBFZ {
connect(_mainwindow,SIGNAL(on_actionFEKOImageSetting_CircleImage_SIGNAL()), this,SLOT(on_actionFEKOImageSetting_CircleImage_SIGNAL()));
// 室内测量成像
connect(_mainwindow,SIGNAL(on_actionImportRoomMeasurementImage_SIGNAL()), this,SLOT(on_actionImportRoomMeasurementImage_SIGNAL()));
connect(_mainwindow,SIGNAL(onactionForestTargetStructMeasurement_SIGNAL()), this,SLOT(onactionForestTargetStructMeasurement_SIGNAL()));
DebugInfo("WBFZExchangePlugin::WBFZExchangePlugin has init \n");
@ -85,6 +86,9 @@ namespace WBFZ {
}
bool WBFZExchangePlugin::install()
{
if(_mainwindow == nullptr)
@ -296,9 +300,32 @@ namespace WBFZ {
}
void WBFZExchangePlugin::on_actionImportRoomMeasurementImage_SIGNAL() {
// 导入室内测量成像结果
QString fileName = QFileDialog::getOpenFileName(
nullptr, // 父窗口
tr(u8"选择M1B极化文件"), // 标题
QString(), // 默认路径
tr(u8"ALL File(*.*);;ENVI Bin(*.bin);;ENVI Data(*.dat);;ENVI Data(*.data);;tiff影像(*.tif);;tiff影像(*.tiff)") // 文件过滤器
);
// 如果用户选择了文件
if (!fileName.isEmpty()) {
QString m1bfilepath=fileName;
LAMPDataShowClass* datashow=new LAMPDataShowClass();
datashow->show();
datashow->load_complex_data(m1bfilepath);
}
else {
QMessageBox::information(nullptr, tr(u8"没有选择文件"), tr(u8"没有选择任何文件。"));
}
}
void WBFZExchangePlugin::onactionForestTargetStructMeasurement_SIGNAL() {
MeasurementDataInputDialog* dialog=new MeasurementDataInputDialog;
dialog->show();
}
} // namespace WBFZ
void Register(GUI::MainWindow* m, QList<Plugins::PluginBase*>* ps)

View File

@ -65,7 +65,7 @@ namespace WBFZ
void on_actionFEKOImageSetting_ISARImage_SIGNAL();
void on_actionFEKOImageSetting_CircleImage_SIGNAL();
void on_actionImportRoomMeasurementImage_SIGNAL();
void onactionForestTargetStructMeasurement_SIGNAL();
// 室内测量成像
};

View File

@ -302,6 +302,8 @@ QTableView, QListView {
QListWidget::Item {
margin :6px;
padding: 0px; /* 可选:控制内边距 */
height: 30px; /* 建议明确设置项高度包含margin */
}
QTableView::item:hover, QListView::item:hover {

View File

@ -1,4 +1,24 @@
<RCC>
<qresource prefix="/qt-project.org/qtpropertybrowser">
<file>images/cursor-arrow.png</file>
<file>images/cursor-busy.png</file>
<file>images/cursor-closedhand.png</file>
<file>images/cursor-cross.png</file>
<file>images/cursor-forbidden.png</file>
<file>images/cursor-hand.png</file>
<file>images/cursor-hsplit.png</file>
<file>images/cursor-ibeam.png</file>
<file>images/cursor-openhand.png</file>
<file>images/cursor-sizeall.png</file>
<file>images/cursor-sizeb.png</file>
<file>images/cursor-sizef.png</file>
<file>images/cursor-sizeh.png</file>
<file>images/cursor-sizev.png</file>
<file>images/cursor-uparrow.png</file>
<file>images/cursor-vsplit.png</file>
<file>images/cursor-wait.png</file>
<file>images/cursor-whatsthis.png</file>
</qresource>
<qresource prefix="/">
<file>PointCloudProcess/images/back.png</file>
<file>PointCloudProcess/images/bottom.png</file>

View File

@ -1,17 +1,18 @@
#-----------------------------------------------------------------------------
#
#-----------------------------------------------------------------------------
#include_directories(${CMAKE_CURRENT_SOURCE_DIR}/..)
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/lexers)
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include)
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/lexlib)
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/Qt4Qt5)
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src)
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/..)
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/lexers)
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include)
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/lexlib)
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/Qt4Qt5)
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src)
#-----------------------------------------------------------------------------
# lib
#-----------------------------------------------------------------------------
link_directories(C:/Qt/5.15.2/msvc2019_64/lib)
#link_directories(C:/Qt/5.15.2/msvc2019_64/lib)
find_package(Qt5 COMPONENTS Core REQUIRED)
#-----------------------------------------------------------------------------

View File

@ -0,0 +1,80 @@
#-----------------------------------------------------------------------------
#
#-----------------------------------------------------------------------------
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/..)
#include_directories(${CMAKE_CURRENT_SOURCE_DIR}/lexers)
#include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include)
#include_directories(${CMAKE_CURRENT_SOURCE_DIR}/lexlib)
#include_directories(${CMAKE_CURRENT_SOURCE_DIR}/Qt4Qt5)
#include_directories(${CMAKE_CURRENT_SOURCE_DIR}/src)
#-----------------------------------------------------------------------------
# lib
#-----------------------------------------------------------------------------
#link_directories(C:/Qt/5.15.2/msvc2019_64/lib)
find_package(Qt5 REQUIRED COMPONENTS Core Quick Sql Core Xml Opengl Gui Svg Xmlpatterns Uitools Widgets Qml Printsupport Sensors Quickwidgets Quick Concurrent Openglextensions Charts Datavisualization)
#-----------------------------------------------------------------------------
# include
#-----------------------------------------------------------------------------
set(CMAKE_INCLUDE_CURRENT_DIR ON)
#-----------------------------------------------------------------------------
#
#-----------------------------------------------------------------------------
set(_qrc "${CMAKE_CURRENT_SOURCE_DIR}/../qrc/WBCLFZSystemModule.qrc")
qt5_add_resources(_resource ${_qrc} ${_lang})
#-----------------------------------------------------------------------------
#
#-----------------------------------------------------------------------------
file(GLOB_RECURSE _ui "*.ui")
file(GLOB_RECURSE _header "*.h")
file(GLOB_RECURSE _source "*.cpp")
qt5_wrap_ui(_interface ${_ui})
#-----------------------------------------------------------------------------
#
#-----------------------------------------------------------------------------
add_library(qtpropertybrowser STATIC
${_resource}
${_interface}
${_header}
${_source}
)
#-----------------------------------------------------------------------------
# Qt
#-----------------------------------------------------------------------------
get_target_property(_qmake_executable Qt5::qmake IMPORTED_LOCATION)
get_filename_component(_qt_bin_dir "${_qmake_executable}" DIRECTORY)
#-----------------------------------------------------------------------------
#
#-----------------------------------------------------------------------------
target_compile_definitions(qtpropertybrowser PUBLIC "QTPROPERTYBROWSER_API")
list(APPEND _runtimes_libraries
Qt5::DBus Qt5::Core Qt5::Xml Qt5::OpenGL Qt5::Gui Qt5::Svg Qt5::Widgets Qt5::Qml Qt5::DataVisualization Qt5::Charts Qt5::PrintSupport
)
list(APPEND _runtimes_libraries
Qt5::Network Qt5::Core Qt5::Gui Qt5::Widgets Qt5::DBus Qt5::Core Qt5::Xml Qt5::OpenGL Qt5::Gui Qt5::Svg Qt5::Widgets Qt5::Qml Qt5::DataVisualization Qt5::Charts Qt5::PrintSupport Qt5::Test
)
target_include_directories(qtpropertybrowser PUBLIC ${Qwt_INCLUDE_DIRS})
#-----------------------------------------------------------------------------
#
#-----------------------------------------------------------------------------
set_target_properties(qtpropertybrowser PROPERTIES VS_GLOBAL_VcpkgEnabled true)
target_link_libraries(qtpropertybrowser PUBLIC
${_runtimes_libraries}
${_depend_library}
)