diff --git a/.idea/vcs.xml b/.idea/vcs.xml index d3987a2..c132c9d 100644 --- a/.idea/vcs.xml +++ b/.idea/vcs.xml @@ -3,7 +3,5 @@ - - \ No newline at end of file diff --git a/CMakeLists.txt b/CMakeLists.txt index 4be9833..1395ad9 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -26,6 +26,9 @@ set(CMAKE_CXX_EXTENSIONS OFF) set(CMAKE_CXX_STANDARD_REQUIRED ON) # 默认编译动态库 set(BUILD_SHARED_LIBS ON) +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTOUIC ON) +set(CMAKE_AUTORCC ON) #----------------------------------------------------------------------------- @@ -223,7 +226,8 @@ find_package(FFTW3 CONFIG REQUIRED) find_package(GSL REQUIRED) #GDAL find_package(GDAL CONFIG REQUIRED) - +# +find_package(unofficial-sqlite3 CONFIG REQUIRED) @@ -242,7 +246,7 @@ include_directories(SYSTEM C:/PCL/3rdParty/VTK/include/vtk-9.3) include_directories(SYSTEM C:/PCL/include/pcl-1.14) set(CMAKE_INCLUDE_CURRENT_DIR ON) -find_package(Qt5 REQUIRED COMPONENTS Test Core Quick Sql Core Xml Opengl Gui Svg Xmlpatterns Uitools Widgets Qml Printsupport Sensors Quickwidgets Quick Concurrent Openglextensions Charts Datavisualization) +find_package(Qt5 REQUIRED COMPONENTS Test Core Quick Sql Core Xml Opengl Gui Svg Xmlpatterns Uitools Widgets Qml Printsupport Sensors Quickwidgets Quick Concurrent Openglextensions Charts Datavisualization Network) find_package(PCL) include_directories(${PCL_INCLUDE_DIRS}) include_directories(${VCGLIB_INCLUDE_DIRS}) diff --git a/cmake/FindPython.cmake b/cmake/FindPython.cmake index 7f5f5a9..e39708e 100644 --- a/cmake/FindPython.cmake +++ b/cmake/FindPython.cmake @@ -36,7 +36,7 @@ endif() set(LAMPCAE_Python_ALREADY_INCLUDED 1) set(Python_VERSION_MAJOR 3) -set(Python_VERSION_MINOR 7) +set(Python_VERSION_MINOR 9) set(Python_VERSION_PATCH 0) # find_path 搜索包含某个文件的路径 # 如果在某个路径下发现了该文件,该结果会被存储到该变量中;如果没有找到,存储的结果将会是-NOTFOUND @@ -149,4 +149,5 @@ find_package_handle_standard_args(Python Python_EXECUTABLE VERSION_VAR Python_VERSION -) \ No newline at end of file +) + diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index e4f8a9d..7b03bf8 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -6,8 +6,8 @@ set(SOVERSION ${PROJECT_VERSION} ${PROJECT_VERSION_MAJOR} ${PROJECT_VERSION_MINO #----------------------------------------------------------------------------- list(APPEND _libraries 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 LAMPTool WBCLFZSystemModule ) -list(APPEND _libraries PluginMotorBike ) +list(APPEND _libraries json qcustomplot qhexedit qscintilla2 ) + #[[if(_WIN_) list(APPEND _libraries XGenerateReport License) endif()]] @@ -29,8 +29,11 @@ file(TO_NATIVE_PATH "${_rpath}/${INSTALL_LIBDIR}" _lib_rpath) # 遗漏两个,临时解决方案 list(APPEND LAMPCAE_Runtimes_Libraries VTK::loguru VTK::gl2ps Qt5::DBus VTK::IOChemistry ) -list(APPEND LAMPCAE_Runtimes_Libraries Qt5::Qml ) - +list(APPEND LAMPCAE_Runtimes_Libraries Qt5::Qml Qt5::Network ) +list(APPEND LAMPCAE_Runtimes_Libraries + OpenCASCADE::TKOpenGl OpenCASCADE::TKOffset OpenCASCADE::TKSTL OpenCASCADE::Freetype OpenCASCADE::TKBO OpenCASCADE::TKBRep OpenCASCADE::TKBool OpenCASCADE::TKCAF OpenCASCADE::TKCDF OpenCASCADE::TKG2d OpenCASCADE::TKG3d OpenCASCADE::TKGeomAlgo OpenCASCADE::TKGeomBase OpenCASCADE::TKHLR OpenCASCADE::TKIGES OpenCASCADE::TKLCAF OpenCASCADE::TKMath OpenCASCADE::TKMesh OpenCASCADE::TKPrim OpenCASCADE::TKSTEP OpenCASCADE::TKSTEP209 OpenCASCADE::TKSTEPAttr OpenCASCADE::TKSTEPBase OpenCASCADE::TKService OpenCASCADE::TKShHealing OpenCASCADE::TKTopAlgo OpenCASCADE::TKV3d OpenCASCADE::TKVCAF OpenCASCADE::TKXCAF OpenCASCADE::TKXDEIGES OpenCASCADE::TKXSBase OpenCASCADE::TKernel Qt5::Widgets Qt5::Xml VTK::CommonColor VTK::CommonComputationalGeometry VTK::CommonCore VTK::CommonDataModel VTK::CommonExecutionModel VTK::CommonMath VTK::CommonMisc VTK::CommonSystem VTK::CommonTransforms VTK::FiltersCore VTK::FiltersExtraction VTK::FiltersGeneral VTK::FiltersGeometry VTK::FiltersSources VTK::FiltersStatistics VTK::IOCore VTK::IOLegacy VTK::IOXML VTK::IOXMLParser VTK::ImagingCore VTK::ImagingFourier VTK::ImagingMath VTK::InteractionStyle VTK::ParallelCore VTK::ParallelDIY VTK::RenderingCore VTK::RenderingFreeType VTK::RenderingOpenGL2 VTK::RenderingUI VTK::RenderingVolume VTK::RenderingVolumeOpenGL2 VTK::doubleconversion VTK::expat VTK::freetype VTK::glew VTK::lz4 VTK::lzma VTK::sys VTK::zlib VTK::IOGeometry + VTK::CommonColor VTK::CommonComputationalGeometry VTK::CommonCore VTK::CommonDataModel VTK::CommonExecutionModel VTK::CommonMath VTK::CommonMisc VTK::CommonSystem VTK::CommonTransforms VTK::FiltersCore VTK::FiltersExtraction VTK::FiltersGeneral VTK::FiltersGeometry VTK::FiltersSources VTK::FiltersStatistics VTK::IOCore VTK::IOLegacy VTK::IOXML VTK::IOXMLParser VTK::ImagingCore VTK::ImagingFourier VTK::ImagingMath VTK::InteractionStyle VTK::ParallelCore VTK::ParallelDIY VTK::RenderingCore VTK::RenderingFreeType VTK::RenderingOpenGL2 VTK::RenderingUI VTK::RenderingVolume VTK::RenderingVolumeOpenGL2 VTK::doubleconversion VTK::expat VTK::freetype VTK::glew VTK::lz4 VTK::lzma VTK::sys VTK::zlib VTK::IOGeometry +) foreach(_library ${_libraries}) @@ -66,7 +69,7 @@ install( LIBRARY DESTINATION ${INSTALL_LIBDIR} COMPONENT lib ) -list(APPEND _plugins PluginCustomizer PluginMeshDataExchange PluginWBFZExchangePlugin) +list(APPEND _plugins PluginCustomizer PluginMeshDataExchange PluginWBFZExchangePlugin PluginMotorBike) foreach(_plugin ${_plugins}) list(APPEND LAMPCAE_Runtimes_Libraries ${LAMPCAE_${_plugin}_Runtimes_Libraries}) diff --git a/src/LAMPCAE/CMakeLists.txt b/src/LAMPCAE/CMakeLists.txt index 4a5c0aa..c9e1c2c 100644 --- a/src/LAMPCAE/CMakeLists.txt +++ b/src/LAMPCAE/CMakeLists.txt @@ -32,6 +32,8 @@ set_property(DIRECTORY ${CMAKE_SOURCE_DIR} ) list(APPEND _depend_library Common PythonModule SARibbonBar Settings DataProperty MeshData Material Geometry ConfigOptions SelfDefObject ModelData ModuleBase PluginManager GmshModule PostInterface PostWidgets ProjectTree GeometryCommand GeometryWidgets IO SolverControl MainWidgets UserGuidence MainWindow) +list(APPEND _depend_library ) + if(_WIN_) #list(APPEND _depend_library XGenerateReport License) endif() diff --git a/src/LAMPTool/BackScatterModel.h b/src/LAMPTool/BackScatterModel.h deleted file mode 100644 index 6fe85c3..0000000 --- a/src/LAMPTool/BackScatterModel.h +++ /dev/null @@ -1,20 +0,0 @@ -#pragma once -#ifndef _BACKSCATTERMODEL_H_ -#define _BACKSCATTERMODEL_H_ - - -#include "LAMPToolAPI.h" -#include -#include -#include "LAMPToolAPI.h" - -double LAMPTOOLAPI MuhlemanSimulationBackScatter(double incidentAngle); -Eigen::MatrixXd LAMPTOOLAPI MuhlemanSimulationBackScatter(Eigen::MatrixXd incidentAngle); - - -#endif - - - - - diff --git a/src/LAMPTool/CMakeLists.txt b/src/LAMPTool/CMakeLists.txt deleted file mode 100644 index 63de74e..0000000 --- a/src/LAMPTool/CMakeLists.txt +++ /dev/null @@ -1,147 +0,0 @@ -#----------------------------------------------------------------------------- -# 头文件搜索路径 -#----------------------------------------------------------------------------- -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/..) - -# boost -include_directories(D:/vcpkg/installed/x64-windows/include) - -# pcl -include_directories(C:/PCL/3rdParty/FLANN/include) -include_directories(C:/PCL/3rdParty/VTK/include/vtk-9.3) -include_directories(C:/PCL/include/pcl-1.14) - -# FindOpenCASCADE -include_directories(${OpenCASCADE_INCLUDE_DIRS}) - -# qt5 -include_directories(C:/Qt/5.15.2/msvc2019_64/include/QtQml) - -# json -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../json) - -# qscintilla2 -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../qscintilla2) -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../qscintilla2/lexers) -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../qscintilla2/include) -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../qscintilla2/lexlib) -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../qscintilla2/Qt4Qt5) -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../qscintilla2/src) - -# lamptool -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../LAMPTool) -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../LAMPTool/include) - -# qcustomplot -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../qcustomplot) - -# qhexedit -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../qhexedit) - - -# 内部结构 -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/SqliteDBProcess/src) -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/modelProcess) -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/EchoShowProcess) -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/OCCViewer) -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) - - -#----------------------------------------------------------------------------- -# 链接库 -#----------------------------------------------------------------------------- - -# pcl -link_directories("C:/PCL/3rdParty/FLANN/lib") -link_directories("C:/VTK/lib") -link_directories("C:/PCL/lib") - -# - - -#----------------------------------------------------------------------------- -# 自动添加include目录 -#----------------------------------------------------------------------------- -set(CMAKE_INCLUDE_CURRENT_DIR ON) -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) -find_package(PCL) -include_directories(${PCL_INCLUDE_DIRS}) -link_directories(${PCL_LIBRARY_DIRS}) -add_definitions(${PCL_DEFINITIONS}) - - - -#----------------------------------------------------------------------------- -# 添加资源文件 -#----------------------------------------------------------------------------- -set(_qrc "${CMAKE_CURRENT_SOURCE_DIR}/../qrc/WBCLFZSystemModule.qrc") -set(_qrc "${CMAKE_CURRENT_SOURCE_DIR}/../qrc/qianfan.qrc") -set(_lang "${CMAKE_CURRENT_SOURCE_DIR}/../qrc/translations.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}) - -#----------------------------------------------------------------------------- -# 添加动态库目标 -- 这是输出lib库, -#----------------------------------------------------------------------------- -add_library(LAMPTool STATIC - ${_resource} - ${_interface} - ${_header} - ${_source} -) - -#----------------------------------------------------------------------------- -# 添加接口声明宏 -#----------------------------------------------------------------------------- -target_compile_definitions(LAMPTool PUBLIC LAMPTOOL_API) - -#----------------------------------------------------------------------------- -# 安装Qt的依赖文件 -#----------------------------------------------------------------------------- -get_target_property(_qmake_executable Qt5::qmake IMPORTED_LOCATION) -get_filename_component(_qt_bin_dir "${_qmake_executable}" DIRECTORY) - - - -list(APPEND _depend_library qcustomplot) - -list(APPEND _runtimes_libraries - 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 -) - -list(APPEND _runtimes_libraries - OpenCASCADE::TKOpenGl OpenCASCADE::Freetype OpenCASCADE::TKBO OpenCASCADE::TKBRep OpenCASCADE::TKBool OpenCASCADE::TKCAF OpenCASCADE::TKCDF OpenCASCADE::TKG2d OpenCASCADE::TKG3d OpenCASCADE::TKGeomAlgo OpenCASCADE::TKGeomBase OpenCASCADE::TKHLR OpenCASCADE::TKIGES OpenCASCADE::TKLCAF OpenCASCADE::TKMath OpenCASCADE::TKMesh OpenCASCADE::TKPrim OpenCASCADE::TKSTEP OpenCASCADE::TKSTEP209 OpenCASCADE::TKSTEPAttr OpenCASCADE::TKSTEPBase OpenCASCADE::TKService OpenCASCADE::TKShHealing OpenCASCADE::TKTopAlgo OpenCASCADE::TKV3d OpenCASCADE::TKVCAF OpenCASCADE::TKXCAF OpenCASCADE::TKXDEIGES OpenCASCADE::TKXSBase OpenCASCADE::TKernel Qt5::Widgets Qt5::Xml VTK::CommonColor VTK::CommonComputationalGeometry VTK::CommonCore VTK::CommonDataModel VTK::CommonExecutionModel VTK::CommonMath VTK::CommonMisc VTK::CommonSystem VTK::CommonTransforms VTK::FiltersCore VTK::FiltersExtraction VTK::FiltersGeneral VTK::FiltersGeometry VTK::FiltersSources VTK::FiltersStatistics VTK::IOCore VTK::IOLegacy VTK::IOXML VTK::IOXMLParser VTK::ImagingCore VTK::ImagingFourier VTK::ImagingMath VTK::InteractionStyle VTK::ParallelCore VTK::ParallelDIY VTK::RenderingCore VTK::RenderingFreeType VTK::RenderingOpenGL2 VTK::RenderingUI VTK::RenderingVolume VTK::RenderingVolumeOpenGL2 VTK::doubleconversion VTK::expat VTK::freetype VTK::glew VTK::lz4 VTK::lzma VTK::sys VTK::zlib VTK::IOGeometry -) - -target_include_directories(LAMPTool PRIVATE ${Qwt_INCLUDE_DIRS}) - -#----------------------------------------------------------------------------- -# 链接依赖库 -#----------------------------------------------------------------------------- -target_link_libraries(LAMPTool PRIVATE - ${_runtimes_libraries} - ${_depend_library} - ${PCL_LIBRARIES} - FFTW3::fftw3 - GSL::gsl GSL::gslcblas -) - -#----------------------------------------------------------------------------- -# 添加依赖关系 -#----------------------------------------------------------------------------- -add_dependencies(LAMPTool ${_depend_library}) - -#----------------------------------------------------------------------------- -# 添加运行时依赖关系 -#----------------------------------------------------------------------------- -set(LAMPCAE_LAMPTool_Runtimes_Libraries ${_runtimes_libraries} PARENT_SCOPE) diff --git a/src/LAMPTool/FileOperator.h b/src/LAMPTool/FileOperator.h deleted file mode 100644 index ed76fd1..0000000 --- a/src/LAMPTool/FileOperator.h +++ /dev/null @@ -1,50 +0,0 @@ -#pragma once - -#ifndef FILEOPERATOR_H -#define FILEOPERATOR_H - -#include "../LAMPTool/referenceHeader.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - - -bool LAMPTOOLAPI isDirectory(const QString& path); -bool LAMPTOOLAPI isExists(const QString& path); -bool LAMPTOOLAPI isFile(const QString& path); -void LAMPTOOLAPI removeFile(const QString& filePath); -unsigned long LAMPTOOLAPI convertToULong(const QString& input); -/// -/// 获取文件(绝对路径) -/// -/// -/// -/// -std::vector LAMPTOOLAPI getFilelist(const QString& folderpath, const QString& FilenameExtension = ".*",int (*logfun)(QString logtext,int value)=nullptr); - -QString LAMPTOOLAPI getParantFolderNameFromPath(const QString& path); - -QString LAMPTOOLAPI getFileNameFromPath(const QString& path); - -int LAMPTOOLAPI write_binfile(char* filepath, char* data, size_t data_len); - -LAMPTOOLAPI char* read_textfile(char* text_path, int* length); - -bool LAMPTOOLAPI exists_test(const QString& name); - -size_t LAMPTOOLAPI fsize(FILE* fp); - -QString LAMPTOOLAPI getParantFromPath(const QString& path); -void LAMPTOOLAPI copyFile(const QString& sourcePath, const QString& destinationPath); -// QT FileOperator -#endif \ No newline at end of file diff --git a/src/LAMPTool/GeoOperator.h b/src/LAMPTool/GeoOperator.h deleted file mode 100644 index 6353971..0000000 --- a/src/LAMPTool/GeoOperator.h +++ /dev/null @@ -1,111 +0,0 @@ -#pragma once - - -#ifndef _GEOOPERATOR_H -#define _GEOOPERATOR_H -#include "LAMPToolAPI.h" -#include "BaseConstVariable.h" -#include -#include -#include -#include -#include -#include -#include - -/// -/// 三维向量,坐标表达 -/// -struct Landpoint // 点 SAR影像的像素坐标; -{ - /// - /// 经度x - /// - double lon; // 经度x lon pixel_col - /// - /// 纬度y - /// - double lat; // 纬度y lat pixel_row - /// - /// 高度z - /// - double ati; // 高程z ati pixel_time -}; -struct Point_3d { - double x; - double y; - double z; -}; - -/// -/// 将经纬度转换为地固参心坐标系 -/// -/// 经纬度点--degree -/// 投影坐标系点 -Landpoint LAMPTOOLAPI LLA2XYZ(const Landpoint& LLA); -Eigen::MatrixXd LAMPTOOLAPI LLA2XYZ(Eigen::MatrixXd landpoint); - -/// -/// 将地固参心坐标系转换为经纬度 -/// -/// 固参心坐标系 -/// 经纬度--degree -Landpoint LAMPTOOLAPI XYZ2LLA(const Landpoint& XYZ); - - -Landpoint LAMPTOOLAPI operator +(const Landpoint& p1, const Landpoint& p2); - -Landpoint LAMPTOOLAPI operator -(const Landpoint& p1, const Landpoint& p2); - -bool LAMPTOOLAPI operator ==(const Landpoint& p1, const Landpoint& p2); - -Landpoint LAMPTOOLAPI operator *(const Landpoint& p, double scale); - -double LAMPTOOLAPI getAngle(const Landpoint& a, const Landpoint& b); - -double LAMPTOOLAPI dot(const Landpoint& p1, const Landpoint& p2); - -double LAMPTOOLAPI getlength(const Landpoint& p1); - -Landpoint LAMPTOOLAPI crossProduct(const Landpoint& a, const Landpoint& b); - - -Landpoint LAMPTOOLAPI getSlopeVector(const Landpoint& p0, const Landpoint& p1, const Landpoint& p2, const Landpoint& p3, const Landpoint& p4); - - - -float LAMPTOOLAPI cross2d(Point_3d a, Point_3d b); - -Point_3d LAMPTOOLAPI operator -(Point_3d a, Point_3d b); - -Point_3d LAMPTOOLAPI operator +(Point_3d a, Point_3d b); - -double LAMPTOOLAPI operator /(Point_3d a, Point_3d b); - - - -// 矢量计算 -struct Vector3D { - double x, y, z; -}; - -// 计算两点之间的距离 -double LAMPTOOLAPI distance(const Vector3D& p1, const Vector3D& p2); -// 计算点到直线的最短距离 -double LAMPTOOLAPI pointToLineDistance(const Vector3D& point, const Vector3D& linePoint, const Vector3D& lineDirection); - - -struct CartesianCoordinates { - double x, y, z; -}; - -struct SphericalCoordinates { - double r, theta, phi; -}; - -SphericalCoordinates LAMPTOOLAPI cartesianToSpherical(const CartesianCoordinates& cartesian); - -CartesianCoordinates LAMPTOOLAPI sphericalToCartesian(const SphericalCoordinates& spherical); - - -#endif \ No newline at end of file diff --git a/src/LAMPTool/LAMPToolAPI.h b/src/LAMPTool/LAMPToolAPI.h deleted file mode 100644 index f27183a..0000000 --- a/src/LAMPTool/LAMPToolAPI.h +++ /dev/null @@ -1,13 +0,0 @@ -#ifndef _LAMPTOOLAPI_H_ -#define _LAMPTOOLAPI_H_ - -#include - - -#if defined(LAMPTOOL_API) -#define LAMPTOOLAPI Q_DECL_EXPORT -#else -#define LAMPTOOLAPI Q_DECL_IMPORT -#endif - -#endif diff --git a/src/LAMPTool/OCCTBase.h b/src/LAMPTool/OCCTBase.h deleted file mode 100644 index 77bf026..0000000 --- a/src/LAMPTool/OCCTBase.h +++ /dev/null @@ -1,97 +0,0 @@ -#pragma once - -#ifndef OCCTBASELAMP_H -#define OCCTBASELAMP_H -#include "LAMPToolAPI.h" -#include "referenceHeader.h" - - -//==================== -// 系统支持的模型导出类型 -//===================== - -enum OCCTShapeType -{ - STL, - STEP, - IGES, - NoneType, -}; - -OCCTShapeType LAMPTOOLAPI str2OCCTShapeType(QString str); -QStringList LAMPTOOLAPI getOCCTShapeTypeEmnu(); -QString LAMPTOOLAPI getOCCTShapeTypeFilterString(); -QString LAMPTOOLAPI get_STL_FilterString(); -QString LAMPTOOLAPI get_STEP_FilterString(); -QString LAMPTOOLAPI get_IGES_FilterString(); -QString LAMPTOOLAPI getOCCTShapeTypeFilterString(OCCTShapeType t); -QString LAMPTOOLAPI getOCCTShapeTypeFilterString(QString str); - -// 常用静态函数 -bool LAMPTOOLAPI SaveTopoDs_Stl(QString FilePath, const TopoDS_Shape& shape); -bool LAMPTOOLAPI SaveTopoDs_Step(QString FilePath, const TopoDS_Shape& shape); -bool LAMPTOOLAPI SaveTopoDs_IGES(QString FilePath,const TopoDS_Shape& shape); -bool LAMPTOOLAPI SaveTopoDs(QString FilePath,const TopoDS_Shape& shape, OCCTShapeType type); - -TopoDS_Shape LAMPTOOLAPI ReadTopoDs_IGES(QString Filepath); -TopoDS_Shape LAMPTOOLAPI ReadTopoDs_Stl(QString Filepath); -TopoDS_Shape LAMPTOOLAPI ReadTopoDs_Step(QString Filepath); - -OCCTShapeType LAMPTOOLAPI ReadTopoDs_Shape(QString FilePath, TopoDS_Shape& shape_TopoDs); - - -// 模型合并 -TopoDS_Shape LAMPTOOLAPI MergedTopoShape(std::vector TopoDS_Shapelist); - - -// 修改模型显示 -void LAMPTOOLAPI ChangeModelColor(Handle(AIS_Shape)& aisShape, Quantity_Color& redColor); - -//// 创建箭头 -TopoDS_Shape LAMPTOOLAPI CreateArrow(const gp_Dir& direction, Standard_Real length, Standard_Real radius); -// - - -// OCCT 根据向量A和B,计算变换矩阵 -gp_Trsf LAMPTOOLAPI GetTransFormFromVector(const gp_Vec& A, const gp_Vec& B); - - -TopoDS_Shape LAMPTOOLAPI Process_RotationThetaPhi_MoveXYZ(TopoDS_Shape shape, double theta, double phi,double X,double Y,double Z); - - -//TopoDS_Shape Createpyramid(double width=10.0,double depth=5.0, double mouthWidth=1.0, double mouthHeight=0.5, double height = 15.0); - - - -// 创建一个笛卡尔坐标系 -TopoDS_Shape LAMPTOOLAPI CreateCartesianCoordinatesAxis(double xlength,double ylength,double zlength); -// 常见模型创建 -TopoDS_Shape LAMPTOOLAPI CreateBox(double x, double y, double z); -TopoDS_Shape LAMPTOOLAPI CreateCylinder(double radius, double height); -TopoDS_Shape LAMPTOOLAPI CreateCone(double radius_bottom, double radius_top, double height); -TopoDS_Shape LAMPTOOLAPI CreateSphere(double radius); -TopoDS_Shape LAMPTOOLAPI CreateTorus(double majorRadius, double minorRadius); - -// 常见模型操作 -TopoDS_Shape LAMPTOOLAPI Cut(TopoDS_Shape& shape1, TopoDS_Shape& shape2); -TopoDS_Shape LAMPTOOLAPI Fuse(TopoDS_Shape& shape1, TopoDS_Shape& shape2); -// 常见操作 -- 模型旋转、平移、缩放 -TopoDS_Shape LAMPTOOLAPI Rotate(TopoDS_Shape& shape, gp_Ax1 axis, double angle); -TopoDS_Shape LAMPTOOLAPI Translate(TopoDS_Shape& shape, gp_Vec move_vec); -TopoDS_Shape LAMPTOOLAPI Scale(TopoDS_Shape& shape, gp_Pnt refrenceCenter, double scale); - - -// 创建散射体雷达 -// 创建一个坐标原点为圆心的 -TopoDS_Shape LAMPTOOLAPI createConicalHorn(double bottomRadius,double bottomHeight,double topRadius,double topHeight); -TopoDS_Shape LAMPTOOLAPI createPyramidalHorn(double bottomWidth, double bottomHeight, double bottomAtl, double topWidth, double topHeight, double topAtl); - - - - - -#endif // OCCTBASELAMP_H - - - - diff --git a/src/LAMPTool/main.cpp b/src/LAMPTool/main.cpp deleted file mode 100644 index e0ce4cc..0000000 --- a/src/LAMPTool/main.cpp +++ /dev/null @@ -1,80 +0,0 @@ - -#define __TEST_IMAGEPROCESS -//#define __TESTMATHGL -//#define __TEST_FARFIELDFILEREADPROCESS - -#ifdef __TESTMATHGL -#include -int main() -{ - mglGraph gr; - gr.FPlot("sin(pi*x)"); - gr.WriteFrame("D:\\codestorage\\LAMPSARtool\\CPluseCpluse\\WBCLFZProgram\\WBCLFZProgram\\test.png"); -} - -#endif - - - - -#ifdef __TEST_IMAGEPROCESS - - -#include "LAMPTool.h" -#include -#include "LampToolTest.h" -#include "FEKOSimulationSARClass.h" -#include - - - -int main(int argc, char* argv[]) -{ - - QApplication a(argc, argv); - //LAMPTool w; - //w.show(); - //a.exec(); - //TestImageBP_main(argc, argv); - - - //==================================== - // 测试FEKO模型加载结果 - //==================================== - - - //QString antXmlPath = "D:\\codestorage\\LAMPSARtool\\CPluseCpluse\\WBCLFZProgram\\WBCLFZProgram\\help\\FEKOImageSettingTask.xml"; - //QString echocsvpath = u8"D:\\德清研究院加密\\项目\\项目文档归档\\FEKO知识库\\模型\\远场条带\\ball_001\\ball001_X_strip.csv"; - //QString thetafilepath = ""; - QString phifilepath = u8"D:/codestorage/LAMPSARtool/tmp/antSpace/TESTIMageProject.phi"; - QString tifffilepath = u8"D:/codestorage/LAMPSARtool/tmp/antSpace/TESTIMageProjectImage_phi.dat"; - FEKOBase::FEKOImageSettingParams imageparams{ -2.0, 2.0, -2.0, 2.0, 0.0, 201, 201 }; - - //FEKOBase::NearFieldEchoCSVParser nearfilePraseclass; - //nearfilePraseclass.parseCSV(echocsvpath); - //nearfilePraseclass.toPhiPolar(phifilepath); - - FEKOBase::EchoDataClass data; - data.loadEchoData(phifilepath); - FEKOBase::FEKOImageProcess(data, imageparams, tifffilepath); - return 0; -} - - - -#endif - - -#ifdef __TEST_FARFIELDFILEREADPROCESS -#include "LAMPTool.h" -#include "FEKOBaseToolClass.h" -#include "FEKOFarFieldFileClass.h" -#include "FEKOSimulationSARClass.h" -int main() { - QString ffe_filepath = u8"D:\\德清研究院加密\\项目\\项目文档归档\\FEKO知识库\\模型\\条带脉冲模型\\trihedral\\ant_SAR_new\\ant_SAR_Move\\ant_SAR_new_Horn_conical1_FarField.ffe"; - FEKOBase::FEKOFarFieldFileClass ffefile; - std::cout << ffe_filepath.toLocal8Bit().constData()<< std::endl; - ffefile.parseFarFieldFile(ffe_filepath); - std::cout << "__TEST_FARFIELDFILEREADPROCESS" << std::endl; -} -#endif \ No newline at end of file diff --git a/src/LAMPTool/readme.md b/src/LAMPTool/readme.md deleted file mode 100644 index 671e01a..0000000 --- a/src/LAMPTool/readme.md +++ /dev/null @@ -1,2 +0,0 @@ -# 说明 -此模块主要是通用基础模块 \ No newline at end of file diff --git a/src/MainWidgets/DialogPCLBilateralFilter.cpp b/src/MainWidgets/DialogPCLBilateralFilter.cpp deleted file mode 100644 index 7afa5ce..0000000 --- a/src/MainWidgets/DialogPCLBilateralFilter.cpp +++ /dev/null @@ -1,108 +0,0 @@ -/** - * @file DialogPCLBilateralFilter.cpp - * @brief None - * @author 陈增辉 (3045316072@qq.com) - * @version 2.5.0 - * @date 2024/4/5 - * @copyright Copyright (c) Since 2024 中科卫星应用研究院 All rights reserved. - */ - -// You may need to build the project (run Qt uic code generator) to get -// "ui_DialogPCLBilateralFilter.h" resolved - -#include "DialogPCLBilateralFilter.h" -#include "ui_DialogPCLBilateralFilter.h" - -#include "PythonModule/PyAgent.h" -#include "MeshData/meshSingleton.h" -#include "MeshData/meshSet.h" -#include -#include - - -//auto meshData = MeshData::MeshData::getInstance(); - -namespace MainWidget { - DialogPCLBilateralFilter::DialogPCLBilateralFilter(GUI::MainWindow *parent) - : QFDialog(parent), - _ui(new Ui::DialogPCLBilateralFilter), - _mw(parent), - _selectdlg(new DialogSelectComponents(parent)) - { - _ui->setupUi(this); - _ui->geoSelectPoint->setToolTip(tr("Clicked Button Selected Components")); - setWindowTitle(tr("Fast Bilateral Filter")); - _ui->listWidget->setContextMenuPolicy(Qt::CustomContextMenu); - - - connect(_ui->geoSelectPoint, &QPushButton::clicked, [=]() - { _selectdlg->clearSelectItems(); _selectdlg->exec(); }); - connect(_selectdlg, SIGNAL(selectedComponentsSig(QList)), this, SLOT(selectedComponentsSlot(QList))); - connect(_ui->listWidget, SIGNAL(customContextMenuRequested(const QPoint &)), this, SLOT(customContextMenuRequestedSlot(const QPoint &))); - - } - - DialogPCLBilateralFilter::~DialogPCLBilateralFilter() - { - delete _ui; - _ui = NULL; - delete _selectdlg; - _selectdlg = NULL; - } - - void DialogPCLBilateralFilter::accept() - { - if (_components.size() == 0) - return; - - QString componentIds; - for (auto component : _components) - componentIds.append(QString(",%1").arg(component->getID())); - componentIds.remove(0, 1); - - double sigmaS=_ui->SigmaS->value(); - double sigmaR=_ui->SigmaR->value(); - - emit excuteAlg( componentIds, sigmaR, sigmaS); - - QFDialog::accept(); - } - - void DialogPCLBilateralFilter::selectedComponentsSlot(QList components) - { - for (MeshData::MeshSet *set : components) - { - if (_components.contains(set)) - continue; - _components.append(set); - _ui->listWidget->addItem(set->getName()); - } - } - - void DialogPCLBilateralFilter::customContextMenuRequestedSlot(const QPoint &point) - { - QListWidgetItem *curItem = _ui->listWidget->itemAt(point); - if (!curItem) - return; - - QMenu *menu = new QMenu(this); - QAction *deleteItem = new QAction(tr("delete this item")); - menu->addAction(deleteItem); - connect(menu, &QMenu::triggered, [=]() - { removeCurrentItem(curItem); }); - menu->exec(QCursor::pos()); - } - - void DialogPCLBilateralFilter::removeCurrentItem(QListWidgetItem *curItem) - { - auto meshData = MeshData::MeshData::getInstance(); - auto meshSet = meshData->getMeshSetByName(curItem->text()); - if (!meshSet) - return; - _components.removeOne(meshSet); - _ui->listWidget->removeItemWidget(curItem); - delete curItem; - } - - -} // namespace MainWidget diff --git a/src/MainWidgets/DialogPCLGPMesh.cpp b/src/MainWidgets/DialogPCLGPMesh.cpp deleted file mode 100644 index 6f90416..0000000 --- a/src/MainWidgets/DialogPCLGPMesh.cpp +++ /dev/null @@ -1,113 +0,0 @@ -/** - * @file DialogPCLGPMesh.cpp - * @brief None - * @author 陈增辉 (3045316072@qq.com) - * @version 2.5.0 - * @date 2024/4/5 - * @copyright Copyright (c) Since 2024 中科卫星应用研究院 All rights reserved. - */ - -// You may need to build the project (run Qt uic code generator) to get "ui_DialogPCLGPMesh.h" -// resolved - -#include "DialogPCLGPMesh.h" -#include "ui_DialogPCLGPMesh.h" - -#include "PythonModule/PyAgent.h" -#include "MeshData/meshSingleton.h" -#include "MeshData/meshSet.h" -#include -#include - - -//auto meshData = MeshData::MeshData::getInstance(); - -namespace MainWidget { - DialogPCLGPMesh::DialogPCLGPMesh(GUI::MainWindow *parent) - : QFDialog(parent), - _ui(new Ui::DialogPCLGPMesh), - _mw(parent), - _selectdlg(new DialogSelectComponents(parent)) - { - _ui->setupUi(this); - _ui->geoSelectPoint->setToolTip(tr("Clicked Button Selected Components")); - setWindowTitle(tr("GP Meshing")); - _ui->listWidget->setContextMenuPolicy(Qt::CustomContextMenu); - - - connect(_ui->geoSelectPoint, &QPushButton::clicked, [=]() - { _selectdlg->clearSelectItems(); _selectdlg->exec(); }); - connect(_selectdlg, SIGNAL(selectedComponentsSig(QList)), this, SLOT(selectedComponentsSlot(QList))); - connect(_ui->listWidget, SIGNAL(customContextMenuRequested(const QPoint &)), this, SLOT(customContextMenuRequestedSlot(const QPoint &))); - - } - - DialogPCLGPMesh::~DialogPCLGPMesh() - { - delete _ui; - _ui = NULL; - delete _selectdlg; - _selectdlg = NULL; - } - - void DialogPCLGPMesh::accept() - { - if (_components.size() == 0) - return; - - QString componentIds; - for (auto component : _components) - componentIds.append(QString(",%1").arg(component->getID())); - componentIds.remove(0, 1); - - double SearchRadius=_ui->SearchRadius->value(); - double Mu=_ui->Mu->value(); - int MaximumNearestNeighbors=_ui->MaximumNearestNeighbors->value(); - double MaximumSurfaceAngle=_ui->MaximumSurfaceAngle->value(); - double MaximumAngle=_ui->MaximumAngle->value(); - double MinimumAngle=_ui->MinimumAngle->value(); - - // excuteAlg( QString componentIds , double SearchRadius, double Mu,int MaximumNearestNeighbors,double MaximumSurfaceAngle,double MaximumAngle,double MinimumAngle); - emit excuteAlg( componentIds , SearchRadius, Mu, MaximumNearestNeighbors, MaximumSurfaceAngle, MaximumAngle, MinimumAngle); - - QFDialog::accept(); - } - - void DialogPCLGPMesh::selectedComponentsSlot(QList components) - { - for (MeshData::MeshSet *set : components) - { - if (_components.contains(set)) - continue; - _components.append(set); - _ui->listWidget->addItem(set->getName()); - } - } - - void DialogPCLGPMesh::customContextMenuRequestedSlot(const QPoint &point) - { - QListWidgetItem *curItem = _ui->listWidget->itemAt(point); - if (!curItem) - return; - - QMenu *menu = new QMenu(this); - QAction *deleteItem = new QAction(tr("delete this item")); - menu->addAction(deleteItem); - connect(menu, &QMenu::triggered, [=]() - { removeCurrentItem(curItem); }); - menu->exec(QCursor::pos()); - } - - void DialogPCLGPMesh::removeCurrentItem(QListWidgetItem *curItem) - { - auto meshData = MeshData::MeshData::getInstance(); - auto meshSet = meshData->getMeshSetByName(curItem->text()); - if (!meshSet) - return; - _components.removeOne(meshSet); - _ui->listWidget->removeItemWidget(curItem); - delete curItem; - } - - -} // namespace MainWidget diff --git a/src/MainWidgets/DialogPCLGuassFilter.cpp b/src/MainWidgets/DialogPCLGuassFilter.cpp deleted file mode 100644 index 424551b..0000000 --- a/src/MainWidgets/DialogPCLGuassFilter.cpp +++ /dev/null @@ -1,112 +0,0 @@ -/** - * @file DialogPCLGuassFilter.cpp - * @brief None - * @author 陈增辉 (3045316072@qq.com) - * @version 2.5.0 - * @date 2024/4/5 - * @copyright Copyright (c) Since 2024 中科卫星应用研究院 All rights reserved. - */ - -// You may need to build the project (run Qt uic code generator) to get "ui_DialogPCLGuassFilter.h" -// resolved - -#include "DialogPCLGuassFilter.h" -#include "ui_DialogPCLGuassFilter.h" - -#include "PythonModule/PyAgent.h" -#include "MeshData/meshSingleton.h" -#include "MeshData/meshSet.h" -#include -#include - - -//auto meshData = MeshData::MeshData::getInstance(); - -namespace MainWidget { - DialogPCLGuassFilter::DialogPCLGuassFilter(GUI::MainWindow *parent) - : QFDialog(parent), - _ui(new Ui::DialogPCLGuassFilter), - _mw(parent), - _selectdlg(new DialogSelectComponents(parent)) - { - _ui->setupUi(this); - _ui->geoSelectPoint->setToolTip(tr("Clicked Button Selected Components")); - setWindowTitle(tr("Guass Filter")); - _ui->listWidget->setContextMenuPolicy(Qt::CustomContextMenu); - - - connect(_ui->geoSelectPoint, &QPushButton::clicked, [=]() - { _selectdlg->clearSelectItems(); _selectdlg->exec(); }); - connect(_selectdlg, SIGNAL(selectedComponentsSig(QList)), this, SLOT(selectedComponentsSlot(QList))); - connect(_ui->listWidget, SIGNAL(customContextMenuRequested(const QPoint &)), this, SLOT(customContextMenuRequestedSlot(const QPoint &))); - - } - - DialogPCLGuassFilter::~DialogPCLGuassFilter() - { - delete _ui; - _ui = NULL; - delete _selectdlg; - _selectdlg = NULL; - } - - void DialogPCLGuassFilter::accept() - { - if (_components.size() == 0) - return; - - QString componentIds, rotate, moveLocation, scale; - for (auto component : _components) - componentIds.append(QString(",%1").arg(component->getID())); - componentIds.remove(0, 1); - - - double Sigma=_ui->Sigma->value(); - double threshold=_ui->threshold->value(); - - - emit excuteAlg( componentIds, Sigma, threshold); - - QString code = QString("MainWindow.createVTKTransform(\"%1\",\"%2\",\"%3\",\"%4\")").arg(componentIds).arg(rotate).arg(moveLocation).arg(scale); - Py::PythonAgent::getInstance()->submit(code); - QFDialog::accept(); - } - - void DialogPCLGuassFilter::selectedComponentsSlot(QList components) - { - for (MeshData::MeshSet *set : components) - { - if (_components.contains(set)) - continue; - _components.append(set); - _ui->listWidget->addItem(set->getName()); - } - } - - void DialogPCLGuassFilter::customContextMenuRequestedSlot(const QPoint &point) - { - QListWidgetItem *curItem = _ui->listWidget->itemAt(point); - if (!curItem) - return; - - QMenu *menu = new QMenu(this); - QAction *deleteItem = new QAction(tr("delete this item")); - menu->addAction(deleteItem); - connect(menu, &QMenu::triggered, [=]() - { removeCurrentItem(curItem); }); - menu->exec(QCursor::pos()); - } - - void DialogPCLGuassFilter::removeCurrentItem(QListWidgetItem *curItem) - { - auto meshData = MeshData::MeshData::getInstance(); - auto meshSet = meshData->getMeshSetByName(curItem->text()); - if (!meshSet) - return; - _components.removeOne(meshSet); - _ui->listWidget->removeItemWidget(curItem); - delete curItem; - } - - -} // namespace MainWidget diff --git a/src/MainWidgets/DialogPCLRadiusOutlierRemoval.cpp b/src/MainWidgets/DialogPCLRadiusOutlierRemoval.cpp deleted file mode 100644 index 95f6207..0000000 --- a/src/MainWidgets/DialogPCLRadiusOutlierRemoval.cpp +++ /dev/null @@ -1,112 +0,0 @@ -/** - * @file DialogPCLStatisticalRemoveFilter.cpp - * @brief None - * @author 陈增辉 (3045316072@qq.com) - * @version 2.5.0 - * @date 2024/4/5 - * @copyright Copyright (c) Since 2024 中科卫星应用研究院 All rights reserved. - */ - -// You may need to build the project (run Qt uic code generator) to get -// "ui_DialogPCLStatisticalRemoveFilter.h" resolved - -#include "DialogPCLRadiusOutlierRemoval.h" -#include "ui_DialogPCLRadiusOutlierRemoval.h" - -#include "PythonModule/PyAgent.h" -#include "MeshData/meshSingleton.h" -#include "MeshData/meshSet.h" -#include -#include - - - - - -namespace MainWidget { - DialogPCLRadiusOutlierRemoval::DialogPCLRadiusOutlierRemoval(GUI::MainWindow *parent) - : QFDialog(parent), - _ui(new Ui::DialogPCLRadiusOutlierRemoval), - _mw(parent), - _selectdlg(new DialogSelectComponents(parent)) - { - _ui->setupUi(this); - _ui->geoSelectPoint->setToolTip(tr("Clicked Button Selected Components")); - setWindowTitle(tr("Radius Outlier Removal")); - _ui->listWidget->setContextMenuPolicy(Qt::CustomContextMenu); - - - connect(_ui->geoSelectPoint, &QPushButton::clicked, [=]() - { _selectdlg->clearSelectItems(); _selectdlg->exec(); }); - connect(_selectdlg, SIGNAL(selectedComponentsSig(QList)), this, SLOT(selectedComponentsSlot(QList))); - connect(_ui->listWidget, SIGNAL(customContextMenuRequested(const QPoint &)), this, SLOT(customContextMenuRequestedSlot(const QPoint &))); - - } - - DialogPCLRadiusOutlierRemoval::~DialogPCLRadiusOutlierRemoval() - { - delete _ui; - _ui = NULL; - delete _selectdlg; - _selectdlg = NULL; - } - - void DialogPCLRadiusOutlierRemoval::accept() - { - if (_components.size() == 0) - return; - - QString componentIds, rotate, moveLocation, scale; - for (auto component : _components) - componentIds.append(QString(",%1").arg(component->getID())); - componentIds.remove(0, 1); - - - - double RadiusSearch=_ui->RadiusSearch->value(); - double MinNeighborsInRadius=_ui->MinNeighborsInRadius->value(); - - emit excuteAlg(componentIds,RadiusSearch, MinNeighborsInRadius); - - - QFDialog::accept(); - } - - void DialogPCLRadiusOutlierRemoval::selectedComponentsSlot(QList components) - { - for (MeshData::MeshSet *set : components) - { - if (_components.contains(set)) - continue; - _components.append(set); - _ui->listWidget->addItem(set->getName()); - } - } - - void DialogPCLRadiusOutlierRemoval::customContextMenuRequestedSlot(const QPoint &point) - { - QListWidgetItem *curItem = _ui->listWidget->itemAt(point); - if (!curItem) - return; - - QMenu *menu = new QMenu(this); - QAction *deleteItem = new QAction(tr("delete this item")); - menu->addAction(deleteItem); - connect(menu, &QMenu::triggered, [=]() - { removeCurrentItem(curItem); }); - menu->exec(QCursor::pos()); - } - - void DialogPCLRadiusOutlierRemoval::removeCurrentItem(QListWidgetItem *curItem) - { - auto meshData = MeshData::MeshData::getInstance(); - auto meshSet = meshData->getMeshSetByName(curItem->text()); - if (!meshSet) - return; - _components.removeOne(meshSet); - _ui->listWidget->removeItemWidget(curItem); - delete curItem; - } - - -} // namespace MainWidget diff --git a/src/MainWidgets/DialogPCLStatisticalRemoveFilter.cpp b/src/MainWidgets/DialogPCLStatisticalRemoveFilter.cpp deleted file mode 100644 index 3f70131..0000000 --- a/src/MainWidgets/DialogPCLStatisticalRemoveFilter.cpp +++ /dev/null @@ -1,113 +0,0 @@ -/** - * @file DialogPCLStatisticalRemoveFilter.cpp - * @brief None - * @author 陈增辉 (3045316072@qq.com) - * @version 2.5.0 - * @date 2024/4/5 - * @copyright Copyright (c) Since 2024 中科卫星应用研究院 All rights reserved. - */ - -// You may need to build the project (run Qt uic code generator) to get -// "ui_DialogPCLStatisticalRemoveFilter.h" resolved - -#include "DialogPCLStatisticalRemoveFilter.h" -#include "ui_DialogPCLStatisticalRemoveFilter.h" - -#include "PythonModule/PyAgent.h" -#include "MeshData/meshSingleton.h" -#include "MeshData/meshSet.h" -#include -#include - - -//auto meshData = MeshData::MeshData::getInstance(); - - -namespace MainWidget { - DialogPCLStatisticalRemoveFilter::DialogPCLStatisticalRemoveFilter(GUI::MainWindow *parent) - : QFDialog(parent), - _ui(new Ui::DialogPCLStatisticalRemoveFilter), - _mw(parent), - _selectdlg(new DialogSelectComponents(parent)) - { - _ui->setupUi(this); - _ui->geoSelectPoint->setToolTip(tr("Clicked Button Selected Components")); - setWindowTitle(tr("Statistical Remove Filter")); - _ui->listWidget->setContextMenuPolicy(Qt::CustomContextMenu); - - - connect(_ui->geoSelectPoint, &QPushButton::clicked, [=]() - { _selectdlg->clearSelectItems(); _selectdlg->exec(); }); - connect(_selectdlg, SIGNAL(selectedComponentsSig(QList)), this, SLOT(selectedComponentsSlot(QList))); - connect(_ui->listWidget, SIGNAL(customContextMenuRequested(const QPoint &)), this, SLOT(customContextMenuRequestedSlot(const QPoint &))); - } - - DialogPCLStatisticalRemoveFilter::~DialogPCLStatisticalRemoveFilter() - { - delete _ui; - _ui = NULL; - delete _selectdlg; - _selectdlg = NULL; - } - - - - - void DialogPCLStatisticalRemoveFilter::accept() - { - if (_components.size() == 0) - return; - - QString componentIds, rotate, moveLocation, scale; - for (auto component : _components) - componentIds.append(QString(",%1").arg(component->getID())); - componentIds.remove(0, 1); - - double MeanK=_ui->MeanK->value(); - double stddev=_ui->Stddev->value(); - - emit excuteAlg(componentIds,MeanK,stddev); - - QFDialog::accept(); - } - - void DialogPCLStatisticalRemoveFilter::selectedComponentsSlot(QList components) - { - for (MeshData::MeshSet *set : components) - { - if (_components.contains(set)) - continue; - _components.append(set); - _ui->listWidget->addItem(set->getName()); - } - } - - void DialogPCLStatisticalRemoveFilter::customContextMenuRequestedSlot(const QPoint &point) - { - QListWidgetItem *curItem = _ui->listWidget->itemAt(point); - if (!curItem) - return; - - QMenu *menu = new QMenu(this); - QAction *deleteItem = new QAction(tr("delete this item")); - menu->addAction(deleteItem); - connect(menu, &QMenu::triggered, [=]() - { removeCurrentItem(curItem); }); - menu->exec(QCursor::pos()); - } - - void DialogPCLStatisticalRemoveFilter::removeCurrentItem(QListWidgetItem *curItem) - { - auto meshData = MeshData::MeshData::getInstance(); - auto meshSet = meshData->getMeshSetByName(curItem->text()); - if (!meshSet) - return; - _components.removeOne(meshSet); - _ui->listWidget->removeItemWidget(curItem); - delete curItem; - } - - - - -} // namespace MainWidget diff --git a/src/MainWidgets/GeometryWidget.cpp b/src/MainWidgets/GeometryWidget.cpp index 4ba07b7..faf536d 100644 --- a/src/MainWidgets/GeometryWidget.cpp +++ b/src/MainWidgets/GeometryWidget.cpp @@ -49,6 +49,13 @@ namespace MainWidget this->addTopLevelItem(_gcroot); _gcroot->setExpanded(true); +// _antroot = new QTreeWidgetItem(this, TreeItemType::GeoComponentRoot); +// _antroot->setText(0, tr("antModel")); +// _antroot->setIcon(0, QIcon(":/QUI/icon/geometry.png")); +// this->addTopLevelItem(_antroot); +// _antroot->setExpanded(true); + + connect(_mainWindow, SIGNAL(updateGeometryTreeSig()), this, SLOT(updateTree())); // connect(_mainWindow, SIGNAL(updateGeometryTreeSig()), this, SLOT(updateTree())); connect(this, SIGNAL(itemClicked(QTreeWidgetItem *, int)), this, SLOT(singleClicked(QTreeWidgetItem *, int))); diff --git a/src/MainWidgets/GeometryWidget.h b/src/MainWidgets/GeometryWidget.h index 0498632..caa6bb5 100644 --- a/src/MainWidgets/GeometryWidget.h +++ b/src/MainWidgets/GeometryWidget.h @@ -107,6 +107,7 @@ namespace MainWidget QTreeWidgetItem* _root{}; QTreeWidgetItem* _datumroot{}; QTreeWidgetItem* _gcroot{}; + QTreeWidgetItem* _antroot{}; Geometry::GeometryData* _data{}; QTreeWidgetItem* _currentItem{}; diff --git a/src/MainWindow/CMakeLists.txt b/src/MainWindow/CMakeLists.txt index 8f66fe2..2d344f5 100644 --- a/src/MainWindow/CMakeLists.txt +++ b/src/MainWindow/CMakeLists.txt @@ -2,6 +2,9 @@ # 头文件搜索路径 #----------------------------------------------------------------------------- include_directories(${CMAKE_CURRENT_SOURCE_DIR}/..) +# FindOpenCASCADE +include_directories(${OpenCASCADE_INCLUDE_DIRS}) +message("OpenCASCADE_INCLUDE_DIRS ${OpenCASCADE_INCLUDE_DIRS}") #----------------------------------------------------------------------------- # 自动添加include目录 @@ -38,7 +41,7 @@ add_library(MainWindow #----------------------------------------------------------------------------- target_compile_definitions(MainWindow PRIVATE "MAINWINDOW_API") -list(APPEND _depend_library Common LAMPTool WBCLFZSystemModule PythonModule SARibbonBar Settings DataProperty MeshData Material Geometry ConfigOptions SelfDefObject ModelData ModuleBase PluginManager GmshModule PostInterface PostRenderData PostWidgets ProjectTree GeometryCommand GeometryWidgets IO SolverControl MainWidgets UserGuidence Common) +list(APPEND _depend_library Common PythonModule SARibbonBar Settings DataProperty MeshData Material Geometry ConfigOptions SelfDefObject ModelData ModuleBase PluginManager GmshModule PostInterface PostRenderData PostWidgets ProjectTree GeometryCommand GeometryWidgets IO SolverControl MainWidgets UserGuidence Common) if(_WIN_) list(APPEND _depend_library XGenerateReport) endif() @@ -47,6 +50,13 @@ list(APPEND _runtimes_libraries Qt5::Core Qt5::Gui Qt5::Widgets VTK::CommonColor VTK::CommonComputationalGeometry VTK::CommonCore VTK::CommonDataModel VTK::CommonExecutionModel VTK::CommonMath VTK::CommonMisc VTK::CommonSystem VTK::CommonTransforms VTK::FiltersCore VTK::FiltersExtraction VTK::FiltersGeneral VTK::FiltersGeometry VTK::FiltersSources VTK::FiltersStatistics VTK::IOCore VTK::IOLegacy VTK::IOXML VTK::IOXMLParser VTK::ImagingCore VTK::ImagingFourier VTK::ImagingMath VTK::InteractionStyle VTK::ParallelCore VTK::ParallelDIY VTK::RenderingCore VTK::RenderingFreeType VTK::RenderingOpenGL2 VTK::RenderingUI VTK::RenderingVolume VTK::RenderingVolumeOpenGL2 VTK::doubleconversion VTK::expat VTK::freetype VTK::glew VTK::lz4 VTK::lzma VTK::sys VTK::zlib ) +list(APPEND _runtimes_libraries + OpenCASCADE::TKOffset OpenCASCADE::TKSTL OpenCASCADE::TKOpenGl OpenCASCADE::Freetype OpenCASCADE::TKBO OpenCASCADE::TKBRep OpenCASCADE::Freetype OpenCASCADE::TKBO OpenCASCADE::TKBRep OpenCASCADE::TKFillet OpenCASCADE::TKBool OpenCASCADE::TKCAF OpenCASCADE::TKCDF OpenCASCADE::TKG2d OpenCASCADE::TKG3d OpenCASCADE::TKGeomAlgo OpenCASCADE::TKGeomBase OpenCASCADE::TKHLR OpenCASCADE::TKIGES OpenCASCADE::TKLCAF OpenCASCADE::TKMath OpenCASCADE::TKMesh OpenCASCADE::TKPrim OpenCASCADE::TKSTEP OpenCASCADE::TKSTEP209 OpenCASCADE::TKSTEPAttr OpenCASCADE::TKSTEPBase OpenCASCADE::TKService OpenCASCADE::TKShHealing OpenCASCADE::TKTopAlgo OpenCASCADE::TKV3d OpenCASCADE::TKVCAF OpenCASCADE::TKXCAF OpenCASCADE::TKXDEIGES OpenCASCADE::TKXSBase OpenCASCADE::TKernel Qt5::Widgets Qt5::Xml + VTK::CommonColor VTK::CommonComputationalGeometry VTK::CommonCore VTK::CommonDataModel VTK::CommonExecutionModel VTK::CommonMath VTK::CommonMisc VTK::CommonSystem VTK::CommonTransforms VTK::FiltersCore VTK::FiltersExtraction VTK::FiltersGeneral VTK::FiltersGeometry VTK::FiltersSources VTK::FiltersStatistics VTK::IOCore VTK::IOLegacy VTK::IOXML VTK::IOXMLParser VTK::ImagingCore VTK::ImagingFourier VTK::ImagingMath VTK::InteractionStyle VTK::ParallelCore VTK::ParallelDIY VTK::RenderingCore VTK::RenderingFreeType VTK::RenderingOpenGL2 VTK::RenderingUI VTK::RenderingVolume VTK::RenderingVolumeOpenGL2 VTK::doubleconversion VTK::expat VTK::freetype VTK::glew VTK::lz4 VTK::lzma VTK::sys VTK::zlib VTK::IOGeometry +) + + + target_include_directories(MainWindow PRIVATE ${Qwt_INCLUDE_DIRS}) #----------------------------------------------------------------------------- diff --git a/src/MainWindow/CustomizerHelper.cpp b/src/MainWindow/CustomizerHelper.cpp index cc49707..110022c 100644 --- a/src/MainWindow/CustomizerHelper.cpp +++ b/src/MainWindow/CustomizerHelper.cpp @@ -39,6 +39,7 @@ namespace GUI { _menuList.append(_ui->menuView); _menuList.append(_ui->menuGeometry); _menuList.append(_ui->menuMesher); + _menuList.append(_ui->menuPointCloud); _menuList.append(_ui->menuSolve); _menuList.append(_ui->menuWindows); _menuList.append(_ui->menuSettings); @@ -186,8 +187,6 @@ namespace GUI { this->enableMeshCheck(ok); - - _ui->SetToolBar->setVisible(ok || meshOption->isComponentEnabled()); ok = meshOption->isFilterMeshEnabled(); _ui->actionFilterMesh->setVisible(ok); diff --git a/src/MainWindow/MainWindow.cpp b/src/MainWindow/MainWindow.cpp index 7a5df31..e818873 100644 --- a/src/MainWindow/MainWindow.cpp +++ b/src/MainWindow/MainWindow.cpp @@ -86,13 +86,12 @@ #include "PostInterface/AnimationToolBar.h" #include "PostInterface/RenderDirector.h" // pcl -#include "MainWidgets/DialogPCLBilateralFilter.h" -#include "MainWidgets/DialogPCLGPMesh.h" -#include "MainWidgets/DialogPCLGuassFilter.h" -#include "MainWidgets/DialogPCLRadiusOutlierRemoval.h" -#include "MainWidgets/DialogPCLStatisticalRemoveFilter.h" +#include "PluginWBFZExchangePlugin/DialogPCLBilateralFilter.h" +#include "PluginWBFZExchangePlugin/DialogPCLGPMesh.h" +#include "PluginWBFZExchangePlugin/DialogPCLGuassFilter.h" +#include "PluginWBFZExchangePlugin/DialogPCLRadiusOutlierRemoval.h" +#include "PluginWBFZExchangePlugin/DialogPCLStatisticalRemoveFilter.h" #include "IO/vtkDataRelated.h" -#include "LAMPTool/BaseTool.h" // logger #include "Common/DebugLogger.h" @@ -255,7 +254,21 @@ namespace GUI { connect(_ui->actionVTKTranslation, SIGNAL(triggered()), this, SLOT(on_VTKTranslation())); // 点云 + connect(_ui->actionPCLStatisticalRemoveFilter,SIGNAL(triggered()),this,SLOT(on_pclStatisticalRemoveFilter())); + connect(_ui->actionPCLRadiusOutlierRemoval,SIGNAL(triggered()),this,SLOT(on_pclRadiusOutlierRemoval())); + connect(_ui->actionPCLGuassFilter,SIGNAL(triggered()),this,SLOT(on_pclGuassFilter())); + connect(_ui->actionPCLBilateralFilter,SIGNAL(triggered()),this,SLOT(on_pclBilateralFilter())); + connect(_ui->actionPCLGPMesh,SIGNAL(triggered()),this,SLOT(on_pclGPMesh())); + // feko 参数 + connect(_ui->actionImageSetting,SIGNAL(triggered()),this,SLOT(on_actionImageSetting())); + connect(_ui->actionFEKO2csv,SIGNAL(triggered()),this,SLOT(on_actionFEKO2csv())); + connect(_ui->actionScatterExport,SIGNAL(triggered()),this,SLOT(on_actionScatterExport())); + connect(_ui->actionFEKOImage,SIGNAL(triggered()),this,SLOT(on_actionFEKOImage())); + connect(_ui->actionantScatteringFEKOSetting,SIGNAL(triggered()),this,SLOT(on_actionantScatteringFEKOSetting())); + + // 属性表 + connect(_ui->actionAttriutionDBShow,SIGNAL(triggered()),this,SLOT(on_AttriutionDBShow())); // 设置视角 @@ -732,6 +745,13 @@ namespace GUI { void MainWindow::on_exportMesh() { + + + if(MeshData::MeshData::getInstance()->getKernalCount() == 0) { + QMessageBox::warning(this, tr("Warning"), tr("No one has any grid!")); + return; + } + QStringList suffixlist = IO::IOConfigure::getMeshExporters(); // QStringList list = IO::IOConfigure::getMeshImporters(); if(suffixlist.isEmpty()) { @@ -739,11 +759,6 @@ namespace GUI { return; } - if(MeshData::MeshData::getInstance()->getKernalCount() == 0) { - QMessageBox::warning(this, tr("Warning"), tr("No one has any grid!")); - return; - } - QStringList meshsuffix = ConfigOption::ConfigOption::getInstance()->getMeshConfig()->getExportSuffix().split( ";"); @@ -1479,73 +1494,61 @@ namespace GUI { { return m_ribbonActionMgr; } - - - void MainWindow::on_pclStatisticalRemoveFilter() { - MainWidget::DialogPCLStatisticalRemoveFilter dlg(this); - connect(&dlg, SIGNAL(excuteAlg(QString ,double,double )),this,SLOT(PCLStatisticalRemoveFilterAlg(QString ,double ,double ))); - dlg.exec(); - - } - void MainWindow::on_pclRadiusOutlierRemoval() { - MainWidget::DialogPCLRadiusOutlierRemoval dlg(this); - connect(&dlg, SIGNAL(excuteAlg(QString ,double ,double )),this,SLOT(PCLStatisticalRemoveFilterAlg(QString ,double ,double ))); - dlg.exec(); - } - void MainWindow::on_pclGuassFilter() { - MainWidget::DialogPCLGuassFilter dlg(this); - connect(&dlg, SIGNAL(excuteAlg(QString ,double ,double )),this,SLOT(PCLStatisticalRemoveFilterAlg(QString ,double ,double ))); - dlg.exec(); - - } - void MainWindow::on_pclBilateralFilter() { - MainWidget::DialogPCLBilateralFilter dlg(this); - connect(&dlg, SIGNAL(excuteAlg(QString ,double ,double )),this,SLOT(PCLStatisticalRemoveFilterAlg(QString ,double ,double ))); - dlg.exec(); - - } - void MainWindow::on_pclGPMesh() { - MainWidget::DialogPCLGPMesh dlg(this); - connect(&dlg, SIGNAL(excuteAlg( QString , double , double ,int ,double ,double ,double )),this,SLOT(PCLStatisticalRemoveFilterAlg( QString , double , double ,int ,double ,double ,double ))); - dlg.exec(); - - } - - void MainWindow::PCLStatisticalRemoveFilterAlg(QString componentIds, double MeanK,double StddevThresh) { - - - } - void MainWindow::PCLRadiusOutlierRemovalFilterAlg(QString componentIds, double RadiusSearch, - double MinNeighborsInRadius) + // 点云 + void MainWindow::on_pclStatisticalRemoveFilter() { - emit this->printMessage(Common::Message::Normal,"PCLRadiusOutlierRemovalFilterAlg"); - - - - - - + DebugInfo("on_pclStatisticalRemoveFilter\n"); + emit this->on_pclStatisticalRemoveFilter(this); } - void MainWindow::PCLGuassFilterAlg(QString componentIds, double sigma, double threshold) { - emit this->printMessage(Common::Message::Normal,"PCLGuassFilterAlg"); - - - } - void MainWindow::PCLGPMeshAlg(QString componentIds, double SearchRadius, double Mu, - int MaximumNearestNeighbors, double MaximumSurfaceAngle, - double MaximumAngle, double MinimumAngle) + void MainWindow::on_pclRadiusOutlierRemoval() { - emit this->printMessage(Common::Message::Normal,"PCLGPMeshAlg"); - - - - - - + DebugInfo("on_pclRadiusOutlierRemoval\n"); + emit this->on_pclRadiusOutlierRemoval(this); + } + void MainWindow::on_pclGuassFilter() + { + DebugInfo("on_pclGuassFilter\n"); + emit this->on_pclGuassFilter(this); + } + void MainWindow::on_pclBilateralFilter() + { + DebugInfo("on_pclBilateralFilter\n"); + emit this->on_pclBilateralFilter(this); + } + void MainWindow::on_pclGPMesh() + { + DebugInfo("on_pclGPMesh\n"); + emit this->on_pclGPMesh(this); } - void MainWindow::PCLBilateralFilterAlg(QString componentIds, double sigmaR, double sigmaS) { - emit this->printMessage(Common::Message::Normal,"PCLBilateralFilterAlg"); + // FEKO + void MainWindow::on_actionImageSetting() { + DebugInfo("on_actionImageSetting\n"); + emit this->on_actionImageSetting(this); + } + + void MainWindow::on_actionFEKO2csv() { + DebugInfo("on_actionFEKO2csv\n"); + emit this->on_actionFEKO2csv(this); + } + + void MainWindow::on_actionScatterExport() { + DebugInfo("on_actionScatterExport\n"); + emit this->on_actionScatterExport(this); + } + + void MainWindow::on_actionFEKOImage() { + DebugInfo("on_actionFEKOImage\n"); + emit this->on_actionFEKOImage(this); + } + + void MainWindow::on_actionantScatteringFEKOSetting() { + DebugInfo("on_actionantScatteringFEKOSetting\n"); + emit this->on_actionantScatteringFEKOSetting(this); + } + void MainWindow::on_AttriutionDBShow() { + DebugInfo("on_AttriutionDBShow\n"); + emit this->on_actionAttriutionDBShow(this); } diff --git a/src/MainWindow/MainWindow.h b/src/MainWindow/MainWindow.h index ffdce0c..5724abb 100644 --- a/src/MainWindow/MainWindow.h +++ b/src/MainWindow/MainWindow.h @@ -299,6 +299,29 @@ namespace GUI { // 打开二维曲线绘制信号 void openPlot(); + + // 点云处理信号 + // 统计滤波 + void on_pclStatisticalRemoveFilter(GUI::MainWindow* m); + // 半径滤波 + void on_pclRadiusOutlierRemoval(GUI::MainWindow* m); + // 高斯滤波 + void on_pclGuassFilter(GUI::MainWindow* m); + // 双边滤波 + void on_pclBilateralFilter(GUI::MainWindow* m); + // GP网格重建 + void on_pclGPMesh(GUI::MainWindow* m); + + // FEKO仿真参数的 + void on_actionImageSetting(GUI::MainWindow* m); + void on_actionFEKO2csv(GUI::MainWindow* m); + void on_actionScatterExport(GUI::MainWindow* m); + void on_actionFEKOImage(GUI::MainWindow* m); + void on_actionantScatteringFEKOSetting(GUI::MainWindow* m); + + // Tool Show + void on_actionAttriutionDBShow(GUI::MainWindow* m); + public slots: /*状态栏显示信息 */ void setStatusBarInfo(QString); @@ -347,8 +370,8 @@ namespace GUI { void on_pclBilateralFilter(); // GP网格重建 void on_pclGPMesh(); - - + // feko 设置 + void on_AttriutionDBShow(); private slots: /*关闭主窗口 */ @@ -411,17 +434,17 @@ namespace GUI { // 创建VTK空间变换窗口 void on_VTKTranslation(); - // StatisticalRemoveFilter - void PCLStatisticalRemoveFilterAlg(QString componentIds,double MeanK,double stddev); - // PCLRadiusOutlierRemoval - void PCLRadiusOutlierRemovalFilterAlg(QString componentIds,double RadiusSearch,double MinNeighborsInRadius); - // PCLGuassFilter - void PCLGuassFilterAlg(QString componentIds,double sigma,double threshold); - // PCLGPMesh - void PCLGPMeshAlg( QString componentIds , double SearchRadius, double Mu,int MaximumNearestNeighbors,double MaximumSurfaceAngle,double MaximumAngle,double MinimumAngle); - // PCLBilateralFilter - void PCLBilateralFilterAlg(QString componentIds,double sigmaR,double sigmaS); - + // FEKO仿真参数的 + // FEKO 成像模式参数设置 + void on_actionImageSetting(); + // FEKO 仿真结果抽取 + void on_actionFEKO2csv(); + // FEKO 仿真结果导出 + void on_actionScatterExport(); + // 成像 + void on_actionFEKOImage(); + // 散射界面设置 + void on_actionantScatteringFEKOSetting(); private: diff --git a/src/MainWindow/MainWindow.ui b/src/MainWindow/MainWindow.ui index 701eaae..a2b201a 100644 --- a/src/MainWindow/MainWindow.ui +++ b/src/MainWindow/MainWindow.ui @@ -268,7 +268,7 @@ 0 0 1678 - 26 + 22 @@ -397,6 +397,7 @@ + @@ -528,11 +529,23 @@ + + + SimulationSetting + + + + + + + + + @@ -1950,6 +1963,36 @@ LoadFile + + + Image FEKO Simulation Setting + + + + + Feko Result Image + + + + + LAMP Scattering Ant Setting + + + + + FEKO Result Import + + + + + FEKO Scatter Data Export + + + + + Attriution DB Show + + diff --git a/src/PluginMotorBike/PluginOpenFoamExtend.h b/src/PluginMotorBike/PluginOpenFoamExtend.h index b7b18d0..cc222f4 100644 --- a/src/PluginMotorBike/PluginOpenFoamExtend.h +++ b/src/PluginMotorBike/PluginOpenFoamExtend.h @@ -46,9 +46,6 @@ namespace Plugins signals: void treePrintMessageToMessageWindowSignal(ModuleBase::Message message); }; - - - } diff --git a/src/WBCLFZSystemModule/.command_history.lst b/src/PluginWBFZExchangePlugin/.command_history.lst similarity index 100% rename from src/WBCLFZSystemModule/.command_history.lst rename to src/PluginWBFZExchangePlugin/.command_history.lst diff --git a/src/WBCLFZSystemModule/AllHead.cpp b/src/PluginWBFZExchangePlugin/AllHead.cpp similarity index 51% rename from src/WBCLFZSystemModule/AllHead.cpp rename to src/PluginWBFZExchangePlugin/AllHead.cpp index 2157fc9..79a8cea 100644 --- a/src/WBCLFZSystemModule/AllHead.cpp +++ b/src/PluginWBFZExchangePlugin/AllHead.cpp @@ -1,9 +1,9 @@ #include "AllHead.h" -WBCLFZSYSTEMMODULEAPI QSettings* getQSetting() + QSettings* getQSetting() { - QString fileName = QCoreApplication::applicationDirPath() + "/Config.ini"; + QString fileName = QCoreApplication::applicationDirPath() + "/WBCLFZConfig.ini"; QSettings* setting = new QSettings(fileName, QSettings::IniFormat); setting->setIniCodec(QTextCodec::codecForName("UTF-8")); @@ -19,7 +19,7 @@ WBCLFZSYSTEMMODULEAPI QSettings* getQSetting() return setting; } -QString WBCLFZSYSTEMMODULEAPI getOpenFilePath(QWidget* parent, const QString& caption, const QString& filter) +QString getOpenFilePath(QWidget* parent, const QString& caption, const QString& filter) { QSettings* setting = getQSetting(); QString curpath = u8"."; @@ -38,7 +38,7 @@ QString WBCLFZSYSTEMMODULEAPI getOpenFilePath(QWidget* parent, const QString& ca return filepath; } -QString WBCLFZSYSTEMMODULEAPI getSaveFilePath(QWidget* parent, const QString& caption, const QString& filter) +QString getSaveFilePath(QWidget* parent, const QString& caption, const QString& filter) { QSettings* setting = getQSetting(); QString curpath = u8"."; @@ -56,3 +56,34 @@ QString WBCLFZSYSTEMMODULEAPI getSaveFilePath(QWidget* parent, const QString& ca } return filepath; } +bool AddOrRemoveScatterAntModel(GUI::MainWindow* _mainWindows, Geometry::GeometryData* _geoData, + Geometry::GeometrySet* set, bool flag) +{ + if(_mainWindows==nullptr || _geoData==nullptr|| set== nullptr){ + return false; + }else{} + MainWidget::PreWindow* pre = _mainWindows->getSubWindowManager()->getPreWindow(); + + if(flag){ + Geometry::GeometryData::getInstance()->appendGeometrySet(set); + emit _mainWindows->updateActionStatesSig(); + emit pre->showGeoSet(set, true); + emit _mainWindows->updateGeometryTreeSig(); + return true; + } + else { + int id=Geometry::GeometryData::getInstance()->getIndexByGeoometrySet(set); + //auto geo = Geometry::GeometryData::getInstance()->getGeometrySetByID(set); + Geometry::GeometryData::getInstance()->removeGeometrySet(id); + emit _mainWindows->updateActionStatesSig(); + emit pre->showGeoSet(set, false); + if(pre != nullptr) + emit pre->removeGemoActors(set); + emit _mainWindows->updateGeometryTreeSig(); + emit _mainWindows->updateActionStatesSig(); + emit _mainWindows->updateGraphOptionsSig(); + emit _mainWindows->updateGeometryTreeSig(); + return true; + } + return false; +} diff --git a/src/WBCLFZSystemModule/AllHead.h b/src/PluginWBFZExchangePlugin/AllHead.h similarity index 89% rename from src/WBCLFZSystemModule/AllHead.h rename to src/PluginWBFZExchangePlugin/AllHead.h index df349c7..7a602de 100644 --- a/src/WBCLFZSystemModule/AllHead.h +++ b/src/PluginWBFZExchangePlugin/AllHead.h @@ -2,8 +2,13 @@ #ifndef ALLHEAD_H #define ALLHEAD_H -#include "WBCLFZSystemModuleAPI.h" - +#include "WBFZExchangePluginAPI.h" +#include "Common/DebugLogger.h" +#include "Geometry/geometryData.h" +#include "Geometry/geometrySet.h" +#include "MainWindow/MainWindow.h" +#include "MainWindow/SubWindowManager.h" +#include "MainWidgets/preWindow.h" //================================== // 线性计算库优化 //=============================== @@ -14,8 +19,8 @@ // 内部库 LAMPTool //===================================================== -#include "../LAMPTool/referenceHeader.h" -#include "BaseConstVariable.h" +#include "referenceHeader.h" +//#include "BaseConstVariable.h" // Basetoollib #include "BaseConstVariable.h" #include "BaseTool.h" @@ -28,14 +33,14 @@ //#include "BackScatterModel.h" //#include "SARBaseTool.h" //#include "SARCalibration.h" -#include "LAMPTool/SARImageBase.h" +#include "SARImageBase.h" // SARImage -#include "LAMPTool/FEKOBaseToolClass.h" -#include "LAMPTool/FEKONearBPBasic.h" -#include "LAMPTool/FEKOSimulationSARClass.h" -#include "LAMPTool/OCCTBase.h" -#include "LAMPTool/FEKOFarFieldFileClass.h" +#include "FEKOBaseToolClass.h" +#include "FEKONearBPBasic.h" +#include "FEKOSimulationSARClass.h" +#include "OCCTBase.h" +#include "FEKOFarFieldFileClass.h" //===================================================== // 内部库 SharedModuleLib @@ -304,15 +309,21 @@ // Visualization Toolkit (VTK) #include -#include "inputdialog.h" +#include "PointCloudProcess/inputdialog.h" #include "BasePCL.h" #include "ToolDialog.h" #include "PointManagerClass.h" -#include "WBCLFZSystemModuleAPI.h" - +#include "WBFZExchangePluginAPI.h" +enum TaskStatusEnum { + wait, + success, + fail, + excuting, + finish, +}; class QObject; @@ -342,11 +353,11 @@ class QObject; //======================================================= // 常用基础函数 //======================================================= ] -WBCLFZSYSTEMMODULEAPI QSettings* getQSetting(); + QSettings* getQSetting(); -QString WBCLFZSYSTEMMODULEAPI getOpenFilePath(QWidget* parent = nullptr, const QString& caption = QString(), const QString& filter = QString()); +QString getOpenFilePath(QWidget* parent = nullptr, const QString& caption = QString(), const QString& filter = QString()); -QString WBCLFZSYSTEMMODULEAPI getSaveFilePath(QWidget* parent = nullptr, const QString& caption = QString(), const QString& filter = QString()); +QString getSaveFilePath(QWidget* parent = nullptr, const QString& caption = QString(), const QString& filter = QString()); /* @@ -356,11 +367,10 @@ QString WBCLFZSYSTEMMODULEAPI getSaveFilePath(QWidget* parent = nullptr, const Q ".", QString::fromUtf8(u8"STL Files (*.stl);;STL Files (*.stla);;step Files (*.stp);;step Files (*.step);;IGES Files (*.iges);;IGES Files (*.igs)")); - +GUI::MainWindow* _mainWindows; +Geometry::GeometryData * _geoData; */ - - - +bool AddOrRemoveScatterAntModel(GUI::MainWindow* _mainWindows,Geometry::GeometryData * _geoData,Geometry::GeometrySet * set,bool flag); #endif // ! ALLHEAD_H \ No newline at end of file diff --git a/src/LAMPTool/BackScatterModel.cpp b/src/PluginWBFZExchangePlugin/BackScatterModel.cpp similarity index 61% rename from src/LAMPTool/BackScatterModel.cpp rename to src/PluginWBFZExchangePlugin/BackScatterModel.cpp index deab8bf..2b14a8c 100644 --- a/src/LAMPTool/BackScatterModel.cpp +++ b/src/PluginWBFZExchangePlugin/BackScatterModel.cpp @@ -1,15 +1,15 @@ -#include "LAMPToolAPI.h" +#include "WBFZExchangePluginAPI.h" #include "BackScatterModel.h" #include #include -double LAMPTOOLAPI MuhlemanSimulationBackScatter(double incidentAngle) +double MuhlemanSimulationBackScatter(double incidentAngle) { return 0.0133*cos(incidentAngle)/pow(sin(incidentAngle)+0.1*cos(incidentAngle), 3); } -Eigen::MatrixXd LAMPTOOLAPI MuhlemanSimulationBackScatter(Eigen::MatrixXd incidentAngle) +Eigen::MatrixXd MuhlemanSimulationBackScatter(Eigen::MatrixXd incidentAngle) { return 0.0133 * (incidentAngle.array().cos()) / ((incidentAngle.array().sin()) + cos(incidentAngle.array().cos()*0.1).pow(3)); } diff --git a/src/PluginWBFZExchangePlugin/BackScatterModel.h b/src/PluginWBFZExchangePlugin/BackScatterModel.h new file mode 100644 index 0000000..7d7d227 --- /dev/null +++ b/src/PluginWBFZExchangePlugin/BackScatterModel.h @@ -0,0 +1,20 @@ +#pragma once +#ifndef _BACKSCATTERMODEL_H_ +#define _BACKSCATTERMODEL_H_ + + +#include "WBFZExchangePluginAPI.h" +#include +#include +#include "WBFZExchangePluginAPI.h" + +double MuhlemanSimulationBackScatter(double incidentAngle); +Eigen::MatrixXd MuhlemanSimulationBackScatter(Eigen::MatrixXd incidentAngle); + + +#endif + + + + + diff --git a/src/LAMPTool/BaseConstVariable.h b/src/PluginWBFZExchangePlugin/BaseConstVariable.h similarity index 96% rename from src/LAMPTool/BaseConstVariable.h rename to src/PluginWBFZExchangePlugin/BaseConstVariable.h index 1aa9b4e..d50f5f5 100644 --- a/src/LAMPTool/BaseConstVariable.h +++ b/src/PluginWBFZExchangePlugin/BaseConstVariable.h @@ -2,7 +2,7 @@ #ifndef BASECONSTVARIABLE_H #define BASECONSTVARIABLE_H -#include "LAMPToolAPI.h" +#include "WBFZExchangePluginAPI.h" #include #include diff --git a/src/LAMPTool/BaseTool.cpp b/src/PluginWBFZExchangePlugin/BaseTool.cpp similarity index 85% rename from src/LAMPTool/BaseTool.cpp rename to src/PluginWBFZExchangePlugin/BaseTool.cpp index 05045a1..66f32de 100644 --- a/src/LAMPTool/BaseTool.cpp +++ b/src/PluginWBFZExchangePlugin/BaseTool.cpp @@ -36,7 +36,7 @@ using namespace Eigen; -QString LAMPTOOLAPI getCurrentTimeString() { +QString getCurrentTimeString() { struct tm ConversionTime; std::time_t t = std::time(NULL); char mbstr[100]; @@ -46,7 +46,7 @@ QString LAMPTOOLAPI getCurrentTimeString() { return strTime; } -QString LAMPTOOLAPI getCurrentShortTimeString() { +QString getCurrentShortTimeString() { struct tm ConversionTime; std::time_t t = std::time(NULL); char mbstr[100]; @@ -56,14 +56,14 @@ QString LAMPTOOLAPI getCurrentShortTimeString() { return strTime; } -std::vector LAMPTOOLAPI splitString(const QString& str, char delimiter) +std::vector splitString(const QString& str, char delimiter) { QStringList tokens = str.split(delimiter); return convertQStringListToStdVector(tokens); } -complex LAMPTOOLAPI Cubic_Convolution_interpolation(double u, double v, Eigen::MatrixX> img) +complex Cubic_Convolution_interpolation(double u, double v, Eigen::MatrixX> img) { if (img.rows() != 4 || img.cols() != 4) { throw exception("the size of img's block is not right"); @@ -80,7 +80,7 @@ complex LAMPTOOLAPI Cubic_Convolution_interpolation(double u, double v, return interValue(0, 0); } -complex LAMPTOOLAPI Cubic_kernel_weight(double s) +complex Cubic_kernel_weight(double s) { s = abs(s); if (s <= 1) { @@ -111,7 +111,7 @@ complex LAMPTOOLAPI Cubic_kernel_weight(double s) /// x,y,z /// x,y,z /// -double LAMPTOOLAPI Bilinear_interpolation(Landpoint p0, Landpoint p11, Landpoint p21, Landpoint p12, Landpoint p22) +double Bilinear_interpolation(Landpoint p0, Landpoint p11, Landpoint p21, Landpoint p12, Landpoint p22) { return p11.ati * (1 - p0.lon) * (1 - p0.lat) + @@ -122,7 +122,7 @@ double LAMPTOOLAPI Bilinear_interpolation(Landpoint p0, Landpoint p11, Landpoint -bool LAMPTOOLAPI onSegment(Point_3d Pi, Point_3d Pj, Point_3d Q) +bool onSegment(Point_3d Pi, Point_3d Pj, Point_3d Q) { if ((Q.x - Pi.x) * (Pj.y - Pi.y) == (Pj.x - Pi.x) * (Q.y - Pi.y) //叉乘 //保证Q点坐标在pi,pj之间 @@ -133,7 +133,7 @@ bool LAMPTOOLAPI onSegment(Point_3d Pi, Point_3d Pj, Point_3d Q) return false; } -Point_3d LAMPTOOLAPI invBilinear(Point_3d p, Point_3d a, Point_3d b, Point_3d c, Point_3d d) +Point_3d invBilinear(Point_3d p, Point_3d a, Point_3d b, Point_3d c, Point_3d d) { Point_3d res; @@ -215,18 +215,18 @@ Point_3d LAMPTOOLAPI invBilinear(Point_3d p, Point_3d a, Point_3d b, Point_3d c, return p; } -double LAMPTOOLAPI sind(double degree) +double sind(double degree) { return sin(degree * d2r); } -double LAMPTOOLAPI cosd(double d) +double cosd(double d) { return cos(d * d2r); } -string LAMPTOOLAPI Convert(float Num) +string Convert(float Num) { ostringstream oss; oss << Num; @@ -234,7 +234,7 @@ string LAMPTOOLAPI Convert(float Num) return str; } -QString LAMPTOOLAPI JoinPath(const QString& path, const QString& filename) +QString JoinPath(const QString& path, const QString& filename) { QDir dir(path); @@ -244,7 +244,7 @@ QString LAMPTOOLAPI JoinPath(const QString& path, const QString& filename) return dir.filePath(filename); } -std::vector LAMPTOOLAPI convertQStringListToStdVector(const QStringList& qStringList) +std::vector convertQStringListToStdVector(const QStringList& qStringList) { std::vector stdVector; diff --git a/src/LAMPTool/BaseTool.h b/src/PluginWBFZExchangePlugin/BaseTool.h similarity index 71% rename from src/LAMPTool/BaseTool.h rename to src/PluginWBFZExchangePlugin/BaseTool.h index 54d76a0..422b438 100644 --- a/src/LAMPTool/BaseTool.h +++ b/src/PluginWBFZExchangePlugin/BaseTool.h @@ -36,17 +36,17 @@ using namespace Eigen; ///////////////////////////////////// 运行时间打印 ////////////////////////////////////////////////////////// -QString LAMPTOOLAPI getCurrentTimeString(); -QString LAMPTOOLAPI getCurrentShortTimeString(); +QString getCurrentTimeString(); +QString getCurrentShortTimeString(); -std::vector LAMPTOOLAPI splitString(const QString& str, char delimiter); +std::vector splitString(const QString& str, char delimiter); /////////////////////////////// 基本图像类 结束 ////////////////////////////////////////////////////////// -string LAMPTOOLAPI Convert(float Num); -QString LAMPTOOLAPI JoinPath(const QString& path, const QString& filename); +string Convert(float Num); +QString JoinPath(const QString& path, const QString& filename); ////////////////////////////// 坐标部分基本方法 ////////////////////////////////////////// @@ -56,15 +56,15 @@ QString LAMPTOOLAPI JoinPath(const QString& path, const QString& filename); ////////////////////////////// 插值 //////////////////////////////////////////// -complex LAMPTOOLAPI Cubic_Convolution_interpolation(double u, double v, Eigen::MatrixX> img); +complex Cubic_Convolution_interpolation(double u, double v, Eigen::MatrixX> img); -complex LAMPTOOLAPI Cubic_kernel_weight(double s); +complex Cubic_kernel_weight(double s); -double LAMPTOOLAPI Bilinear_interpolation(Landpoint p0, Landpoint p11, Landpoint p21, Landpoint p12, Landpoint p22); +double Bilinear_interpolation(Landpoint p0, Landpoint p11, Landpoint p21, Landpoint p12, Landpoint p22); -bool LAMPTOOLAPI onSegment(Point_3d Pi, Point_3d Pj, Point_3d Q); +bool onSegment(Point_3d Pi, Point_3d Pj, Point_3d Q); -Point_3d LAMPTOOLAPI invBilinear(Point_3d p, Point_3d a, Point_3d b, Point_3d c, Point_3d d); +Point_3d invBilinear(Point_3d p, Point_3d a, Point_3d b, Point_3d c, Point_3d d); @@ -87,8 +87,8 @@ step 5: 瞬时平天球坐标系转换为协议天球坐标系(J2000) **/ -double LAMPTOOLAPI sind(double degree); +double sind(double degree); -double LAMPTOOLAPI cosd(double d); +double cosd(double d); #endif \ No newline at end of file diff --git a/src/PluginWBFZExchangePlugin/CMakeLists.txt b/src/PluginWBFZExchangePlugin/CMakeLists.txt index 40fe298..39bd384 100644 --- a/src/PluginWBFZExchangePlugin/CMakeLists.txt +++ b/src/PluginWBFZExchangePlugin/CMakeLists.txt @@ -21,6 +21,38 @@ include_directories(C:/PCL/include/pcl-1.14) # qt5 include_directories(C:/Qt/5.15.2/msvc2019_64/include/QtQml) +# json +include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../json) + +# qscintilla2 +include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../qscintilla2) +include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../qscintilla2/lexers) +include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../qscintilla2/include) +include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../qscintilla2/lexlib) +include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../qscintilla2/Qt4Qt5) +include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../qscintilla2/src) + + +# qcustomplot +include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../qcustomplot) + +# qhexedit +include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../qhexedit) + + +# 内部结构 +include_directories(${CMAKE_CURRENT_SOURCE_DIR}/SqliteDBProcess/src) +include_directories(${CMAKE_CURRENT_SOURCE_DIR}/modelProcess) +include_directories(${CMAKE_CURRENT_SOURCE_DIR}/EchoShowProcess) +include_directories(${CMAKE_CURRENT_SOURCE_DIR}/OCCViewer) +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) + + + + #----------------------------------------------------------------------------- # 链接库 #----------------------------------------------------------------------------- @@ -35,7 +67,9 @@ link_directories("C:/PCL/lib") # 自动添加include目录 #----------------------------------------------------------------------------- set(CMAKE_INCLUDE_CURRENT_DIR ON) - +set(CMAKE_AUTOUIC ON) +set(CMAKE_AUTOMOC ON) +set(CMAKE_AUTORCC ON) @@ -49,11 +83,14 @@ qt5_add_resources(_resource ${_qrc} ${_lang}) #----------------------------------------------------------------------------- # 源码扫描 #----------------------------------------------------------------------------- -file(GLOB _ui "*.ui") -file(GLOB _header "*.h") -file(GLOB _source "*.cpp") +file(GLOB_RECURSE _ui "*.ui") +file(GLOB_RECURSE _header "*.h" ) +file(GLOB_RECURSE _source "*.cpp") qt5_wrap_ui(_interface ${_ui}) +qt5_wrap_cpp(MOC_SOURCES ${_header}) +# 将生成的 MOC 文件添加到源文件列表中 +list(APPEND SOURCES ${MOC_SOURCES}) #----------------------------------------------------------------------------- # 添加动态库目标 #----------------------------------------------------------------------------- @@ -62,6 +99,7 @@ add_library(PluginWBFZExchangePlugin ${_interface} ${_header} ${_source} + ${SOURCES} ) @@ -77,6 +115,7 @@ link_directories("C:/PCL/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) find_package(PCL ) + # boost include_directories(D:/vcpkg/installed/x64-windows/include) @@ -97,29 +136,43 @@ add_definitions(${PCL_DEFINITIONS}) #----------------------------------------------------------------------------- target_compile_definitions(PluginWBFZExchangePlugin PRIVATE "NOMINMAX") # 禁用vc++ 中的min max 定义,避免与 pcl 的中 std::min,pcl::max 函数冲突 target_compile_definitions(PluginWBFZExchangePlugin PRIVATE "WBFZ_API") +target_compile_definitions(PluginWBFZExchangePlugin PRIVATE "WBCLFZSYSTEMMODULE_API") +target_compile_definitions(PluginWBFZExchangePlugin PRIVATE "LAMPTOOL_API") + +#----------------------------------------------------------------------------- +# 安装Qt的依赖文件 +#----------------------------------------------------------------------------- +get_target_property(_qmake_executable Qt5::qmake IMPORTED_LOCATION) +get_filename_component(_qt_bin_dir "${_qmake_executable}" DIRECTORY) + + + list(APPEND _depend_library - LAMPTool WBCLFZSystemModule Common PointCloudOperator PythonModule DataProperty MeshData Material Geometry BCBase ConfigOptions SelfDefObject ModelData ModuleBase PluginManager GeometryCommand GeometryWidgets IO MainWidgets MainWindow + qcustomplot qhexedit qscintilla2 Common PointCloudOperator Settings PythonModule DataProperty MeshData Material Geometry BCBase ConfigOptions SelfDefObject ModelData ModuleBase PluginManager GeometryCommand GeometryWidgets IO MainWidgets MainWindow ) - - list(APPEND _runtimes_libraries LAMPCAE::CGNS Qt5::Core Qt5::Gui Qt5::Widgets Qt5::Xml ) -# 添加 点云 pcl + 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 ) +list(APPEND _runtimes_libraries + OpenCASCADE::TKOpenGl OpenCASCADE::TKOffset OpenCASCADE::TKSTL OpenCASCADE::TKFillet OpenCASCADE::Freetype OpenCASCADE::TKBO OpenCASCADE::TKBRep OpenCASCADE::TKBool OpenCASCADE::TKCAF OpenCASCADE::TKCDF OpenCASCADE::TKG2d OpenCASCADE::TKG3d OpenCASCADE::TKGeomAlgo OpenCASCADE::TKGeomBase OpenCASCADE::TKHLR OpenCASCADE::TKIGES OpenCASCADE::TKLCAF OpenCASCADE::TKMath OpenCASCADE::TKMesh OpenCASCADE::TKPrim OpenCASCADE::TKSTEP OpenCASCADE::TKSTEP209 OpenCASCADE::TKSTEPAttr OpenCASCADE::TKSTEPBase OpenCASCADE::TKService OpenCASCADE::TKShHealing OpenCASCADE::TKTopAlgo OpenCASCADE::TKV3d OpenCASCADE::TKVCAF OpenCASCADE::TKXCAF OpenCASCADE::TKXDEIGES OpenCASCADE::TKXSBase OpenCASCADE::TKernel Qt5::Widgets Qt5::Xml VTK::CommonColor VTK::CommonComputationalGeometry VTK::CommonCore VTK::CommonDataModel VTK::CommonExecutionModel VTK::CommonMath VTK::CommonMisc VTK::CommonSystem VTK::CommonTransforms VTK::FiltersCore VTK::FiltersExtraction VTK::FiltersGeneral VTK::FiltersGeometry VTK::FiltersSources VTK::FiltersStatistics VTK::IOCore VTK::IOLegacy VTK::IOXML VTK::IOXMLParser VTK::ImagingCore VTK::ImagingFourier VTK::ImagingMath VTK::InteractionStyle VTK::ParallelCore VTK::ParallelDIY VTK::RenderingCore VTK::RenderingFreeType VTK::RenderingOpenGL2 VTK::RenderingUI VTK::RenderingVolume VTK::RenderingVolumeOpenGL2 VTK::doubleconversion VTK::expat VTK::freetype VTK::glew VTK::lz4 VTK::lzma VTK::sys VTK::zlib VTK::IOGeometry +) -# 添加 VTK list(APPEND _runtimes_libraries VTK::CommonColor VTK::CommonComputationalGeometry VTK::CommonCore VTK::CommonDataModel VTK::CommonExecutionModel VTK::CommonMath VTK::CommonMisc VTK::CommonSystem VTK::CommonTransforms VTK::DICOMParser VTK::FiltersCore VTK::FiltersGeneral VTK::FiltersGeometry VTK::FiltersHybrid VTK::FiltersModeling VTK::FiltersSources VTK::IOCore VTK::IOChemistry VTK::IOGeometry VTK::IOImage VTK::IOLegacy VTK::ImagingCore VTK::ImagingSources VTK::RenderingCore VTK::RenderingLOD VTK::doubleconversion VTK::jpeg VTK::jsoncpp VTK::lz4 VTK::lzma VTK::metaio VTK::png VTK::pugixml VTK::sys VTK::tiff VTK::zlib ) + + +target_include_directories(PluginWBFZExchangePlugin PRIVATE ${Qwt_INCLUDE_DIRS}) #----------------------------------------------------------------------------- # 链接依赖库 #----------------------------------------------------------------------------- @@ -127,6 +180,11 @@ target_link_libraries(PluginWBFZExchangePlugin PRIVATE ${_runtimes_libraries} ${_depend_library} ${PCL_LIBRARIES} + unofficial::sqlite3::sqlite3 + GDAL::GDAL + FFTW3::fftw3 + GSL::gsl GSL::gslcblas + ) #----------------------------------------------------------------------------- diff --git a/src/WBCLFZSystemModule/DialogBatchExport.ui b/src/PluginWBFZExchangePlugin/DialogBatchExport.ui similarity index 100% rename from src/WBCLFZSystemModule/DialogBatchExport.ui rename to src/PluginWBFZExchangePlugin/DialogBatchExport.ui diff --git a/src/PluginWBFZExchangePlugin/DialogPCLBilateralFilter.cpp b/src/PluginWBFZExchangePlugin/DialogPCLBilateralFilter.cpp new file mode 100644 index 0000000..52ca7d5 --- /dev/null +++ b/src/PluginWBFZExchangePlugin/DialogPCLBilateralFilter.cpp @@ -0,0 +1,291 @@ +/** + * @file DialogPCLBilateralFilter.cpp + * @brief None + * @author 陈增辉 (3045316072@qq.com) + * @version 2.5.0 + * @date 2024/4/5 + * @copyright Copyright (c) Since 2024 中科卫星应用研究院 All rights reserved. + */ + +// You may need to build the project (run Qt uic code generator) to get +// "ui_DialogPCLBilateralFilter.h" resolved + +#include "DialogPCLBilateralFilter.h" +#include "ui_DialogPCLBilateralFilter.h" + +#include "PythonModule/PyAgent.h" +#include "MeshData/meshSingleton.h" +#include "MeshData/meshSet.h" +#include +#include +#include +#include +#include +#include +#include "MeshData/meshKernal.h" +#include "PointCloudOperator/PointCloudCommon.h" +#include "Settings/BusAPI.h" +#include "BaseTool.h" +#include "IO/IOConfig.h" +#include "ModuleBase/ThreadControl.h" +#include "ConfigOptions/ConfigOptions.h" +#include "ConfigOptions/MeshConfig.h" +#include "Common/DebugLogger.h" + + + + + + +//auto meshData = MeshData::MeshData::getInstance(); + +namespace MainWidget { + DialogPCLBilateralFilter::DialogPCLBilateralFilter(GUI::MainWindow *parent) + : QFDialog(parent), + _ui(new Ui::DialogPCLBilateralFilter), + _mw(parent), + _selectdlg(new DialogSelectComponents(parent)) + { + _ui->setupUi(this); + _ui->geoSelectPoint->setToolTip(tr("Clicked Button Selected Components")); + setWindowTitle(tr("Fast Bilateral Filter")); + _ui->listWidget->setContextMenuPolicy(Qt::CustomContextMenu); + + + connect(_ui->geoSelectPoint, &QPushButton::clicked, [=]() + { _selectdlg->clearSelectItems(); _selectdlg->exec(); }); + connect(_selectdlg, SIGNAL(selectedComponentsSig(QList)), this, SLOT(selectedComponentsSlot(QList))); + connect(_ui->listWidget, SIGNAL(customContextMenuRequested(const QPoint &)), this, SLOT(customContextMenuRequestedSlot(const QPoint &))); + + } + + DialogPCLBilateralFilter::~DialogPCLBilateralFilter() + { + delete _ui; + _ui = NULL; + delete _selectdlg; + _selectdlg = NULL; + } + + void DialogPCLBilateralFilter::accept() + { + if (_components.size() == 0) + return; + + QString componentIds; + for (auto component : _components) + componentIds.append(QString(",%1").arg(component->getID())); + componentIds.remove(0, 1); + + double sigmaS=_ui->SigmaS->value(); + double sigmaR=_ui->SigmaR->value(); + + + + QString outfilename="filter"; + for (auto component : _components) + outfilename.append(QString("_%1").arg(component->getName())); + + // 确定是否保存结果文件 + QMessageBox::StandardButton result=QMessageBox::critical(this, "info","save as result ?"); + QString filepath= JoinPath(Setting::BusAPI::instance()->getWorkingDir() ,outfilename+"_tmep.pcd"); + QString AbFileName; + if(result==QMessageBox::StandardButton::Ok||result==QMessageBox::StandardButton::Yes){ + QStringList suffixlist = IO::IOConfigure::getPclExporters(); + if(suffixlist.isEmpty()) { + QMessageBox::warning(this, tr("Warning"), tr("The MeshPlugin is not installed !")); + return; + } + + if(MeshData::MeshData::getInstance()->getKernalCount() == 0) { + QMessageBox::warning(this, tr("Warning"), tr("No one has any grid!")); + return; + } + + QStringList meshsuffix = ConfigOption::ConfigOption::getInstance() + ->getMeshConfig() + ->getExportSuffix(ConfigOption::MeshDataType::PointCloud) + .split(";"); + QStringList list; + + for(QString s : meshsuffix) { + for(int i = 0; i < suffixlist.size(); i++) { + QString suffix = suffixlist.at(i); + if(suffix.contains(s)) + list.append(suffix); + } + } + + std::sort(list.begin(), list.end()); + QString suffixes = list.join(";;"); + QString workDir = Setting::BusAPI::instance()->getWorkingDir(); + QFileDialog dlg(this, tr("Export Pcl"), workDir, suffixes); + dlg.setAcceptMode(QFileDialog::AcceptSave); + if(dlg.exec() != QFileDialog::FileName) + return; + + QString aSuffix = dlg.selectedNameFilter(); + QString aFileName = dlg.selectedFiles().join(","); + if(!(aFileName.isEmpty())){ + filepath=aFileName; + + }else{} + + AbFileName=filepath; + QTextCodec *codec = QTextCodec::codecForName("GB18030"); + QByteArray ba = codec->fromUnicode(filepath); + + std::string outFileName=ba.data(); + + }else{ // 不保存成点云数据 + + } + + // 启动线程 + auto pclfilter = new WBFZ::PCLBilateralFilter( + AbFileName,WBFZ::PointCloudOperation::POINTCLOUD_FILTER,_mainWindow,componentIds, sigmaR, sigmaS); + ModuleBase::ThreadControl* tc = new ModuleBase::ThreadControl(pclfilter); + emit tc->threadStart(); // emit MSHwriter->start(); + + + QFDialog::accept(); + } + + void DialogPCLBilateralFilter::selectedComponentsSlot(QList components) + { + for (MeshData::MeshSet *set : components) + { + if (_components.contains(set)) + continue; + _components.append(set); + _ui->listWidget->addItem(set->getName()); + } + } + + void DialogPCLBilateralFilter::customContextMenuRequestedSlot(const QPoint &point) + { + QListWidgetItem *curItem = _ui->listWidget->itemAt(point); + if (!curItem) + return; + + QMenu *menu = new QMenu(this); + QAction *deleteItem = new QAction(tr("delete this item")); + menu->addAction(deleteItem); + connect(menu, &QMenu::triggered, [=]() + { removeCurrentItem(curItem); }); + menu->exec(QCursor::pos()); + } + + void DialogPCLBilateralFilter::removeCurrentItem(QListWidgetItem *curItem) + { + auto meshData = MeshData::MeshData::getInstance(); + auto meshSet = meshData->getMeshSetByName(curItem->text()); + if (!meshSet) + return; + _components.removeOne(meshSet); + _ui->listWidget->removeItemWidget(curItem); + delete curItem; + } + + +} // namespace MainWidget +WBFZ::PCLBilateralFilter::PCLBilateralFilter(const QString& fileName, + WBFZ::PointCloudOperation operation, + GUI::MainWindow* mw, QString componentIds, + double sigmaR, double sigmaS) + : PointCloudThreadBase(fileName, operation, mw) + , _fileName(fileName) + , _operation(operation) + , _componentIds(componentIds) + , _sigmaR(sigmaR) + , _sigmaS(sigmaS) +{ + +} +vtkDataSet* WBFZ::PCLBilateralFilter::filter() +{ + return PCLBilateralFilterAlg( _componentIds, _sigmaR, _sigmaS); +} +vtkDataSet* WBFZ::PCLBilateralFilter::PCLBilateralFilterAlg(QString componentIds, double sigmaR, + double sigmaS) +{ + emit _mainwindow->printMessage(Common::Message::Normal,"PCLBilateralFilterAlg"); + // 获取vtdataset + QStringList qCompontIds = QString(componentIds).split(','); + + MeshData::MeshSet* meshSet = NULL; + MeshData::MeshKernal* meshKernal = NULL; + MeshData::MeshData* meshData = MeshData::MeshData::getInstance(); + QString kernalName, transformedName, setType, ids; + + // 筛选其中的点云数据 + // 创建 vtkCellDataToPointData 过滤器 + vtkSmartPointer cellToPointFilter = vtkSmartPointer::New(); + + QString outfilename; + for(QString compontId : qCompontIds) { + meshSet = meshData->getMeshSetByID(compontId.toInt()); + DebugInfo("point count %d : %d ",compontId.toInt(),meshSet==nullptr); + if(!meshSet) + continue; + outfilename=meshSet->getName(); + vtkPolyData* temppolyData=PointCloudOperator::PointCloudCommon::meshSetToVtkDataset(meshSet); + cellToPointFilter->SetInputData(temppolyData); + DebugInfo("point count %d : %d ",compontId.toInt(),temppolyData==nullptr); + } + + // 执行过滤操作 + cellToPointFilter->Update(); + DebugInfo("cellToPointFilter "); + // 获取过滤后的 vtkPolyData + vtkPolyData* outpolyData = cellToPointFilter->GetOutput(); + DebugInfo("outpolyData "); + + + pcl::PointCloud::Ptr cloud_with_rgba(new pcl::PointCloud); + pcl::PointCloud::Ptr cloud_filtered(new pcl::PointCloud); + pcl::io::vtkPolyDataToPointCloud(outpolyData,*cloud_with_rgba); + // 创建滤波器对象 + + pcl::FastBilateralFilter fbf; + fbf.setInputCloud(cloud_with_rgba); + fbf.setSigmaS(sigmaS); + fbf.setSigmaR(sigmaR); + fbf.filter(*cloud_filtered); + + // 转换处理结果 + vtkPolyData* polydata=nullptr; + polydata=vtkPolyData::New(); // 创建新的指针,智能指针会释放 + pcl::io::pointCloudTovtkPolyData(*cloud_filtered,polydata); + vtkDataSet* dataset= vtkDataSet::SafeDownCast(polydata); // 默认完成 vtkpolydata --> vtkdataset + size_t pointCount = dataset->GetNumberOfPoints(); + if(pointCount==0){ + return nullptr; + } + emit _mainwindow->printMessage(Common::Message::Normal,"PCLBilateralFilterAlg successfully!! Point Count : "+QString::number(pointCount)); + outpolyData->Delete(); // 释放指针 + + QString filepath=_fileName; + + // 加载文件 + QFileInfo info(filepath); + QString name = info.fileName(); + QString path = info.filePath(); + QString suffix = info.suffix().toLower(); + QTextCodec *codec = QTextCodec::codecForName("GB18030"); + QByteArray ba = codec->fromUnicode(filepath); + + std::string outFileName=ba.data(); + if (suffix == "pcd") + { + pcl::io::savePCDFileBinary(outFileName,*cloud_filtered); + } + else if (suffix == "ply") + { + pcl::io::savePLYFileBinary(outFileName,*cloud_filtered); + } + else{} + return dataset; + +} +WBFZ::PCLBilateralFilter::~PCLBilateralFilter() {} diff --git a/src/MainWidgets/DialogPCLBilateralFilter.h b/src/PluginWBFZExchangePlugin/DialogPCLBilateralFilter.h similarity index 62% rename from src/MainWidgets/DialogPCLBilateralFilter.h rename to src/PluginWBFZExchangePlugin/DialogPCLBilateralFilter.h index 14809b4..114367f 100644 --- a/src/MainWidgets/DialogPCLBilateralFilter.h +++ b/src/PluginWBFZExchangePlugin/DialogPCLBilateralFilter.h @@ -9,9 +9,17 @@ #ifndef LAMPCAE_DIALOGPCLBILATERALFILTER_H #define LAMPCAE_DIALOGPCLBILATERALFILTER_H -#include "mainWidgetsAPI.h" +#include "WBFZExchangePluginAPI.h" #include "SelfDefObject/QFDialog.h" -#include "DialogVTKTransform.h" +#include "MainWidgets/DialogVTKTransform.h" +#include "PointCloudThreadBase.h" + + + +namespace WBFZ{ + class PointCloudThreadBase; +} + class QListWidgetItem; @@ -26,9 +34,32 @@ namespace MeshData } +namespace WBFZ{ + class PCLBilateralFilter : public PointCloudThreadBase + { + public: + PCLBilateralFilter(const QString &fileName, PointCloudOperation operation, GUI::MainWindow *mw, QString componentIds, double sigmaR,double sigmaS); + ~PCLBilateralFilter(); + private: + vtkDataSet* filter() override; + vtkDataSet* PCLBilateralFilterAlg(QString componentIds,double sigmaR,double sigmaS); + private: + QString _fileName; + PointCloudOperation _operation; + QString _componentIds; + double _sigmaR; + double _sigmaS; + + }; +} + + + + + namespace MainWidget { class DialogSelectComponents; - class MAINWIDGETSAPI DialogPCLBilateralFilter : public QFDialog { + class DialogPCLBilateralFilter : public QFDialog { Q_OBJECT public: @@ -55,6 +86,14 @@ namespace MainWidget { private: Ui::DialogPCLBilateralFilter* _ui; }; + + + + + + + + } // namespace MainWidget #endif // LAMPCAE_DIALOGPCLBILATERALFILTER_H diff --git a/src/MainWidgets/DialogPCLBilateralFilter.ui b/src/PluginWBFZExchangePlugin/DialogPCLBilateralFilter.ui similarity index 100% rename from src/MainWidgets/DialogPCLBilateralFilter.ui rename to src/PluginWBFZExchangePlugin/DialogPCLBilateralFilter.ui diff --git a/src/PluginWBFZExchangePlugin/DialogPCLGPMesh.cpp b/src/PluginWBFZExchangePlugin/DialogPCLGPMesh.cpp new file mode 100644 index 0000000..cfd8b98 --- /dev/null +++ b/src/PluginWBFZExchangePlugin/DialogPCLGPMesh.cpp @@ -0,0 +1,449 @@ +/** + * @file DialogPCLGPMesh.cpp + * @brief None + * @author 陈增辉 (3045316072@qq.com) + * @version 2.5.0 + * @date 2024/4/5 + * @copyright Copyright (c) Since 2024 中科卫星应用研究院 All rights reserved. + */ + +// You may need to build the project (run Qt uic code generator) to get "ui_DialogPCLGPMesh.h" +// resolved + +#include "DialogPCLGPMesh.h" +#include "ui_DialogPCLGPMesh.h" +#include "ModuleBase/ThreadTask.h" +#include "PythonModule/PyAgent.h" +#include "MeshData/meshSingleton.h" +#include "MeshData/meshSet.h" +#include +#include +#include +#include +#include +#include +#include "MeshData/meshKernal.h" +#include "PointCloudOperator/PointCloudCommon.h" +#include "Settings/BusAPI.h" +#include "BaseTool.h" +#include "IO/IOConfig.h" +#include "ModuleBase/ThreadControl.h" +#include "ConfigOptions/ConfigOptions.h" +#include "ConfigOptions/MeshConfig.h" + +#include "MeshData/meshSingleton.h" +#include "MeshData/meshKernal.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "Common/DebugLogger.h" + +// auto meshData = MeshData::MeshData::getInstance(); + +namespace MainWidget { + DialogPCLGPMesh::DialogPCLGPMesh(GUI::MainWindow* parent) + : QFDialog(parent) + , _ui(new Ui::DialogPCLGPMesh) + , _mw(parent) + , _selectdlg(new DialogSelectComponents(parent)) + { + _ui->setupUi(this); + _ui->geoSelectPoint->setToolTip(tr("Clicked Button Selected Components")); + setWindowTitle(tr("GP Meshing")); + _ui->listWidget->setContextMenuPolicy(Qt::CustomContextMenu); + + connect(_ui->geoSelectPoint, &QPushButton::clicked, [=]() { + _selectdlg->clearSelectItems(); + _selectdlg->exec(); + }); + connect(_selectdlg, SIGNAL(selectedComponentsSig(QList)), this, + SLOT(selectedComponentsSlot(QList))); + connect(_ui->listWidget, SIGNAL(customContextMenuRequested(const QPoint&)), this, + SLOT(customContextMenuRequestedSlot(const QPoint&))); + } + + DialogPCLGPMesh::~DialogPCLGPMesh() + { + delete _ui; + _ui = NULL; + delete _selectdlg; + _selectdlg = NULL; + } + + void DialogPCLGPMesh::accept() + { + if(_components.size() == 0) + return; + + QString componentIds; + for(auto component : _components) + componentIds.append(QString(",%1").arg(component->getID())); + componentIds.remove(0, 1); + + double SearchRadius = _ui->SearchRadius->value(); + double Mu = _ui->Mu->value(); + int MaximumNearestNeighbors = _ui->MaximumNearestNeighbors->value(); + double MaximumSurfaceAngle = _ui->MaximumSurfaceAngle->value(); + double MaximumAngle = _ui->MaximumAngle->value(); + double MinimumAngle = _ui->MinimumAngle->value(); + + QString outfilename = "filter"; + for(auto component : _components) + outfilename.append(QString("_%1").arg(component->getName())); + + // 确定是否保存结果文件 + QMessageBox::StandardButton result = + QMessageBox::critical(this, "info", "save as result ?"); + QString filepath = + JoinPath(Setting::BusAPI::instance()->getWorkingDir(), outfilename + "_tmep.pcd"); + QString AbFileName = filepath; + if(result == QMessageBox::StandardButton::Ok + || result == QMessageBox::StandardButton::Yes) { + DebugInfo("outfilename ok ok \n"); + QStringList suffixlist = IO::IOConfigure::getMeshExporters(); + if(suffixlist.isEmpty()) { + QMessageBox::warning(this, tr("Warning"), tr("The MeshPlugin is not installed !")); + return; + } + + QStringList meshsuffix = ConfigOption::ConfigOption::getInstance() + ->getMeshConfig() + ->getExportSuffix(ConfigOption::MeshDataType::vtkMesh) + .split(";"); + QStringList list; + + for(QString s : meshsuffix) { + for(int i = 0; i < suffixlist.size(); i++) { + QString suffix = suffixlist.at(i); + if(suffix.contains(s)) + list.append(suffix); + } + } + + std::sort(list.begin(), list.end()); + QString suffixes = list.join(";;"); + QString workDir = Setting::BusAPI::instance()->getWorkingDir(); + + QFileDialog dlg(this, tr("Export mesh"), workDir, suffixes); + dlg.setAcceptMode(QFileDialog::AcceptSave); + if(dlg.exec() != QFileDialog::FileName) + return; + + QString aSuffix = dlg.selectedNameFilter(); + QString aFileName = dlg.selectedFiles().join(","); + if(!(aFileName.isEmpty())) { + filepath = aFileName; + + } else { + } + + AbFileName = filepath; + + } else { // 不保存成点云数据 + } + DebugInfo("outfilename %s \n", AbFileName.toStdString().c_str()); + // 启动线程 + auto pclremesh = + new WBFZ::PCLGPMesh(AbFileName, WBFZ::PointCloudOperation::POINTCLOUD_MESH, _mainWindow, + componentIds, SearchRadius, Mu, MaximumNearestNeighbors, + MaximumSurfaceAngle, MaximumAngle, MinimumAngle); + ModuleBase::ThreadControl* tc = new ModuleBase::ThreadControl(pclremesh); + emit tc->threadStart(); // emit MSHwriter->start(); + + QFDialog::accept(); + } + + void DialogPCLGPMesh::selectedComponentsSlot(QList components) + { + for(MeshData::MeshSet* set : components) { + if(_components.contains(set)) + continue; + _components.append(set); + _ui->listWidget->addItem(set->getName()); + } + } + + void DialogPCLGPMesh::customContextMenuRequestedSlot(const QPoint& point) + { + QListWidgetItem* curItem = _ui->listWidget->itemAt(point); + if(!curItem) + return; + + QMenu* menu = new QMenu(this); + QAction* deleteItem = new QAction(tr("delete this item")); + menu->addAction(deleteItem); + connect(menu, &QMenu::triggered, [=]() { removeCurrentItem(curItem); }); + menu->exec(QCursor::pos()); + } + + void DialogPCLGPMesh::removeCurrentItem(QListWidgetItem* curItem) + { + auto meshData = MeshData::MeshData::getInstance(); + auto meshSet = meshData->getMeshSetByName(curItem->text()); + if(!meshSet) + return; + _components.removeOne(meshSet); + _ui->listWidget->removeItemWidget(curItem); + delete curItem; + } + +} // namespace MainWidget + +namespace WBFZ { + PCLGPMesh::PCLGPMesh(const QString& fileName, WBFZ::PointCloudOperation operation, + GUI::MainWindow* mw, QString componentIds, double SearchRadius, double Mu, + int MaximumNearestNeighbors, double MaximumSurfaceAngle, + double MaximumAngle, double MinimumAngle) + : ModuleBase::ThreadTask(mw) + , _operation(operation) + , _fileName(fileName) + , _componentIds(componentIds) + , _SearchRadius(SearchRadius) + , _Mu(Mu) + , _MaximumNearestNeighbors(MaximumNearestNeighbors) + , _MaximumSurfaceAngle(MaximumSurfaceAngle) + , _MaximumAngle(MaximumAngle) + , _MinimumAngle(MinimumAngle) + { + } + + PCLGPMesh::~PCLGPMesh() {} + + void PCLGPMesh::defaultMeshFinished() + { + if(_threadRuning) { + QString information{}; + ModuleBase::Message msg; + if(_operation == POINTCLOUD_FILTER || _operation == POINTCLOUD_MESH) { + if(_success) { + emit _mainwindow->updateMeshTreeSig(); + emit _mainwindow->updateSetTreeSig(); + emit _mainwindow->updateActionStatesSig(); + // emit _mainwindow->updateActionsStatesSig(); + emit _mainwindow->getSubWindowManager()->openPreWindowSig(); + emit _mainwindow->updatePreMeshActorSig(); + information = QString("Successful Import Mesh From \"%1\"").arg(_fileName); + msg.type = Common::Message::Normal; + msg.message = information; + auto meshdata = MeshData::MeshData::getInstance(); + // meshdata->generateDisplayDataSet(); + const int nk = meshdata->getKernalCount(); + if(nk <= 0) + return; + auto k = meshdata->getKernalAt(nk - 1); + if(k != nullptr) + k->setPath(_fileName); + } else { + information = QString("Failed Filter From \"%1\"").arg(_fileName); + msg.type = Common::Message::Error; + msg.message = information; + } + } else { + } + } + // emit showInformation(information); + // emit _mainwindow->printMessageToMessageWindow(msg); + ModuleBase::ThreadTask::threadTaskFinished(); + Py::PythonAgent::getInstance()->unLock(); + } + void PCLGPMesh::setThreadRunState(bool flag) + { + _success = flag; + } + + void PCLGPMesh::run() + { + ModuleBase::ThreadTask::run(); + bool result = false; + switch(_operation) { + case POINTCLOUD_MESH: + emit showInformation(tr("POINTCLOUD_MESH From \"%1\"").arg(_fileName)); + result = remeshtaskProcess(); + setThreadRunState(result); + break; + default: + break; + } + DebugInfo("run ok _success %d _threadRuning %d \n", _success, _threadRuning); + defaultMeshFinished(); + } + + bool PCLGPMesh::remeshtaskProcess() + { + QString componentIds = _componentIds; + double SearchRadius = _SearchRadius; + double Mu = _Mu; + int MaximumNearestNeighbors = _MaximumNearestNeighbors; + double MaximumSurfaceAngle = _MaximumSurfaceAngle; + double MaximumAngle = _MaximumAngle; + double MinimumAngle = _MinimumAngle; + + emit _mainwindow->printMessage(Common::Message::Normal, "PCLGPMeshAlg"); + // 获取vtdataset + QStringList qCompontIds = QString(componentIds).split(','); + + MeshData::MeshSet* meshSet = NULL; + MeshData::MeshKernal* meshKernal = NULL; + MeshData::MeshData* meshData = MeshData::MeshData::getInstance(); + QString kernalName, transformedName, setType, ids; + + // 筛选其中的点云数据 + // 创建 vtkCellDataToPointData 过滤器 + vtkSmartPointer cellToPointFilter = + vtkSmartPointer::New(); + + QString outfilename; + for(QString compontId : qCompontIds) { + meshSet = meshData->getMeshSetByID(compontId.toInt()); + DebugInfo("point count %d : %d \n", compontId.toInt(), meshSet == nullptr); + if(!meshSet) + continue; + outfilename = meshSet->getName(); + vtkPolyData* temppolyData = + PointCloudOperator::PointCloudCommon::meshSetToVtkDataset(meshSet); + cellToPointFilter->SetInputData(temppolyData); + DebugInfo("point count %d : %d \n", compontId.toInt(), temppolyData == nullptr); + } + + // 执行过滤操作 + cellToPointFilter->Update(); + DebugInfo("cellToPointFilter \n"); + // 获取过滤后的 vtkPolyData + vtkPolyData* outpolyData = cellToPointFilter->GetOutput(); + DebugInfo("outpolyData "); + + pcl::PointCloud::Ptr cloud_with_rgba( + new pcl::PointCloud); + pcl::PointCloud::Ptr cloud_filtered( + new pcl::PointCloud); + pcl::io::vtkPolyDataToPointCloud(outpolyData, *cloud_with_rgba); + // 创建滤波器对象 + + // 计算点云滤波结果 + pcl::PointCloud::Ptr output( + new pcl::PointCloud); // 输出结果 + pcl::PointCloud::Ptr cloud_with_normals( + new pcl::PointCloud); + pcl::PolygonMesh* mesh = new pcl::PolygonMesh; + + // 估计法线 + PointCloudOperator::PointCloudCommon::NormalEstimation(cloud_with_rgba, cloud_with_normals); + + //------------------定义搜索树对象------------------------ + pcl::search::KdTree::Ptr tree2(new pcl::search::KdTree); + tree2->setInputCloud(cloud_with_normals); + pcl::GreedyProjectionTriangulation gp3; // 定义三角化对象 + + gp3.setSearchRadius(SearchRadius); // 设置连接点之间的最大距离(即三角形的最大边长) + gp3.setMu(Mu); // 设置被样本点搜索其临近点的最远距离,为了适应点云密度的变化 + gp3.setMaximumNearestNeighbors(MaximumNearestNeighbors); // 设置样本点可搜索的邻域个数 + gp3.setMaximumSurfaceAngle( + MaximumSurfaceAngle); // 设置某点法线方向偏离样本点法线方向的最大角度 + gp3.setMinimumAngle(MinimumAngle); // 设置三角化后得到三角形内角的最小角度 + gp3.setMaximumAngle(MaximumAngle); // 设置三角化后得到三角形内角的最大角度 + gp3.setNormalConsistency(false); // 设置该参数保证法线朝向一致 + // qDebug() << "[GP] start reconstruct :" << cloud_in->points.size(); + // Get result + DebugInfo("setInputCloud point count : %d \n", cloud_with_normals->size()); + gp3.setInputCloud(cloud_with_normals); // 设置输入点云为有向点云 + gp3.setSearchMethod(tree2); // 设置搜索方式 + gp3.reconstruct(*mesh); // 重建提取三角化 + emit _mainwindow->printMessageToMessageWindow( + QString("edge count %1 ").arg(QString::number(mesh->polygons.size()))); + DebugInfo("remesh over ,conver init %d \n", mesh->polygons.size()); + // 转换处理结果 + vtkPolyData* polydata = vtkPolyData::New(); // 创建新的指针,智能指针会释放 + size_t pointcount = PointCloudOperator::PointCloudCommon::mesh2vtk(*mesh, polydata); + DebugInfo("remesh over ,conver over polydata %d , pointcount %d\n", polydata == nullptr, + pointcount); + vtkDataSet* dataset = + vtkDataSet::SafeDownCast(polydata); // 默认完成 vtkpolydata --> vtkdataset + // outpolyData->Delete(); // 释放指针 , + // 千万不能释放这个指针,不然程序回调时,会直接内存崩溃 + DebugInfo("PCLGPMeshAlg successfully!! wait for writing file \n"); + + // vtkDataSet* + // dataset=PCLGPMeshAlg(_componentIds,_SearchRadius,_Mu,_MaximumNearestNeighbors,_MaximumSurfaceAngle,_MaximumAngle,_MinimumAngle); + DebugInfo("remesh \n"); + QString filepath = _fileName; + + // 加载文件 + QFileInfo info(filepath); + QString name = info.fileName(); + QString path = info.filePath(); + QString suffix = info.suffix().toLower(); + QTextCodec* codec = QTextCodec::codecForName("GB18030"); + QByteArray ba = codec->fromUnicode(filepath); + + std::string outFileName = ba.data(); + DebugInfo("writing %s suffix %s !! \n", ba.data(), suffix.toStdString().c_str()); + if(suffix == "vtk") { + vtkSmartPointer writer = + vtkSmartPointer::New(); + writer->SetInputData(dataset); + writer->SetFileTypeToBinary(); + writer->SetFileName(ba); + writer->Write(); + DebugInfo("writing vtk !! \n"); + } else if(suffix == "stl") { + QTextCodec* codec = QTextCodec::codecForName("GB18030"); + QByteArray ba = codec->fromUnicode(_fileName); + + vtkSmartPointer writer = vtkSmartPointer::New(); + writer->SetInputData(dataset); + writer->SetFileTypeToBinary(); + writer->SetFileName(ba); + writer->Write(); + DebugInfo("writing stl !! \n"); + } else { + } + + DebugInfo("writing finish !! %d \n", dataset == nullptr); + + // 回调函数 + DebugInfo("remeshtaskProcess !! %d \n", dataset == nullptr); + + // QFileInfo info(_fileName); + // QString name = info.fileName(); + // QString path = info.filePath(); + // QString suffix = info.suffix().toLower(); + DebugInfo("dataset %d _fileName %s \n", dataset == nullptr, + _fileName.toStdString().c_str()); + // 保存流程文件 + if(dataset != nullptr) { + DebugInfo("load result in meshKernal \n"); + auto* k = new MeshData::MeshKernal; + k->setName(name); + k->setPath(path); + auto meshData = MeshData::MeshData::getInstance(); + int nKernal = meshData->getKernalCount(); + for(int iKernal = 0; iKernal < nKernal; ++iKernal) { + MeshData::MeshKernal* temp = meshData->getKernalAt(iKernal); + if(temp->getPath() == path) { ///< MG same file update + meshData->removeKernalAt(iKernal); + break; + } + } + + k->setMeshData(dataset); + meshData->appendMeshKernal(k); + DebugInfo("load result in meshKernal \n"); + + return true; + } else { + return false; + } + + return false; + } +} // namespace WBFZ \ No newline at end of file diff --git a/src/MainWidgets/DialogPCLGPMesh.h b/src/PluginWBFZExchangePlugin/DialogPCLGPMesh.h similarity index 50% rename from src/MainWidgets/DialogPCLGPMesh.h rename to src/PluginWBFZExchangePlugin/DialogPCLGPMesh.h index 1bfa4cd..1bc7b02 100644 --- a/src/MainWidgets/DialogPCLGPMesh.h +++ b/src/PluginWBFZExchangePlugin/DialogPCLGPMesh.h @@ -10,9 +10,16 @@ #ifndef LAMPCAE_DIALOGPCLGPMESH_H #define LAMPCAE_DIALOGPCLGPMESH_H -#include "mainWidgetsAPI.h" +#include "WBFZExchangePluginAPI.h" #include "SelfDefObject/QFDialog.h" -#include "DialogVTKTransform.h" +#include "MainWidgets/DialogVTKTransform.h" +#include "PointCloudThreadBase.h" +#include "MainWindow/MainWindow.h" +#include "MainWindow/SubWindowManager.h" + +namespace WBFZ{ + class PointCloudThreadBase; +} class QListWidgetItem; @@ -27,9 +34,45 @@ namespace MeshData class MeshSet; } +namespace GUI +{ + class MainWindow; + class SubWindowManager; +} + +namespace WBFZ{ + class PCLGPMesh : public ModuleBase::ThreadTask + { + public: + PCLGPMesh(const QString &fileName, PointCloudOperation operation, GUI::MainWindow *mw, QString componentIds , double SearchRadius, double Mu,int MaximumNearestNeighbors,double MaximumSurfaceAngle,double MaximumAngle,double MinimumAngle); + ~PCLGPMesh(); + public: + virtual void run(); + void defaultMeshFinished(); + void setThreadRunState(bool); + bool remeshtaskProcess(); +// vtkDataSet* remesh() ; +// vtkDataSet* PCLGPMeshAlg(QString componentIds , double SearchRadius, double Mu,int MaximumNearestNeighbors,double MaximumSurfaceAngle,double MaximumAngle,double MinimumAngle); + private: + bool _success{false}; + QString _fileName; + PointCloudOperation _operation; + QString _componentIds; + double _SearchRadius; + double _Mu; + int _MaximumNearestNeighbors; + double _MaximumSurfaceAngle; + double _MaximumAngle; + double _MinimumAngle; + + }; +} + + + namespace MainWidget { class DialogSelectComponents; - class MAINWIDGETSAPI DialogPCLGPMesh : public QFDialog { + class DialogPCLGPMesh : public QFDialog { Q_OBJECT public: diff --git a/src/MainWidgets/DialogPCLGPMesh.ui b/src/PluginWBFZExchangePlugin/DialogPCLGPMesh.ui similarity index 93% rename from src/MainWidgets/DialogPCLGPMesh.ui rename to src/PluginWBFZExchangePlugin/DialogPCLGPMesh.ui index 844d5c9..75c57d9 100644 --- a/src/MainWidgets/DialogPCLGPMesh.ui +++ b/src/PluginWBFZExchangePlugin/DialogPCLGPMesh.ui @@ -69,7 +69,7 @@ - Search Radius: + Triangle edge: @@ -93,6 +93,9 @@ 360.000000000000000 + + 1.000000000000000 + @@ -134,6 +137,12 @@ 360.000000000000000 + + 1.000000000000000 + + + 2.500000000000000 + @@ -169,6 +178,15 @@ 25 + + 1000000 + + + QAbstractSpinBox::DefaultStepType + + + 10000 + @@ -210,6 +228,9 @@ 360.000000000000000 + + 360.000000000000000 + @@ -251,6 +272,9 @@ 360.000000000000000 + + 360.000000000000000 + diff --git a/src/PluginWBFZExchangePlugin/DialogPCLGuassFilter.cpp b/src/PluginWBFZExchangePlugin/DialogPCLGuassFilter.cpp new file mode 100644 index 0000000..90f4240 --- /dev/null +++ b/src/PluginWBFZExchangePlugin/DialogPCLGuassFilter.cpp @@ -0,0 +1,321 @@ +/** + * @file DialogPCLGuassFilter.cpp + * @brief None + * @author 陈增辉 (3045316072@qq.com) + * @version 2.5.0 + * @date 2024/4/5 + * @copyright Copyright (c) Since 2024 中科卫星应用研究院 All rights reserved. + */ + +// You may need to build the project (run Qt uic code generator) to get "ui_DialogPCLGuassFilter.h" +// resolved + +#include "DialogPCLGuassFilter.h" +#include "ui_DialogPCLGuassFilter.h" + +#include "PythonModule/PyAgent.h" +#include "MeshData/meshSingleton.h" +#include "MeshData/meshSet.h" +#include +#include +#include +#include +#include +#include "MeshData/meshKernal.h" +#include "PointCloudOperator/PointCloudCommon.h" +#include "Settings/BusAPI.h" +#include "BaseTool.h" +#include "IO/IOConfig.h" +#include +#include +#include +#include +#include "MeshData/meshKernal.h" +#include "PointCloudOperator/PointCloudCommon.h" +#include "Settings/BusAPI.h" +#include "BaseTool.h" +#include "IO/IOConfig.h" +#include "ModuleBase/ThreadControl.h" +#include "ConfigOptions/ConfigOptions.h" +#include "ConfigOptions/MeshConfig.h" +#include "Common/DebugLogger.h" + +//auto meshData = MeshData::MeshData::getInstance(); + +namespace MainWidget { + DialogPCLGuassFilter::DialogPCLGuassFilter(GUI::MainWindow *parent) + : QFDialog(parent), + _ui(new Ui::DialogPCLGuassFilter), + _mw(parent), + _selectdlg(new DialogSelectComponents(parent)) + { + _ui->setupUi(this); + _ui->geoSelectPoint->setToolTip(tr("Clicked Button Selected Components")); + setWindowTitle(tr("Guass Filter")); + _ui->listWidget->setContextMenuPolicy(Qt::CustomContextMenu); + + + connect(_ui->geoSelectPoint, &QPushButton::clicked, [=]() + { _selectdlg->clearSelectItems(); _selectdlg->exec(); }); + connect(_selectdlg, SIGNAL(selectedComponentsSig(QList)), this, SLOT(selectedComponentsSlot(QList))); + connect(_ui->listWidget, SIGNAL(customContextMenuRequested(const QPoint &)), this, SLOT(customContextMenuRequestedSlot(const QPoint &))); + + } + + DialogPCLGuassFilter::~DialogPCLGuassFilter() + { + delete _ui; + _ui = NULL; + delete _selectdlg; + _selectdlg = NULL; + } + + void DialogPCLGuassFilter::accept() + { + if (_components.size() == 0) + return; + + QString componentIds, rotate, moveLocation, scale; + for (auto component : _components) + componentIds.append(QString(",%1").arg(component->getID())); + componentIds.remove(0, 1); + + + double Sigma=_ui->Sigma->value(); + double threshold=_ui->threshold->value(); + double radius=_ui->radius->value(); + + QString outfilename="filter"; + for (auto component : _components) + outfilename.append(QString("_%1").arg(component->getName())); + + // 确定是否保存结果文件 + QMessageBox::StandardButton result=QMessageBox::critical(this, "info","save as result ?"); + QString filepath= JoinPath(Setting::BusAPI::instance()->getWorkingDir() ,outfilename+"_tmep.pcd"); + QString AbFileName; + if(result==QMessageBox::StandardButton::Ok||result==QMessageBox::StandardButton::Yes){ + QStringList suffixlist = IO::IOConfigure::getPclExporters(); + if(suffixlist.isEmpty()) { + QMessageBox::warning(this, tr("Warning"), tr("The MeshPlugin is not installed !")); + return; + } + + if(MeshData::MeshData::getInstance()->getKernalCount() == 0) { + QMessageBox::warning(this, tr("Warning"), tr("No one has any grid!")); + return; + } + + QStringList meshsuffix = ConfigOption::ConfigOption::getInstance() + ->getMeshConfig() + ->getExportSuffix(ConfigOption::MeshDataType::PointCloud) + .split(";"); + QStringList list; + + for(QString s : meshsuffix) { + for(int i = 0; i < suffixlist.size(); i++) { + QString suffix = suffixlist.at(i); + if(suffix.contains(s)) + list.append(suffix); + } + } + + std::sort(list.begin(), list.end()); + QString suffixes = list.join(";;"); + QString workDir = Setting::BusAPI::instance()->getWorkingDir(); + QFileDialog dlg(this, tr("Export Pcl"), workDir, suffixes); + dlg.setAcceptMode(QFileDialog::AcceptSave); + if(dlg.exec() != QFileDialog::FileName) + return; + + QString aSuffix = dlg.selectedNameFilter(); + QString aFileName = dlg.selectedFiles().join(","); + if(!(aFileName.isEmpty())){ + filepath=aFileName; + + }else{} + + AbFileName=filepath; + QTextCodec *codec = QTextCodec::codecForName("GB18030"); + QByteArray ba = codec->fromUnicode(filepath); + + std::string outFileName=ba.data(); + + }else{ // 不保存成点云数据 + + } + + // 启动线程 + auto pclfilter = new WBFZ::PCLGuassFilter( + AbFileName,WBFZ::PointCloudOperation::POINTCLOUD_FILTER,_mainWindow,componentIds, Sigma, threshold,radius); + ModuleBase::ThreadControl* tc = new ModuleBase::ThreadControl(pclfilter); + emit tc->threadStart(); // emit MSHwriter->start(); + + + QFDialog::accept(); + } + + void DialogPCLGuassFilter::selectedComponentsSlot(QList components) + { + for (MeshData::MeshSet *set : components) + { + if (_components.contains(set)) + continue; + _components.append(set); + _ui->listWidget->addItem(set->getName()); + } + } + + void DialogPCLGuassFilter::customContextMenuRequestedSlot(const QPoint &point) + { + QListWidgetItem *curItem = _ui->listWidget->itemAt(point); + if (!curItem) + return; + + QMenu *menu = new QMenu(this); + QAction *deleteItem = new QAction(tr("delete this item")); + menu->addAction(deleteItem); + connect(menu, &QMenu::triggered, [=]() + { removeCurrentItem(curItem); }); + menu->exec(QCursor::pos()); + } + + void DialogPCLGuassFilter::removeCurrentItem(QListWidgetItem *curItem) + { + auto meshData = MeshData::MeshData::getInstance(); + auto meshSet = meshData->getMeshSetByName(curItem->text()); + if (!meshSet) + return; + _components.removeOne(meshSet); + _ui->listWidget->removeItemWidget(curItem); + delete curItem; + } + + +} // namespace MainWidget +WBFZ::PCLGuassFilter::PCLGuassFilter(const QString& fileName, WBFZ::PointCloudOperation operation, + GUI::MainWindow* mw, QString componentIds, double sigma, + double threshold,double radius) + : PointCloudThreadBase(fileName, operation, mw) + , _fileName(fileName) + , _operation(operation) + , _componentIds(componentIds) + , _sigma(sigma) + , _threshold(threshold) + , _radius(radius) +{ +} +vtkDataSet* WBFZ::PCLGuassFilter::filter() +{ + return PointCloudThreadBase::filter(); +} +vtkDataSet* WBFZ::PCLGuassFilter::PCLGuassFilterAlg(QString componentIds, double sigma, + double threshold,double radius) +{ + emit _mainwindow->printMessage(Common::Message::Normal,"PCLGuassFilterAlg"); + // 获取vtdataset + QStringList qCompontIds = QString(componentIds).split(','); + + MeshData::MeshSet* meshSet = NULL; + MeshData::MeshKernal* meshKernal = NULL; + MeshData::MeshData* meshData = MeshData::MeshData::getInstance(); + QString kernalName, transformedName, setType, ids; + + // 筛选其中的点云数据 + // 创建 vtkCellDataToPointData 过滤器 + vtkSmartPointer cellToPointFilter = vtkSmartPointer::New(); + + QString outfilename; + for(QString compontId : qCompontIds) { + meshSet = meshData->getMeshSetByID(compontId.toInt()); + DebugInfo("point count %d : %d ",compontId.toInt(),meshSet==nullptr); + if(!meshSet) + continue; + outfilename=meshSet->getName(); + vtkPolyData* temppolyData=PointCloudOperator::PointCloudCommon::meshSetToVtkDataset(meshSet); + cellToPointFilter->SetInputData(temppolyData); + DebugInfo("point count %d : %d ",compontId.toInt(),temppolyData==nullptr); + } + + // 执行过滤操作 + cellToPointFilter->Update(); + DebugInfo("cellToPointFilter "); + // 获取过滤后的 vtkPolyData + vtkPolyData* outpolyData = cellToPointFilter->GetOutput(); + DebugInfo("outpolyData "); + + + pcl::PointCloud::Ptr cloud_with_rgba(new pcl::PointCloud); + pcl::PointCloud::Ptr cloud_filtered(new pcl::PointCloud); + pcl::io::vtkPolyDataToPointCloud(outpolyData,*cloud_with_rgba); + // 创建滤波器对象 + + + + /*double radius = 0.02;*/ + // Set up the Gaussian Kernel + pcl::filters::GaussianKernel::Ptr kernel( + new pcl::filters::GaussianKernel); + (*kernel).setSigma(sigma); + (*kernel).setThresholdRelativeToSigma(threshold); + emit _mainwindow->printMessage(Common::Message::Normal,"Kernel made" ); + + // Set up the KDTree + pcl::search::KdTree::Ptr kdtree( + new pcl::search::KdTree); + (*kdtree).setInputCloud(cloud_with_rgba); + emit _mainwindow->printMessage(Common::Message::Normal,"KdTree made" ); + + // Set up the Convolution Filter + pcl::filters::Convolution3D< + pcl::PointXYZRGBA, + pcl::PointXYZRGBA, + pcl::filters::GaussianKernel> + convolution; + convolution.setKernel(*kernel); + convolution.setInputCloud(cloud_with_rgba); + convolution.setSearchMethod(kdtree); + convolution.setRadiusSearch(radius); + convolution.setNumberOfThreads( + 10); // important! Set Thread number for openMP + emit _mainwindow->printMessage(Common::Message::Normal,"Convolution Start"); + convolution.convolve(*cloud_filtered); + emit _mainwindow->printMessage(Common::Message::Normal,"Convoluted" ); + + + + // 转换处理结果 + vtkPolyData* polydata=nullptr; + polydata=vtkPolyData::New(); // 创建新的指针,智能指针会释放 + pcl::io::pointCloudTovtkPolyData(*cloud_filtered,polydata); + vtkDataSet* dataset= vtkDataSet::SafeDownCast(polydata); // 默认完成 vtkpolydata --> vtkdataset + size_t pointCount = dataset->GetNumberOfPoints(); + if(pointCount==0){ + return nullptr; + } + + emit _mainwindow->printMessage(Common::Message::Normal,"PCLGuassFilterAlg successfully!! Point Count : "+QString::number(pointCount)); + outpolyData->Delete(); // 释放指针 + + QString filepath=_fileName; + + // 加载文件 + QFileInfo info(filepath); + QString name = info.fileName(); + QString path = info.filePath(); + QString suffix = info.suffix().toLower(); + QTextCodec *codec = QTextCodec::codecForName("GB18030"); + QByteArray ba = codec->fromUnicode(filepath); + + std::string outFileName=ba.data(); + if (suffix == "pcd") + { + pcl::io::savePCDFileBinary(outFileName,*cloud_filtered); + } + else if (suffix == "ply") + { + pcl::io::savePLYFileBinary(outFileName,*cloud_filtered); + } + else{} + return dataset; +} +WBFZ::PCLGuassFilter::~PCLGuassFilter() {} diff --git a/src/MainWidgets/DialogPCLGuassFilter.h b/src/PluginWBFZExchangePlugin/DialogPCLGuassFilter.h similarity index 60% rename from src/MainWidgets/DialogPCLGuassFilter.h rename to src/PluginWBFZExchangePlugin/DialogPCLGuassFilter.h index 0ffe40c..b84a2d8 100644 --- a/src/MainWidgets/DialogPCLGuassFilter.h +++ b/src/PluginWBFZExchangePlugin/DialogPCLGuassFilter.h @@ -10,9 +10,13 @@ #ifndef LAMPCAE_DIALOGPCLGUASSFILTER_H #define LAMPCAE_DIALOGPCLGUASSFILTER_H -#include "mainWidgetsAPI.h" +#include "WBFZExchangePluginAPI.h" #include "SelfDefObject/QFDialog.h" -#include "DialogVTKTransform.h" +#include "MainWidgets/DialogVTKTransform.h" +#include "PointCloudThreadBase.h" +namespace WBFZ{ + class PointCloudThreadBase; +} class QListWidgetItem; @@ -25,10 +29,38 @@ namespace MeshData { class MeshSet; } + + + +namespace WBFZ{ + class PCLGuassFilter : public PointCloudThreadBase + { + public: + PCLGuassFilter(const QString &fileName, PointCloudOperation operation, GUI::MainWindow *mw, QString componentIds, double sigma,double threshold,double radius); + ~PCLGuassFilter(); + private: + vtkDataSet* filter() override; + vtkDataSet* PCLGuassFilterAlg(QString componentIds,double sigmaR,double sigmaS,double radius); + private: + QString _fileName; + PointCloudOperation _operation; + QString _componentIds; + double _sigma; + double _threshold; + double _radius; + + }; +} + + + + + + namespace MainWidget { class DialogSelectComponents; - class MAINWIDGETSAPI DialogPCLGuassFilter : public QFDialog { + class DialogPCLGuassFilter : public QFDialog { Q_OBJECT public: @@ -37,7 +69,7 @@ namespace MainWidget { private: void removeCurrentItem(QListWidgetItem* curItem); signals: // 这里采用信号来直接与 主界面通信,避免参数浪费 - void excuteAlg(QString componentIds,double sigma,double threshold); + void excuteAlg(QString componentIds,double sigma,double threshold,double radius); private slots: virtual void accept(); diff --git a/src/MainWidgets/DialogPCLGuassFilter.ui b/src/PluginWBFZExchangePlugin/DialogPCLGuassFilter.ui similarity index 85% rename from src/MainWidgets/DialogPCLGuassFilter.ui rename to src/PluginWBFZExchangePlugin/DialogPCLGuassFilter.ui index 4490332..b3f16f6 100644 --- a/src/MainWidgets/DialogPCLGuassFilter.ui +++ b/src/PluginWBFZExchangePlugin/DialogPCLGuassFilter.ui @@ -7,7 +7,7 @@ 0 0 600 - 446 + 601 @@ -128,35 +128,13 @@ 600 - 120 + 200 params - - - - - 238 - 25 - - - - - 238 - 25 - - - - -360.000000000000000 - - - 360.000000000000000 - - - @@ -176,8 +154,8 @@ - - + + 238 @@ -217,6 +195,69 @@ + + + + + 238 + 25 + + + + + 238 + 25 + + + + -360.000000000000000 + + + 360.000000000000000 + + + + + + + + 91 + 25 + + + + + 220 + 25 + + + + search radius : + + + + + + + + 238 + 25 + + + + + 238 + 25 + + + + -360.000000000000000 + + + 360.000000000000000 + + + diff --git a/src/PluginWBFZExchangePlugin/DialogPCLRadiusOutlierRemoval.cpp b/src/PluginWBFZExchangePlugin/DialogPCLRadiusOutlierRemoval.cpp new file mode 100644 index 0000000..7f7f727 --- /dev/null +++ b/src/PluginWBFZExchangePlugin/DialogPCLRadiusOutlierRemoval.cpp @@ -0,0 +1,296 @@ +/** + * @file DialogPCLStatisticalRemoveFilter.cpp + * @brief None + * @author 陈增辉 (3045316072@qq.com) + * @version 2.5.0 + * @date 2024/4/5 + * @copyright Copyright (c) Since 2024 中科卫星应用研究院 All rights reserved. + */ + +// You may need to build the project (run Qt uic code generator) to get +// "ui_DialogPCLStatisticalRemoveFilter.h" resolved + +#include "DialogPCLRadiusOutlierRemoval.h" +#include "ui_DialogPCLRadiusOutlierRemoval.h" + +#include "PythonModule/PyAgent.h" +#include "MeshData/meshSingleton.h" +#include "MeshData/meshSet.h" +#include +#include +#include +#include +#include +#include +#include +#include "MeshData/meshKernal.h" +#include "PointCloudOperator/PointCloudCommon.h" +#include "Settings/BusAPI.h" +#include "BaseTool.h" +#include "IO/IOConfig.h" +#include "ModuleBase/ThreadControl.h" +#include "ConfigOptions/ConfigOptions.h" +#include "ConfigOptions/MeshConfig.h" +#include "Common/DebugLogger.h" + +namespace MainWidget { + DialogPCLRadiusOutlierRemoval::DialogPCLRadiusOutlierRemoval(GUI::MainWindow *parent) + : QFDialog(parent), + _ui(new Ui::DialogPCLRadiusOutlierRemoval), + _mw(parent), + _selectdlg(new DialogSelectComponents(parent)) + { + _ui->setupUi(this); + _ui->geoSelectPoint->setToolTip(tr("Clicked Button Selected Components")); + setWindowTitle(tr("Radius Outlier Removal")); + _ui->listWidget->setContextMenuPolicy(Qt::CustomContextMenu); + + + connect(_ui->geoSelectPoint, &QPushButton::clicked, [=]() + { _selectdlg->clearSelectItems(); _selectdlg->exec(); }); + connect(_selectdlg, SIGNAL(selectedComponentsSig(QList)), this, SLOT(selectedComponentsSlot(QList))); + connect(_ui->listWidget, SIGNAL(customContextMenuRequested(const QPoint &)), this, SLOT(customContextMenuRequestedSlot(const QPoint &))); + + } + + DialogPCLRadiusOutlierRemoval::~DialogPCLRadiusOutlierRemoval() + { + delete _ui; + _ui = NULL; + delete _selectdlg; + _selectdlg = NULL; + } + + void DialogPCLRadiusOutlierRemoval::accept() + { + if (_components.size() == 0) + return; + + QString componentIds, rotate, moveLocation, scale; + for (auto component : _components) + componentIds.append(QString(",%1").arg(component->getID())); + componentIds.remove(0, 1); + + + + double RadiusSearch=_ui->RadiusSearch->value(); + double MinNeighborsInRadius=_ui->MinNeighborsInRadius->value(); + + + QString outfilename="filter"; + for (auto component : _components) + outfilename.append(QString("_%1").arg(component->getName())); + + // 确定是否保存结果文件 + QMessageBox::StandardButton result=QMessageBox::critical(this, "info","save as result ?"); + QString filepath= JoinPath(Setting::BusAPI::instance()->getWorkingDir() ,outfilename+"_tmep.pcd"); + QString AbFileName; + if(result==QMessageBox::StandardButton::Ok||result==QMessageBox::StandardButton::Yes){ + QStringList suffixlist = IO::IOConfigure::getPclExporters(); + if(suffixlist.isEmpty()) { + QMessageBox::warning(this, tr("Warning"), tr("The MeshPlugin is not installed !")); + return; + } + + if(MeshData::MeshData::getInstance()->getKernalCount() == 0) { + QMessageBox::warning(this, tr("Warning"), tr("No one has any grid!")); + return; + } + + QStringList meshsuffix = ConfigOption::ConfigOption::getInstance() + ->getMeshConfig() + ->getExportSuffix(ConfigOption::MeshDataType::PointCloud) + .split(";"); + QStringList list; + + for(QString s : meshsuffix) { + for(int i = 0; i < suffixlist.size(); i++) { + QString suffix = suffixlist.at(i); + if(suffix.contains(s)) + list.append(suffix); + } + } + + std::sort(list.begin(), list.end()); + QString suffixes = list.join(";;"); + QString workDir = Setting::BusAPI::instance()->getWorkingDir(); + QFileDialog dlg(this, tr("Export Pcl"), workDir, suffixes); + dlg.setAcceptMode(QFileDialog::AcceptSave); + if(dlg.exec() != QFileDialog::FileName) + return; + + QString aSuffix = dlg.selectedNameFilter(); + QString aFileName = dlg.selectedFiles().join(","); + if(!(aFileName.isEmpty())){ + filepath=aFileName; + + }else{} + + AbFileName=filepath; + QTextCodec *codec = QTextCodec::codecForName("GB18030"); + QByteArray ba = codec->fromUnicode(filepath); + + std::string outFileName=ba.data(); + + }else{ // 不保存成点云数据 + + } + + // 启动线程 + auto pclfilter = new WBFZ::PCLRadiusOutlierRemoval( + AbFileName,WBFZ::PointCloudOperation::POINTCLOUD_FILTER,_mainWindow,componentIds, RadiusSearch,MinNeighborsInRadius); + ModuleBase::ThreadControl* tc = new ModuleBase::ThreadControl(pclfilter); + emit tc->threadStart(); // emit MSHwriter->start(); + + + + QFDialog::accept(); + } + + void DialogPCLRadiusOutlierRemoval::selectedComponentsSlot(QList components) + { + for (MeshData::MeshSet *set : components) + { + if (_components.contains(set)) + continue; + _components.append(set); + _ui->listWidget->addItem(set->getName()); + } + } + + void DialogPCLRadiusOutlierRemoval::customContextMenuRequestedSlot(const QPoint &point) + { + QListWidgetItem *curItem = _ui->listWidget->itemAt(point); + if (!curItem) + return; + + QMenu *menu = new QMenu(this); + QAction *deleteItem = new QAction(tr("delete this item")); + menu->addAction(deleteItem); + connect(menu, &QMenu::triggered, [=]() + { removeCurrentItem(curItem); }); + menu->exec(QCursor::pos()); + } + + void DialogPCLRadiusOutlierRemoval::removeCurrentItem(QListWidgetItem *curItem) + { + auto meshData = MeshData::MeshData::getInstance(); + auto meshSet = meshData->getMeshSetByName(curItem->text()); + if (!meshSet) + return; + _components.removeOne(meshSet); + _ui->listWidget->removeItemWidget(curItem); + delete curItem; + } + + +} // namespace MainWidget + + + +namespace WBFZ{ + WBFZ::PCLRadiusOutlierRemoval::PCLRadiusOutlierRemoval(const QString &fileName, WBFZ::PointCloudOperation operation, + GUI::MainWindow* mw, QString componentIds, + double RadiusSearch,double MinNeighborsInRadius) + : PointCloudThreadBase(fileName, operation, mw) + , _fileName(fileName) + , _operation(operation) + , _componentIds(componentIds) + , _RadiusSearch(RadiusSearch) + , _MinNeighborsInRadius(MinNeighborsInRadius) + + { + + } + + vtkDataSet* WBFZ::PCLRadiusOutlierRemoval::PCLRadiusOutlierRemovalAlg(QString componentIds, double RadiusSearch, + double MinNeighborsInRadius) + { + emit _mainwindow->printMessage(Common::Message::Normal,"PCLRadiusOutlierRemovalAlg"); + // 获取vtdataset + QStringList qCompontIds = QString(componentIds).split(','); + + MeshData::MeshSet* meshSet = NULL; + MeshData::MeshKernal* meshKernal = NULL; + MeshData::MeshData* meshData = MeshData::MeshData::getInstance(); + QString kernalName, transformedName, setType, ids; + + // 筛选其中的点云数据 + // 创建 vtkCellDataToPointData 过滤器 + vtkSmartPointer cellToPointFilter = vtkSmartPointer::New(); + + QString outfilename; + for(QString compontId : qCompontIds) { + meshSet = meshData->getMeshSetByID(compontId.toInt()); + DebugInfo("point count %d : %d ",compontId.toInt(),meshSet==nullptr); + if(!meshSet) + continue; + outfilename=meshSet->getName(); + vtkPolyData* temppolyData=PointCloudOperator::PointCloudCommon::meshSetToVtkDataset(meshSet); + cellToPointFilter->SetInputData(temppolyData); + DebugInfo("point count %d : %d ",compontId.toInt(),temppolyData==nullptr); + } + + // 执行过滤操作 + cellToPointFilter->Update(); + DebugInfo("cellToPointFilter "); + // 获取过滤后的 vtkPolyData + vtkPolyData* outpolyData = cellToPointFilter->GetOutput(); + DebugInfo("outpolyData "); + + + + pcl::PointCloud::Ptr cloud_with_rgba(new pcl::PointCloud); + pcl::PointCloud::Ptr cloud_filtered(new pcl::PointCloud); + pcl::io::vtkPolyDataToPointCloud(outpolyData,*cloud_with_rgba); + + + // 创建滤波器对象 + pcl::RadiusOutlierRemoval sor; + sor.setInputCloud(cloud_with_rgba); //设置待滤波的点云 + sor.setRadiusSearch(RadiusSearch); //设置在进行统计时考虑查询点邻居点数,K个最近邻点 + sor.setMinNeighborsInRadius(MinNeighborsInRadius); //设置判断是否为离群点的阈值 + sor.filter(*cloud_filtered); //将滤波结果保存在cloud_filtered中 + + // 转换处理结果 + vtkPolyData* polydata=nullptr; + polydata=vtkPolyData::New(); // 创建新的指针,智能指针会释放 + pcl::io::pointCloudTovtkPolyData(*cloud_filtered,polydata); + vtkDataSet* dataset= vtkDataSet::SafeDownCast(polydata); // 默认完成 vtkpolydata --> vtkdataset + size_t pointCount = dataset->GetNumberOfPoints(); + if(pointCount==0){ + return nullptr; + } + + emit _mainwindow->printMessage(Common::Message::Normal,"PCLRadiusOutlierRemovalAlg successfully!! Point Count : "+QString::number(pointCount)); + outpolyData->Delete(); // 释放指针 + + QString filepath=_fileName; + + // 加载文件 + QFileInfo info(filepath); + QString name = info.fileName(); + QString path = info.filePath(); + QString suffix = info.suffix().toLower(); + QTextCodec *codec = QTextCodec::codecForName("GB18030"); + QByteArray ba = codec->fromUnicode(filepath); + + std::string outFileName=ba.data(); + if (suffix == "pcd") + { + pcl::io::savePCDFileBinary(outFileName,*cloud_filtered); + } + else if (suffix == "ply") + { + pcl::io::savePLYFileBinary(outFileName,*cloud_filtered); + } + else{} + return dataset; + } + vtkDataSet* PCLRadiusOutlierRemoval::filter() + { + return PCLRadiusOutlierRemovalAlg( _componentIds, _RadiusSearch,_MinNeighborsInRadius); + } + PCLRadiusOutlierRemoval::~PCLRadiusOutlierRemoval() {} + +} \ No newline at end of file diff --git a/src/MainWidgets/DialogPCLRadiusOutlierRemoval.h b/src/PluginWBFZExchangePlugin/DialogPCLRadiusOutlierRemoval.h similarity index 61% rename from src/MainWidgets/DialogPCLRadiusOutlierRemoval.h rename to src/PluginWBFZExchangePlugin/DialogPCLRadiusOutlierRemoval.h index c730b26..842f181 100644 --- a/src/MainWidgets/DialogPCLRadiusOutlierRemoval.h +++ b/src/PluginWBFZExchangePlugin/DialogPCLRadiusOutlierRemoval.h @@ -10,9 +10,13 @@ #ifndef LAMPCAE_DIALOGPCLRADIUSOUTLIERREMOVAL_H #define LAMPCAE_DIALOGPCLRADIUSOUTLIERREMOVAL_H -#include "mainWidgetsAPI.h" +#include "WBFZExchangePluginAPI.h" #include "SelfDefObject/QFDialog.h" -#include "DialogVTKTransform.h" +#include "MainWidgets/DialogVTKTransform.h" +#include "PointCloudThreadBase.h" +namespace WBFZ{ + class PointCloudThreadBase; +} class QListWidgetItem; @@ -25,10 +29,32 @@ namespace MeshData { class MeshSet; } + + +namespace WBFZ{ + class PCLRadiusOutlierRemoval : public PointCloudThreadBase + { + public: + PCLRadiusOutlierRemoval(const QString &fileName, PointCloudOperation operation, GUI::MainWindow *mw, QString componentIds, double RadiusSearch,double MinNeighborsInRadius); + ~PCLRadiusOutlierRemoval(); + private: + vtkDataSet* filter() override; + vtkDataSet* PCLRadiusOutlierRemovalAlg(QString componentIds,double RadiusSearch,double MinNeighborsInRadius); + private: + QString _fileName; + PointCloudOperation _operation; + QString _componentIds; + double _RadiusSearch; + double _MinNeighborsInRadius; + }; +} + + + namespace MainWidget { class DialogSelectComponents; - class MAINWIDGETSAPI DialogPCLRadiusOutlierRemoval : public QFDialog { + class DialogPCLRadiusOutlierRemoval : public QFDialog { Q_OBJECT public: diff --git a/src/MainWidgets/DialogPCLRadiusOutlierRemoval.ui b/src/PluginWBFZExchangePlugin/DialogPCLRadiusOutlierRemoval.ui similarity index 100% rename from src/MainWidgets/DialogPCLRadiusOutlierRemoval.ui rename to src/PluginWBFZExchangePlugin/DialogPCLRadiusOutlierRemoval.ui diff --git a/src/PluginWBFZExchangePlugin/DialogPCLStatisticalRemoveFilter.cpp b/src/PluginWBFZExchangePlugin/DialogPCLStatisticalRemoveFilter.cpp new file mode 100644 index 0000000..eda4897 --- /dev/null +++ b/src/PluginWBFZExchangePlugin/DialogPCLStatisticalRemoveFilter.cpp @@ -0,0 +1,297 @@ +/** + * @file DialogPCLStatisticalRemoveFilter.cpp + * @brief None + * @author 陈增辉 (3045316072@qq.com) + * @version 2.5.0 + * @date 2024/4/5 + * @copyright Copyright (c) Since 2024 中科卫星应用研究院 All rights reserved. + */ + +// You may need to build the project (run Qt uic code generator) to get +// "ui_DialogPCLStatisticalRemoveFilter.h" resolved + +#include "DialogPCLStatisticalRemoveFilter.h" +#include "ui_DialogPCLStatisticalRemoveFilter.h" + +#include "PythonModule/PyAgent.h" +#include "MeshData/meshSingleton.h" +#include "MeshData/meshSet.h" +#include "Settings/BusAPI.h" +#include "BaseTool.h" +#include "DialogPCLBilateralFilter.h" +#include "ModuleBase/ThreadControl.h" +#include "IO/IOConfig.h" +#include +#include +#include "ConfigOptions/ConfigOptions.h" +#include "ConfigOptions/MeshConfig.h" +#include +#include +#include +#include +#include "MeshData/meshKernal.h" +#include "PointCloudOperator/PointCloudCommon.h" +#include "Settings/BusAPI.h" +#include "BaseTool.h" +#include "IO/IOConfig.h" +#include "Common/DebugLogger.h" +//auto meshData = MeshData::MeshData::getInstance(); + + +namespace MainWidget { + DialogPCLStatisticalRemoveFilter::DialogPCLStatisticalRemoveFilter(GUI::MainWindow *parent) + : QFDialog(parent), + _ui(new Ui::DialogPCLStatisticalRemoveFilter), + _mw(parent), + _selectdlg(new DialogSelectComponents(parent)) + { + _ui->setupUi(this); + _ui->geoSelectPoint->setToolTip(tr("Clicked Button Selected Components")); + setWindowTitle(tr("Statistical Remove Filter")); + _ui->listWidget->setContextMenuPolicy(Qt::CustomContextMenu); + + + connect(_ui->geoSelectPoint, &QPushButton::clicked, [=]() + { _selectdlg->clearSelectItems(); _selectdlg->exec(); }); + connect(_selectdlg, SIGNAL(selectedComponentsSig(QList)), this, SLOT(selectedComponentsSlot(QList))); + connect(_ui->listWidget, SIGNAL(customContextMenuRequested(const QPoint &)), this, SLOT(customContextMenuRequestedSlot(const QPoint &))); + } + + DialogPCLStatisticalRemoveFilter::~DialogPCLStatisticalRemoveFilter() + { + delete _ui; + _ui = NULL; + delete _selectdlg; + _selectdlg = NULL; + } + + + + + void DialogPCLStatisticalRemoveFilter::accept() + { + if (_components.size() == 0) + return; + + QString componentIds, rotate, moveLocation, scale; + for (auto component : _components) { + componentIds.append(QString(",%1").arg(component->getID())); + } + componentIds.remove(0, 1); + + double MeanK=_ui->MeanK->value(); + double stddev=_ui->Stddev->value(); + + QString outfilename="filter"; + for (auto component : _components) + outfilename.append(QString("_%1").arg(component->getName())); + + // 确定是否保存结果文件 + QMessageBox::StandardButton result=QMessageBox::critical(this, "info","save as result ?"); + QString filepath= JoinPath(Setting::BusAPI::instance()->getWorkingDir() ,outfilename+"_tmep.pcd"); + QString AbFileName; + if(result==QMessageBox::StandardButton::Ok||result==QMessageBox::StandardButton::Yes){ + QStringList suffixlist = IO::IOConfigure::getPclExporters(); + if(suffixlist.isEmpty()) { + QMessageBox::warning(this, tr("Warning"), tr("The MeshPlugin is not installed !")); + return; + } + + if(MeshData::MeshData::getInstance()->getKernalCount() == 0) { + QMessageBox::warning(this, tr("Warning"), tr("No one has any grid!")); + return; + } + + QStringList meshsuffix = ConfigOption::ConfigOption::getInstance() + ->getMeshConfig() + ->getExportSuffix(ConfigOption::MeshDataType::PointCloud) + .split(";"); + QStringList list; + + for(QString s : meshsuffix) { + for(int i = 0; i < suffixlist.size(); i++) { + QString suffix = suffixlist.at(i); + if(suffix.contains(s)) + list.append(suffix); + } + } + + std::sort(list.begin(), list.end()); + QString suffixes = list.join(";;"); + QString workDir = Setting::BusAPI::instance()->getWorkingDir(); + QFileDialog dlg(this, tr("Export Pcl"), workDir, suffixes); + dlg.setAcceptMode(QFileDialog::AcceptSave); + if(dlg.exec() != QFileDialog::FileName) + return; + + QString aSuffix = dlg.selectedNameFilter(); + QString aFileName = dlg.selectedFiles().join(","); + if(!(aFileName.isEmpty())){ + filepath=aFileName; + + }else{} + + AbFileName=filepath; + QTextCodec *codec = QTextCodec::codecForName("GB18030"); + QByteArray ba = codec->fromUnicode(filepath); + + std::string outFileName=ba.data(); + + }else{ // 不保存成点云数据 + + } + + // 启动线程 + auto pclfilter = new WBFZ::PCLStatisticalRemoveFilter( + AbFileName,WBFZ::PointCloudOperation::POINTCLOUD_FILTER,_mainWindow,componentIds, MeanK,stddev); + ModuleBase::ThreadControl* tc = new ModuleBase::ThreadControl(pclfilter); + emit tc->threadStart(); // emit MSHwriter->start(); + + QFDialog::accept(); + } + + void DialogPCLStatisticalRemoveFilter::selectedComponentsSlot(QList components) + { + for (MeshData::MeshSet *set : components) + { + if (_components.contains(set)) + continue; + _components.append(set); + _ui->listWidget->addItem(set->getName()); + } + } + + void DialogPCLStatisticalRemoveFilter::customContextMenuRequestedSlot(const QPoint &point) + { + QListWidgetItem *curItem = _ui->listWidget->itemAt(point); + if (!curItem) + return; + + QMenu *menu = new QMenu(this); + QAction *deleteItem = new QAction(tr("delete this item")); + menu->addAction(deleteItem); + connect(menu, &QMenu::triggered, [=]() + { removeCurrentItem(curItem); }); + menu->exec(QCursor::pos()); + } + + void DialogPCLStatisticalRemoveFilter::removeCurrentItem(QListWidgetItem *curItem) + { + auto meshData = MeshData::MeshData::getInstance(); + auto meshSet = meshData->getMeshSetByName(curItem->text()); + if (!meshSet) + return; + _components.removeOne(meshSet); + _ui->listWidget->removeItemWidget(curItem); + delete curItem; + } + + + + +} // namespace MainWidget + + +namespace WBFZ{ + WBFZ::PCLStatisticalRemoveFilter::PCLStatisticalRemoveFilter(const QString &fileName, WBFZ::PointCloudOperation operation, + GUI::MainWindow* mw, QString componentIds, + double MeanK, double StddevThresh) + : PointCloudThreadBase(fileName, operation, mw) + , _fileName(fileName) + , _operation(operation) + , _componentIds(componentIds) + , _MeanK(MeanK) + , _StddevThresh(StddevThresh) + + { + + } + + vtkDataSet* WBFZ::PCLStatisticalRemoveFilter::PCLStatisticalRemoveFilterAlg(QString componentIds, double MeanK, + double StddevThresh) + { + emit _mainwindow->printMessage(Common::Message::Normal,"PCLStatisticalRemoveFilterAlg"); + // 获取vtdataset + QStringList qCompontIds = QString(componentIds).split(','); + + MeshData::MeshSet* meshSet = NULL; + MeshData::MeshKernal* meshKernal = NULL; + MeshData::MeshData* meshData = MeshData::MeshData::getInstance(); + QString kernalName, transformedName, setType, ids; + + // 筛选其中的点云数据 + // 创建 vtkCellDataToPointData 过滤器 + vtkSmartPointer cellToPointFilter = vtkSmartPointer::New(); + + QString outfilename; + for(QString compontId : qCompontIds) { + meshSet = meshData->getMeshSetByID(compontId.toInt()); + DebugInfo("point count %d : %d ",compontId.toInt(),meshSet==nullptr); + if(!meshSet) + continue; + outfilename=meshSet->getName(); + vtkPolyData* temppolyData=PointCloudOperator::PointCloudCommon::meshSetToVtkDataset(meshSet); + cellToPointFilter->SetInputData(temppolyData); + DebugInfo("point count %d : %d ",compontId.toInt(),temppolyData==nullptr); + } + + // 执行过滤操作 + cellToPointFilter->Update(); + DebugInfo("cellToPointFilter "); + // 获取过滤后的 vtkPolyData + vtkPolyData* outpolyData = cellToPointFilter->GetOutput(); + DebugInfo("outpolyData "); + + + pcl::PointCloud::Ptr cloud_with_rgba(new pcl::PointCloud); + pcl::PointCloud::Ptr cloud_filtered(new pcl::PointCloud); + pcl::io::vtkPolyDataToPointCloud(outpolyData,*cloud_with_rgba); + // 创建滤波器对象 + pcl::StatisticalOutlierRemoval sor; + sor.setInputCloud(cloud_with_rgba); //设置待滤波的点云 + sor.setMeanK(MeanK); //设置在进行统计时考虑查询点邻居点数,K个最近邻点 + sor.setStddevMulThresh(StddevThresh); //设置判断是否为离群点的阈值 + sor.filter(*cloud_filtered); //将滤波结果保存在cloud_filtered中 + + // 转换处理结果 + vtkPolyData* polydata=nullptr; + polydata=vtkPolyData::New(); // 创建新的指针,智能指针会释放 + pcl::io::pointCloudTovtkPolyData(*cloud_filtered,polydata); + vtkDataSet* dataset= vtkDataSet::SafeDownCast(polydata); // 默认完成 vtkpolydata --> vtkdataset + size_t pointCount = dataset->GetNumberOfPoints(); + if(pointCount==0){ + return nullptr; + } + + emit _mainwindow->printMessage(Common::Message::Normal,"PCLStatisticalRemoveFilterAlg successfully!! Point Count : "+QString::number(pointCount)); + outpolyData->Delete(); // 释放指针 + + QString filepath=_fileName; + + // 加载文件 + QFileInfo info(filepath); + QString name = info.fileName(); + QString path = info.filePath(); + QString suffix = info.suffix().toLower(); + QTextCodec *codec = QTextCodec::codecForName("GB18030"); + QByteArray ba = codec->fromUnicode(filepath); + + std::string outFileName=ba.data(); + if (suffix == "pcd") + { + pcl::io::savePCDFileBinary(outFileName,*cloud_filtered); + } + else if (suffix == "ply") + { + pcl::io::savePLYFileBinary(outFileName,*cloud_filtered); + } + else{} + return dataset; + } + vtkDataSet* PCLStatisticalRemoveFilter::filter() + { + return PCLStatisticalRemoveFilterAlg( _componentIds, _MeanK,_StddevThresh); + } + PCLStatisticalRemoveFilter::~PCLStatisticalRemoveFilter() {} + +} \ No newline at end of file diff --git a/src/MainWidgets/DialogPCLStatisticalRemoveFilter.h b/src/PluginWBFZExchangePlugin/DialogPCLStatisticalRemoveFilter.h similarity index 59% rename from src/MainWidgets/DialogPCLStatisticalRemoveFilter.h rename to src/PluginWBFZExchangePlugin/DialogPCLStatisticalRemoveFilter.h index 245f9d9..7f57a02 100644 --- a/src/MainWidgets/DialogPCLStatisticalRemoveFilter.h +++ b/src/PluginWBFZExchangePlugin/DialogPCLStatisticalRemoveFilter.h @@ -10,9 +10,13 @@ #ifndef LAMPCAE_DIALOGPCLSTATISTICALREMOVEFILTER_H #define LAMPCAE_DIALOGPCLSTATISTICALREMOVEFILTER_H -#include "mainWidgetsAPI.h" +#include "WBFZExchangePluginAPI.h" #include "SelfDefObject/QFDialog.h" -#include "DialogVTKTransform.h" +#include "MainWidgets/DialogVTKTransform.h" +#include "PointCloudThreadBase.h" +namespace WBFZ{ + class PointCloudThreadBase; +} class QListWidgetItem; @@ -25,10 +29,31 @@ namespace MeshData { class MeshSet; } + +namespace WBFZ{ + class PCLStatisticalRemoveFilter : public PointCloudThreadBase + { + public: + PCLStatisticalRemoveFilter(const QString &fileName, PointCloudOperation operation, GUI::MainWindow *mw, QString componentIds, double MeanK,double StddevThresh); + ~PCLStatisticalRemoveFilter(); + private: + vtkDataSet* filter() override; + vtkDataSet* PCLStatisticalRemoveFilterAlg(QString componentIds,double MeanK,double stddev); + private: + QString _fileName; + PointCloudOperation _operation; + QString _componentIds; + double _MeanK; + double _StddevThresh; + + }; +} + + namespace MainWidget { class DialogSelectComponents; - class MAINWIDGETSAPI DialogPCLStatisticalRemoveFilter : public QFDialog { + class DialogPCLStatisticalRemoveFilter : public QFDialog { Q_OBJECT public: @@ -36,8 +61,7 @@ namespace MainWidget { ~DialogPCLStatisticalRemoveFilter(); private: void removeCurrentItem(QListWidgetItem* curItem); - signals: // 这里采用信号来直接与 主界面通信,避免参数浪费 - void excuteAlg(QString componentIds,double MeanK,double stddev); + private slots: virtual void accept(); diff --git a/src/MainWidgets/DialogPCLStatisticalRemoveFilter.ui b/src/PluginWBFZExchangePlugin/DialogPCLStatisticalRemoveFilter.ui similarity index 100% rename from src/MainWidgets/DialogPCLStatisticalRemoveFilter.ui rename to src/PluginWBFZExchangePlugin/DialogPCLStatisticalRemoveFilter.ui diff --git a/src/LAMPTool/FEKOBaseToolClass.cpp b/src/PluginWBFZExchangePlugin/FEKOBaseToolClass.cpp similarity index 86% rename from src/LAMPTool/FEKOBaseToolClass.cpp rename to src/PluginWBFZExchangePlugin/FEKOBaseToolClass.cpp index 934fe3c..5cc0915 100644 --- a/src/LAMPTool/FEKOBaseToolClass.cpp +++ b/src/PluginWBFZExchangePlugin/FEKOBaseToolClass.cpp @@ -1,4 +1,5 @@ -#include "FEKOBaseToolClass.h" +#include "WBFZExchangePluginAPI.h" +#include "FEKOBaseToolClass.h" #include #include "BaseConstVariable.h" #include @@ -14,11 +15,7 @@ - - - - -QString LAMPTOOLAPI FEKOBase::FEKOImageModeenumToString(FEKOBase::FEKOImageMode mode) +QString FEKOBase::FEKOImageModeenumToString(FEKOBase::FEKOImageMode mode) { switch (mode) { case Strip: @@ -34,7 +31,7 @@ QString LAMPTOOLAPI FEKOBase::FEKOImageModeenumToString(FEKOBase::FEKOImageMode return "UNKNOW"; // 默认返回Unknown } -FEKOBase::FEKOCoordinateSystem LAMPTOOLAPI FEKOBase::FEKOCoordinateSystemString2Enum(QString str) +FEKOBase::FEKOCoordinateSystem FEKOBase::FEKOCoordinateSystemString2Enum(QString str) { if (str.toUpper() == "SPHERICAL") { return FEKOBase::Spherical; } else if (str.toUpper() == "CARTESIAN") { return FEKOBase::Cartesian; } @@ -44,7 +41,7 @@ FEKOBase::FEKOCoordinateSystem LAMPTOOLAPI FEKOBase::FEKOCoordinateSystemString2 } -QString LAMPTOOLAPI FEKOBase::QString2FEKOCoordinateSystem(FEKOBase::FEKOCoordinateSystem mode) +QString FEKOBase::QString2FEKOCoordinateSystem(FEKOBase::FEKOCoordinateSystem mode) { switch (mode) { case FEKOBase::Spherical: @@ -57,7 +54,7 @@ QString LAMPTOOLAPI FEKOBase::QString2FEKOCoordinateSystem(FEKOBase::FEKOCoordin } } -FEKOBase::FEKOImageMode LAMPTOOLAPI FEKOBase::FEKOImageModeString2Enum(QString str) +FEKOBase::FEKOImageMode FEKOBase::FEKOImageModeString2Enum(QString str) { if (str.toUpper() == "STRIP") { return FEKOBase::FEKOImageMode::Strip; @@ -75,7 +72,7 @@ FEKOBase::FEKOImageMode LAMPTOOLAPI FEKOBase::FEKOImageModeString2Enum(QString s return FEKOBase::FEKOImageMode::UNKNOW; // 默认返回UNKNOW } -FEKOBase::freqParams LAMPTOOLAPI FEKOBase::getFreqSetting(double centerFreq, double resolution, double bandWidth, double scenceRange, bool isResolution) { +FEKOBase::freqParams FEKOBase::getFreqSetting(double centerFreq, double resolution, double bandWidth, double scenceRange, bool isResolution) { FEKOBase::freqParams result{ 0,0,0 }; { @@ -93,7 +90,7 @@ FEKOBase::freqParams LAMPTOOLAPI FEKOBase::getFreqSetting(double centerFreq, dou return result; } -FEKOBase::FEKOSatelliteParams LAMPTOOLAPI FEKOBase::createFEKOSatelliteParams(double Px, double Py, double Pz, double Vx, double Vy, double Vz, double incidenceAngle, double AzAngle, double theta, double phi, bool isRight, size_t PRFIdx) +FEKOBase::FEKOSatelliteParams FEKOBase::createFEKOSatelliteParams(double Px, double Py, double Pz, double Vx, double Vy, double Vz, double incidenceAngle, double AzAngle, double theta, double phi, bool isRight, size_t PRFIdx) { FEKOBase::FEKOSatelliteParams result{ PRFIdx, @@ -108,7 +105,7 @@ FEKOBase::FEKOSatelliteParams LAMPTOOLAPI FEKOBase::createFEKOSatelliteParams(do return result; } -FEKOBase::FEKOSatelliteParams LAMPTOOLAPI FEKOBase::createFEKOSatelliteParams(SatelliteState pose, double incidenceAngle, double AzAngle, FEKOantPitionDirect antpos, size_t PRFIdx) +FEKOBase::FEKOSatelliteParams FEKOBase::createFEKOSatelliteParams(SatelliteState pose, double incidenceAngle, double AzAngle, FEKOantPitionDirect antpos, size_t PRFIdx) { FEKOBase::FEKOSatelliteParams result{ PRFIdx,pose,incidenceAngle,AzAngle,antpos @@ -116,17 +113,17 @@ FEKOBase::FEKOSatelliteParams LAMPTOOLAPI FEKOBase::createFEKOSatelliteParams(Sa return result; } -FEKOBase::SatelliteState LAMPTOOLAPI FEKOBase::FEKOSatelliteParams2SatelliteState(FEKOSatelliteParams parmas) +FEKOBase::SatelliteState FEKOBase::FEKOSatelliteParams2SatelliteState(FEKOSatelliteParams parmas) { return parmas.pose; } -FEKOBase::FEKOantPitionDirect LAMPTOOLAPI FEKOBase::FEKOSatelliteParams2FEKOantPitionDirect(FEKOSatelliteParams parmas) +FEKOBase::FEKOantPitionDirect FEKOBase::FEKOSatelliteParams2FEKOantPitionDirect(FEKOSatelliteParams parmas) { return parmas.antpos; } -TopoDS_Shape LAMPTOOLAPI FEKOBase::SatellitePos2FEKOAntPos(SatelliteState satepos, double incidenceAngle, double AzAngle, bool isRIGHT, FEKOantPitionDirect* antposition_Direct, TopoDS_Shape antModel) +TopoDS_Shape FEKOBase::SatellitePos2FEKOAntPos(SatelliteState satepos, double incidenceAngle, double AzAngle, bool isRIGHT, FEKOantPitionDirect* antposition_Direct, TopoDS_Shape antModel) { incidenceAngle = incidenceAngle * M_PI / 180; // 转换为弧度 AzAngle = AzAngle * M_PI / 180; // 扫描角度转换为弧度 @@ -267,25 +264,25 @@ TopoDS_Shape LAMPTOOLAPI FEKOBase::SatellitePos2FEKOAntPos(SatelliteState satepo return tempShape; } -bool LAMPTOOLAPI FEKOBase::compareElectricFieldDataInFreq(const ElectricFieldData& a, const ElectricFieldData& b) +bool FEKOBase::compareElectricFieldDataInFreq(const ElectricFieldData& a, const ElectricFieldData& b) { return a.frequency < b.frequency; } -bool LAMPTOOLAPI FEKOBase::comparePRFPluseDataInPRFIdx(const PRFPluseData& a, const PRFPluseData& b) +bool FEKOBase::comparePRFPluseDataInPRFIdx(const PRFPluseData& a, const PRFPluseData& b) { return a.prfidx < b.prfidx; } -LAMPTOOLAPI FEKOBase::NearFieldEchoCSVParser::NearFieldEchoCSVParser() + FEKOBase::NearFieldEchoCSVParser::NearFieldEchoCSVParser() { } -LAMPTOOLAPI FEKOBase::NearFieldEchoCSVParser::~NearFieldEchoCSVParser() + FEKOBase::NearFieldEchoCSVParser::~NearFieldEchoCSVParser() { } -bool LAMPTOOLAPI FEKOBase::NearFieldEchoCSVParser::checkPRFModel() +bool FEKOBase::NearFieldEchoCSVParser::checkPRFModel() { qDebug() << u8"正在检查是否可以采用脉冲计数模式 configuration Name :PRF_{脉冲计数}"; @@ -351,7 +348,7 @@ bool LAMPTOOLAPI FEKOBase::NearFieldEchoCSVParser::checkPRFModel() return true; } -bool LAMPTOOLAPI FEKOBase::NearFieldEchoCSVParser::resizePRFPluse() +bool FEKOBase::NearFieldEchoCSVParser::resizePRFPluse() { qDebug() << u8"根据数据文件,重新整理成脉冲形式"; @@ -441,7 +438,7 @@ bool LAMPTOOLAPI FEKOBase::NearFieldEchoCSVParser::resizePRFPluse() } -bool LAMPTOOLAPI FEKOBase::NearFieldEchoCSVParser::parseCSV(const QString& filePath) +bool FEKOBase::NearFieldEchoCSVParser::parseCSV(const QString& filePath) { std::vector dataList; @@ -607,23 +604,23 @@ bool LAMPTOOLAPI FEKOBase::NearFieldEchoCSVParser::parseCSV(const QString& fileP } -void LAMPTOOLAPI FEKOBase::NearFieldEchoCSVParser::toThetapolar(const QString& filePath) +void FEKOBase::NearFieldEchoCSVParser::toThetapolar(const QString& filePath) { this->toEchoData(filePath, 2); } -void LAMPTOOLAPI FEKOBase::NearFieldEchoCSVParser::toPhiPolar(const QString& filePath) +void FEKOBase::NearFieldEchoCSVParser::toPhiPolar(const QString& filePath) { this->toEchoData(filePath, 1); } -void LAMPTOOLAPI FEKOBase::NearFieldEchoCSVParser::toRPolar(const QString& filePath) +void FEKOBase::NearFieldEchoCSVParser::toRPolar(const QString& filePath) { this->toEchoData(filePath, 0); } -void LAMPTOOLAPI FEKOBase::NearFieldEchoCSVParser::saveCSV(const QString& filePath) +void FEKOBase::NearFieldEchoCSVParser::saveCSV(const QString& filePath) { } @@ -632,7 +629,7 @@ void LAMPTOOLAPI FEKOBase::NearFieldEchoCSVParser::saveCSV(const QString& filePa /// /// 文件路径 /// 0: R,1: phi,2: theta -void LAMPTOOLAPI FEKOBase::NearFieldEchoCSVParser::toEchoData(const QString& filePath, size_t outDataName) +void FEKOBase::NearFieldEchoCSVParser::toEchoData(const QString& filePath, size_t outDataName) { // 脉冲整理 Eigen::MatrixXcd echoData = Eigen::MatrixXcd::Zero(this->prfData.size(), this->freqPoints); @@ -667,7 +664,7 @@ void LAMPTOOLAPI FEKOBase::NearFieldEchoCSVParser::toEchoData(const QString& fil echodataTemp.SaveEchoData(filePath); } -LAMPTOOLAPI FEKOBase::EchoDataClass::EchoDataClass(const FEKOBase::EchoDataClass& inecho) + FEKOBase::EchoDataClass::EchoDataClass(const FEKOBase::EchoDataClass& inecho) { this->echoData = inecho.getEchoData(); @@ -679,69 +676,69 @@ LAMPTOOLAPI FEKOBase::EchoDataClass::EchoDataClass(const FEKOBase::EchoDataClass -LAMPTOOLAPI FEKOBase::EchoDataClass::EchoDataClass() + FEKOBase::EchoDataClass::EchoDataClass() { } -LAMPTOOLAPI FEKOBase::EchoDataClass::~EchoDataClass() + FEKOBase::EchoDataClass::~EchoDataClass() { } -void LAMPTOOLAPI FEKOBase::EchoDataClass::setEchoData(Eigen::MatrixXcd echoData) +void FEKOBase::EchoDataClass::setEchoData(Eigen::MatrixXcd echoData) { this->echoData = echoData; } -Eigen::MatrixXcd LAMPTOOLAPI FEKOBase::EchoDataClass::getEchoData() const +Eigen::MatrixXcd FEKOBase::EchoDataClass::getEchoData() const { return this->echoData; } -void LAMPTOOLAPI FEKOBase::EchoDataClass::setAntPos(Eigen::MatrixXd antPos) +void FEKOBase::EchoDataClass::setAntPos(Eigen::MatrixXd antPos) { this->antPos = antPos; } -Eigen::MatrixXd LAMPTOOLAPI FEKOBase::EchoDataClass::getAntPos() const +Eigen::MatrixXd FEKOBase::EchoDataClass::getAntPos() const { return this->antPos; } -void LAMPTOOLAPI FEKOBase::EchoDataClass::setFreqStart(double freqStart) +void FEKOBase::EchoDataClass::setFreqStart(double freqStart) { this->freqStart = freqStart; } -double LAMPTOOLAPI FEKOBase::EchoDataClass::getFreqStart() const +double FEKOBase::EchoDataClass::getFreqStart() const { return this->freqStart; } -void LAMPTOOLAPI FEKOBase::EchoDataClass::setFreqEnd(double freqEnd) +void FEKOBase::EchoDataClass::setFreqEnd(double freqEnd) { this->freqEnd = freqEnd; } -double LAMPTOOLAPI FEKOBase::EchoDataClass::getFreqEnd() const +double FEKOBase::EchoDataClass::getFreqEnd() const { return this->freqEnd; } -void LAMPTOOLAPI FEKOBase::EchoDataClass::setFreqpoints(int freqpoints) +void FEKOBase::EchoDataClass::setFreqpoints(int freqpoints) { this->freqpoints = freqpoints; } -int LAMPTOOLAPI FEKOBase::EchoDataClass::getFreqpoints() const +int FEKOBase::EchoDataClass::getFreqpoints() const { return this->freqpoints; } -void LAMPTOOLAPI FEKOBase::EchoDataClass::loadEchoData(const QString& filePath) +void FEKOBase::EchoDataClass::loadEchoData(const QString& filePath) { std::ifstream file(reinterpret_cast(filePath.utf16()), std::ios::binary); @@ -773,7 +770,7 @@ void LAMPTOOLAPI FEKOBase::EchoDataClass::loadEchoData(const QString& filePath) } } -void LAMPTOOLAPI FEKOBase::EchoDataClass::SaveEchoData(const QString& filePath) +void FEKOBase::EchoDataClass::SaveEchoData(const QString& filePath) { if (echoData.rows() != antPos.rows() || antPos.cols() != 5) { qDebug() << "Error: antPos.size()!=echoData.rows()*5" @@ -809,7 +806,7 @@ void LAMPTOOLAPI FEKOBase::EchoDataClass::SaveEchoData(const QString& filePath) -Eigen::MatrixXd LAMPTOOLAPI FEKOBase::WINDOWFun(Eigen::MatrixXcd& echo, ImageAlgWindowFun winfun) +Eigen::MatrixXd FEKOBase::WINDOWFun(Eigen::MatrixXcd& echo, ImageAlgWindowFun winfun) { size_t Nxa = echo.rows(); size_t Nf = echo.cols(); @@ -826,7 +823,7 @@ Eigen::MatrixXd LAMPTOOLAPI FEKOBase::WINDOWFun(Eigen::MatrixXcd& echo, ImageAlg return normw; } -QList LAMPTOOLAPI FEKOBase::getFEKOImageAlgorithmList() +QList FEKOBase::getFEKOImageAlgorithmList() { QList list; FEKOImageAlgorithm alg; @@ -836,7 +833,7 @@ QList LAMPTOOLAPI FEKOBase::getFEKOImageAlgorithmList() return list; } -FEKOBase::FEKOImageAlgorithm LAMPTOOLAPI FEKOBase::String2FEKOImageAlgorithm(QString str) +FEKOBase::FEKOImageAlgorithm FEKOBase::String2FEKOImageAlgorithm(QString str) { FEKOImageAlgorithm alg; for (alg = FEKOImageAlgorithm::TBP_TIME; alg < FEKOImageAlgorithm::UNKONW; alg = (FEKOImageAlgorithm)(alg + 1)) { @@ -848,7 +845,7 @@ FEKOBase::FEKOImageAlgorithm LAMPTOOLAPI FEKOBase::String2FEKOImageAlgorithm(QSt return alg; } -QString LAMPTOOLAPI FEKOBase::FEKOImageAlgorithm2String(FEKOImageAlgorithm alg) +QString FEKOBase::FEKOImageAlgorithm2String(FEKOImageAlgorithm alg) { // 将FEKOImageAlgorithm 枚举转换为字符串 switch (alg) @@ -864,7 +861,7 @@ QString LAMPTOOLAPI FEKOBase::FEKOImageAlgorithm2String(FEKOImageAlgorithm alg) // 请仿照FEKOImageAlgorithm枚举的写法,构建QString 与 ImageAlgWindowFun 的转换函数 -QList LAMPTOOLAPI FEKOBase::getImageAlgWindowFunList() +QList FEKOBase::getImageAlgWindowFunList() { QList list; ImageAlgWindowFun alg; @@ -874,7 +871,7 @@ QList LAMPTOOLAPI FEKOBase::getImageAlgWindowFunList() return list; } -FEKOBase::ImageAlgWindowFun LAMPTOOLAPI FEKOBase::String2ImageAlgWindowFun(QString str) +FEKOBase::ImageAlgWindowFun FEKOBase::String2ImageAlgWindowFun(QString str) { ImageAlgWindowFun alg; for (alg = ImageAlgWindowFun::UNKONWWINDOW; alg < ImageAlgWindowFun::UNKONWWINDOW; alg = (ImageAlgWindowFun)(alg + 1)) { @@ -886,7 +883,7 @@ FEKOBase::ImageAlgWindowFun LAMPTOOLAPI FEKOBase::String2ImageAlgWindowFun(QStri return alg; } -QString LAMPTOOLAPI FEKOBase::ImageAlgWindowFun2String(FEKOBase::ImageAlgWindowFun alg) +QString FEKOBase::ImageAlgWindowFun2String(FEKOBase::ImageAlgWindowFun alg) { switch (alg) { @@ -900,7 +897,7 @@ QString LAMPTOOLAPI FEKOBase::ImageAlgWindowFun2String(FEKOBase::ImageAlgWindowF } -bool LAMPTOOLAPI FEKOBase::BPImage_TIME(QString& restiffpath, Eigen::MatrixXcd& echoData, Eigen::MatrixXd& antPos, Eigen::MatrixXd& freqmatrix, Eigen::MatrixXd& X, Eigen::MatrixXd& Y, Eigen::MatrixXd& Z, ImageAlgWindowFun winfun) +bool FEKOBase::BPImage_TIME(QString& restiffpath, Eigen::MatrixXcd& echoData, Eigen::MatrixXd& antPos, Eigen::MatrixXd& freqmatrix, Eigen::MatrixXd& X, Eigen::MatrixXd& Y, Eigen::MatrixXd& Z, ImageAlgWindowFun winfun) { // BP成像算法 const double c = 0.299792458; // 光速 @@ -908,7 +905,7 @@ bool LAMPTOOLAPI FEKOBase::BPImage_TIME(QString& restiffpath, Eigen::MatrixXcd& return true; } -bool LAMPTOOLAPI FEKOBase::FBPImage_FREQ(QString& restiffpath, Eigen::MatrixXcd& echoData, Eigen::MatrixXd& antPos, Eigen::MatrixXd& freqmatrix, Eigen::MatrixXd& X, Eigen::MatrixXd& Y, Eigen::MatrixXd& Z, ImageAlgWindowFun winfun) +bool FEKOBase::FBPImage_FREQ(QString& restiffpath, Eigen::MatrixXcd& echoData, Eigen::MatrixXd& antPos, Eigen::MatrixXd& freqmatrix, Eigen::MatrixXd& X, Eigen::MatrixXd& Y, Eigen::MatrixXd& Z, ImageAlgWindowFun winfun) { // BP成像算法 @@ -937,7 +934,7 @@ bool LAMPTOOLAPI FEKOBase::FBPImage_FREQ(QString& restiffpath, Eigen::MatrixXcd& -#ifdef __SHOWIMAGEPROCESSRESULT // 加窗处理 +#ifdef __IMAGEWINDOWSPROCESS // 加窗处理 Eigen::MatrixXd normw = WINDOWFun(echoData, winfun); #endif diff --git a/src/LAMPTool/FEKOBaseToolClass.h b/src/PluginWBFZExchangePlugin/FEKOBaseToolClass.h similarity index 77% rename from src/LAMPTool/FEKOBaseToolClass.h rename to src/PluginWBFZExchangePlugin/FEKOBaseToolClass.h index ddbe460..47c4626 100644 --- a/src/LAMPTool/FEKOBaseToolClass.h +++ b/src/PluginWBFZExchangePlugin/FEKOBaseToolClass.h @@ -40,8 +40,8 @@ namespace FEKOBase { Cartesian, // 笛卡尔坐标系 UNKONWFEKOCOORDINATESYSTEM // 必须为最后一个表示未知 }; - FEKOBase::FEKOCoordinateSystem LAMPTOOLAPI FEKOCoordinateSystemString2Enum(QString str); - QString LAMPTOOLAPI QString2FEKOCoordinateSystem(FEKOBase::FEKOCoordinateSystem mode); + FEKOBase::FEKOCoordinateSystem FEKOCoordinateSystemString2Enum(QString str); + QString QString2FEKOCoordinateSystem(FEKOBase::FEKOCoordinateSystem mode); //========================================================== @@ -56,8 +56,8 @@ namespace FEKOBase { UNKNOW }; - FEKOImageMode LAMPTOOLAPI FEKOImageModeString2Enum(QString str); - QString LAMPTOOLAPI FEKOImageModeenumToString(FEKOImageMode mode); + FEKOImageMode FEKOImageModeString2Enum(QString str); + QString FEKOImageModeenumToString(FEKOImageMode mode); @@ -147,13 +147,13 @@ namespace FEKOBase { /// 分辨率 米 /// /// - freqParams LAMPTOOLAPI getFreqSetting(double centerFreq, double resolution, double bandWidth, double scenceRange, bool isResolution = false); + freqParams getFreqSetting(double centerFreq, double resolution, double bandWidth, double scenceRange, bool isResolution = false); - FEKOSatelliteParams LAMPTOOLAPI createFEKOSatelliteParams(double Px, double Py, double Pz, double Vx, double Vy, double Vz, double incidenceAngle, double AzAngle, double theta, double phi, bool isRight, size_t PRFIdx = 0); - FEKOSatelliteParams LAMPTOOLAPI createFEKOSatelliteParams(SatelliteState pose, double incidenceAngle, double AzAngle, FEKOantPitionDirect antpos, size_t PRFIdx = 0); + FEKOSatelliteParams createFEKOSatelliteParams(double Px, double Py, double Pz, double Vx, double Vy, double Vz, double incidenceAngle, double AzAngle, double theta, double phi, bool isRight, size_t PRFIdx = 0); + FEKOSatelliteParams createFEKOSatelliteParams(SatelliteState pose, double incidenceAngle, double AzAngle, FEKOantPitionDirect antpos, size_t PRFIdx = 0); - SatelliteState LAMPTOOLAPI FEKOSatelliteParams2SatelliteState(FEKOSatelliteParams parmas); - FEKOantPitionDirect LAMPTOOLAPI FEKOSatelliteParams2FEKOantPitionDirect(FEKOSatelliteParams parmas); + SatelliteState FEKOSatelliteParams2SatelliteState(FEKOSatelliteParams parmas); + FEKOantPitionDirect FEKOSatelliteParams2FEKOantPitionDirect(FEKOSatelliteParams parmas); /// /// 将卫星姿态转换为 FEKO 天线坐标, @@ -166,7 +166,7 @@ namespace FEKOBase { /// 结果文件 /// 输入模型 /// - TopoDS_Shape LAMPTOOLAPI SatellitePos2FEKOAntPos(SatelliteState satepos, double incidenceAngle, double AzAngle, bool isRIGHT, FEKOantPitionDirect* antposition_Direct, TopoDS_Shape inDs); + TopoDS_Shape SatellitePos2FEKOAntPos(SatelliteState satepos, double incidenceAngle, double AzAngle, bool isRIGHT, FEKOantPitionDirect* antposition_Direct, TopoDS_Shape inDs); @@ -214,10 +214,10 @@ namespace FEKOBase { std::vector electricFieldDataList; // 单频点信息 }; - bool LAMPTOOLAPI compareElectricFieldDataInFreq(const ElectricFieldData& a, const ElectricFieldData& b); - bool LAMPTOOLAPI comparePRFPluseDataInPRFIdx(const PRFPluseData& a, const PRFPluseData& b); + bool compareElectricFieldDataInFreq(const ElectricFieldData& a, const ElectricFieldData& b); + bool comparePRFPluseDataInPRFIdx(const PRFPluseData& a, const PRFPluseData& b); - class LAMPTOOLAPI NearFieldEchoCSVParser { + class NearFieldEchoCSVParser { public: NearFieldEchoCSVParser(); ~NearFieldEchoCSVParser(); @@ -259,7 +259,7 @@ namespace FEKOBase { // 。 // 注意Bp并不关心脉冲的顺序,只是关注脉冲的坐标位置,默认按照脉冲的解析顺序进行组织 //======================================================================== - class LAMPTOOLAPI EchoDataClass { + class EchoDataClass { private: // 成像变量 Eigen::MatrixXcd echoData; // 回波数据 Eigen::MatrixXd antPos;// 每个脉冲的坐标 @@ -314,7 +314,7 @@ namespace FEKOBase { /// /// 行:脉冲,列:频点 /// - Eigen::MatrixXd LAMPTOOLAPI WINDOWFun(Eigen::MatrixXcd& echo, ImageAlgWindowFun winfun = ImageAlgWindowFun::HANMMING); + Eigen::MatrixXd WINDOWFun(Eigen::MatrixXcd& echo, ImageAlgWindowFun winfun = ImageAlgWindowFun::HANMMING); enum FEKOImageAlgorithm { @@ -323,18 +323,18 @@ namespace FEKOBase { UNKONW // 必须为最后一个表示未知 }; - QList LAMPTOOLAPI getFEKOImageAlgorithmList(); - FEKOImageAlgorithm LAMPTOOLAPI String2FEKOImageAlgorithm(QString str); - QString LAMPTOOLAPI FEKOImageAlgorithm2String(FEKOImageAlgorithm alg); + QList getFEKOImageAlgorithmList(); + FEKOImageAlgorithm String2FEKOImageAlgorithm(QString str); + QString FEKOImageAlgorithm2String(FEKOImageAlgorithm alg); // 请仿照FEKOImageAlgorithm枚举的写法,构建QString 与 ImageAlgWindowFun 的转换函数 - QList LAMPTOOLAPI getImageAlgWindowFunList(); - ImageAlgWindowFun LAMPTOOLAPI String2ImageAlgWindowFun(QString str); - QString LAMPTOOLAPI ImageAlgWindowFun2String(ImageAlgWindowFun alg); + QList getImageAlgWindowFunList(); + ImageAlgWindowFun String2ImageAlgWindowFun(QString str); + QString ImageAlgWindowFun2String(ImageAlgWindowFun alg); - bool LAMPTOOLAPI BPImage_TIME(QString& restiffpath, Eigen::MatrixXcd& echoData, Eigen::MatrixXd& antPos, Eigen::MatrixXd& freqmatrix, Eigen::MatrixXd& X, Eigen::MatrixXd& Y, Eigen::MatrixXd& Z, ImageAlgWindowFun winfun = ImageAlgWindowFun::HANMMING); // BP成像 - bool LAMPTOOLAPI FBPImage_FREQ(QString& restiffpath, Eigen::MatrixXcd& echoData, Eigen::MatrixXd& antPos, Eigen::MatrixXd& freqmatrix, Eigen::MatrixXd& X, Eigen::MatrixXd& Y, Eigen::MatrixXd& Z, ImageAlgWindowFun winfun = ImageAlgWindowFun::HANMMING); // FBP成像 + bool BPImage_TIME(QString& restiffpath, Eigen::MatrixXcd& echoData, Eigen::MatrixXd& antPos, Eigen::MatrixXd& freqmatrix, Eigen::MatrixXd& X, Eigen::MatrixXd& Y, Eigen::MatrixXd& Z, ImageAlgWindowFun winfun = ImageAlgWindowFun::HANMMING); // BP成像 + bool FBPImage_FREQ(QString& restiffpath, Eigen::MatrixXcd& echoData, Eigen::MatrixXd& antPos, Eigen::MatrixXd& freqmatrix, Eigen::MatrixXd& X, Eigen::MatrixXd& Y, Eigen::MatrixXd& Z, ImageAlgWindowFun winfun = ImageAlgWindowFun::HANMMING); // FBP成像 diff --git a/src/LAMPTool/FEKOFarFieldFileClass.cpp b/src/PluginWBFZExchangePlugin/FEKOFarFieldFileClass.cpp similarity index 90% rename from src/LAMPTool/FEKOFarFieldFileClass.cpp rename to src/PluginWBFZExchangePlugin/FEKOFarFieldFileClass.cpp index 445cad9..18e9cc3 100644 --- a/src/LAMPTool/FEKOFarFieldFileClass.cpp +++ b/src/PluginWBFZExchangePlugin/FEKOFarFieldFileClass.cpp @@ -1,16 +1,16 @@ #include "FEKOFarFieldFileClass.h" -LAMPTOOLAPI FEKOBase::FEKOFarFieldFileClass::FEKOFarFieldFileClass() + FEKOBase::FEKOFarFieldFileClass::FEKOFarFieldFileClass() { } -LAMPTOOLAPI FEKOBase::FEKOFarFieldFileClass::~FEKOFarFieldFileClass() + FEKOBase::FEKOFarFieldFileClass::~FEKOFarFieldFileClass() { } -void LAMPTOOLAPI FEKOBase::FEKOFarFieldFileClass::parseFarFieldFile(const QString& fileName) +void FEKOBase::FEKOFarFieldFileClass::parseFarFieldFile(const QString& fileName) { QFile file(fileName); // 加载文本文件中的所有数据到一个 QString 中 @@ -76,7 +76,7 @@ void LAMPTOOLAPI FEKOBase::FEKOFarFieldFileClass::parseFarFieldFile(const QStrin file.close(); } -void LAMPTOOLAPI FEKOBase::FEKOFarFieldFileClass::outputToFile(const QString& fileName) +void FEKOBase::FEKOFarFieldFileClass::outputToFile(const QString& fileName) { QFile file(fileName); if (!file.open(QIODevice::WriteOnly | QIODevice::Text)) @@ -91,7 +91,7 @@ void LAMPTOOLAPI FEKOBase::FEKOFarFieldFileClass::outputToFile(const QString& fi } - FEKOBase::FEKOFARFIELDRESULTTYPE LAMPTOOLAPI FEKOBase::FEKOFARFIELDRESULTTYPEString2Enum(QString str) + FEKOBase::FEKOFARFIELDRESULTTYPE FEKOBase::FEKOFARFIELDRESULTTYPEString2Enum(QString str) { if (str.toUpper() == "GAIN") { return FEKOBase::GAIN; } else if (str.toUpper() == "DIRECTIVITY") { return FEKOBase::DIRECTIVITY; } @@ -103,7 +103,7 @@ void LAMPTOOLAPI FEKOBase::FEKOFarFieldFileClass::outputToFile(const QString& fi return FEKOBase::FEKOFARFIELDRESULTTYPE(); } -QString LAMPTOOLAPI FEKOBase::QString2FEKOFARFIELDRESULTTYPE(FEKOBase::FEKOFARFIELDRESULTTYPE mode) +QString FEKOBase::QString2FEKOFARFIELDRESULTTYPE(FEKOBase::FEKOFARFIELDRESULTTYPE mode) { switch (mode) { case FEKOBase::GAIN: @@ -120,7 +120,7 @@ QString LAMPTOOLAPI FEKOBase::QString2FEKOFARFIELDRESULTTYPE(FEKOBase::FEKOFARFI } } -LAMPTOOLAPI FEKOBase::FEKOFARFIELDFEKODATABLOCK::FEKOFARFIELDFEKODATABLOCK() + FEKOBase::FEKOFARFIELDFEKODATABLOCK::FEKOFARFIELDFEKODATABLOCK() { this->dataList.clear(); this->thetaSamples = 0; @@ -136,12 +136,12 @@ LAMPTOOLAPI FEKOBase::FEKOFARFIELDFEKODATABLOCK::FEKOFARFIELDFEKODATABLOCK() this->resultType = FEKOBase::FEKOFARFIELDRESULTTYPEUNKOWN; } -LAMPTOOLAPI FEKOBase::FEKOFARFIELDFEKODATABLOCK::~FEKOFARFIELDFEKODATABLOCK() + FEKOBase::FEKOFARFIELDFEKODATABLOCK::~FEKOFARFIELDFEKODATABLOCK() { } -int LAMPTOOLAPI FEKOBase::FEKOFARFIELDFEKODATABLOCK::paraseFEKOFarFieldDataBlock(const QString& blockstr) +int FEKOBase::FEKOFARFIELDFEKODATABLOCK::paraseFEKOFarFieldDataBlock(const QString& blockstr) { // 按行进行解析 QList lines= blockstr.split("\n"); @@ -150,7 +150,7 @@ int LAMPTOOLAPI FEKOBase::FEKOFARFIELDFEKODATABLOCK::paraseFEKOFarFieldDataBlock } -int LAMPTOOLAPI FEKOBase::FEKOFARFIELDFEKODATABLOCK::paraseFEKOFarFieldDataBlockFromList(QList& lines) +int FEKOBase::FEKOFARFIELDFEKODATABLOCK::paraseFEKOFarFieldDataBlockFromList(QList& lines) { bool in_readHeaderState = false; size_t headerlineCount = 0; @@ -267,7 +267,7 @@ int LAMPTOOLAPI FEKOBase::FEKOFARFIELDFEKODATABLOCK::paraseFEKOFarFieldDataBlock return 0; } -QString LAMPTOOLAPI FEKOBase::FEKOFARFIELDFEKODATABLOCK::normalizationHeaderString(QString headerstr) +QString FEKOBase::FEKOFARFIELDFEKODATABLOCK::normalizationHeaderString(QString headerstr) { headerstr = headerstr.replace("'", "").replace(u8"\"",u8""); if(headerstr.indexOf("#Configuration Name") != -1) @@ -408,7 +408,7 @@ QString LAMPTOOLAPI FEKOBase::FEKOFARFIELDFEKODATABLOCK::normalizationHeaderStri ; } -QString LAMPTOOLAPI FEKOBase::FEKOFARFIELDFEKODATABLOCK::saveFEKOFarFieldDataBlock() +QString FEKOBase::FEKOFARFIELDFEKODATABLOCK::saveFEKOFarFieldDataBlock() { switch (this->resultType) { @@ -425,22 +425,22 @@ QString LAMPTOOLAPI FEKOBase::FEKOFARFIELDFEKODATABLOCK::saveFEKOFarFieldDataBlo } } -QString LAMPTOOLAPI FEKOBase::FEKOFARFIELDFEKODATABLOCK::saveFEKOFarFieldDataBlock_Gain() +QString FEKOBase::FEKOFARFIELDFEKODATABLOCK::saveFEKOFarFieldDataBlock_Gain() { return QString(); } -QString LAMPTOOLAPI FEKOBase::FEKOFARFIELDFEKODATABLOCK::saveFEKOFarFieldDataBlock_Directivity() +QString FEKOBase::FEKOFARFIELDFEKODATABLOCK::saveFEKOFarFieldDataBlock_Directivity() { return QString(); } -QString LAMPTOOLAPI FEKOBase::FEKOFARFIELDFEKODATABLOCK::saveFEKOFarFieldDataBlock_RCS() +QString FEKOBase::FEKOFARFIELDFEKODATABLOCK::saveFEKOFarFieldDataBlock_RCS() { return QString(); } -QString LAMPTOOLAPI FEKOBase::FEKOFARFIELDFEKODATABLOCK::saveFEKOFarFieldDataBlock_FarFieldValues() +QString FEKOBase::FEKOFARFIELDFEKODATABLOCK::saveFEKOFarFieldDataBlock_FarFieldValues() { return QString(); } diff --git a/src/LAMPTool/FEKOFarFieldFileClass.h b/src/PluginWBFZExchangePlugin/FEKOFarFieldFileClass.h similarity index 91% rename from src/LAMPTool/FEKOFarFieldFileClass.h rename to src/PluginWBFZExchangePlugin/FEKOFarFieldFileClass.h index 7188352..9029143 100644 --- a/src/LAMPTool/FEKOFarFieldFileClass.h +++ b/src/PluginWBFZExchangePlugin/FEKOFarFieldFileClass.h @@ -21,8 +21,8 @@ namespace FEKOBase { FARFIELDVALUES,// 远场值 FEKOFARFIELDRESULTTYPEUNKOWN }; - FEKOBase::FEKOFARFIELDRESULTTYPE LAMPTOOLAPI FEKOFARFIELDRESULTTYPEString2Enum(QString str); - QString LAMPTOOLAPI QString2FEKOFARFIELDRESULTTYPE(FEKOBase::FEKOFARFIELDRESULTTYPE mode); + FEKOBase::FEKOFARFIELDRESULTTYPE FEKOFARFIELDRESULTTYPEString2Enum(QString str); + QString QString2FEKOFARFIELDRESULTTYPE(FEKOBase::FEKOFARFIELDRESULTTYPE mode); @@ -63,7 +63,7 @@ namespace FEKOBase { double RCS_total = 0; }; - class LAMPTOOLAPI FEKOFARFIELDFEKODATABLOCK { // 数据块 + class FEKOFARFIELDFEKODATABLOCK { // 数据块 public: FEKOFARFIELDFEKODATABLOCK(); ~FEKOFARFIELDFEKODATABLOCK(); @@ -100,9 +100,9 @@ namespace FEKOBase { -class LAMPTOOLAPI FEKOFarFieldFileClass: public QObject +class FEKOFarFieldFileClass: public QObject { - Q_OBJECT + // Q_OBJECT public: FEKOFarFieldFileClass(); ~FEKOFarFieldFileClass(); diff --git a/src/LAMPTool/FEKONearBPBasic.cpp b/src/PluginWBFZExchangePlugin/FEKONearBPBasic.cpp similarity index 95% rename from src/LAMPTool/FEKONearBPBasic.cpp rename to src/PluginWBFZExchangePlugin/FEKONearBPBasic.cpp index d373bb6..08be2d3 100644 --- a/src/LAMPTool/FEKONearBPBasic.cpp +++ b/src/PluginWBFZExchangePlugin/FEKONearBPBasic.cpp @@ -26,7 +26,7 @@ // 定义插值函数,以处理复数值 -std::complex LAMPTOOLAPI InterpolateComplex(Eigen::MatrixXd& xi, Eigen::MatrixXd& yi, Eigen::MatrixXcd& data, double x, double y) { +std::complex InterpolateComplex(Eigen::MatrixXd& xi, Eigen::MatrixXd& yi, Eigen::MatrixXcd& data, double x, double y) { int m = xi.rows(); int n = xi.cols(); @@ -69,7 +69,7 @@ std::complex LAMPTOOLAPI InterpolateComplex(Eigen::MatrixXd& xi, Eigen:: } -Eigen::MatrixXd LAMPTOOLAPI Cartesian2Spherical(Eigen::MatrixXd CartesianPoint) +Eigen::MatrixXd Cartesian2Spherical(Eigen::MatrixXd CartesianPoint) { Eigen::MatrixXd result = CartesianPoint; size_t rows = result.rows(); @@ -100,7 +100,7 @@ Eigen::MatrixXd LAMPTOOLAPI Cartesian2Spherical(Eigen::MatrixXd CartesianPoint) return result; } -int LAMPTOOLAPI BP2DProcess(QString in_path, QString out_path, double Rref, double minX, double maxX, double minY, double maxY, double PlaneZ, int ImageHeight, int ImageWidth) +int BP2DProcess(QString in_path, QString out_path, double Rref, double minX, double maxX, double minY, double maxY, double PlaneZ, int ImageHeight, int ImageWidth) { BP2DProcessClass process; process.initProcess(in_path, out_path, Rref, minX, maxX, minY, maxY, PlaneZ, ImageHeight, ImageWidth); @@ -109,7 +109,7 @@ int LAMPTOOLAPI BP2DProcess(QString in_path, QString out_path, double Rref, doub } -int LAMPTOOLAPI FBP2DProcess(QString in_path, QString out_path, double Rref, double minX, double maxX, double minY, double maxY, double PlaneZ, int ImageHeight, int ImageWidth) +int FBP2DProcess(QString in_path, QString out_path, double Rref, double minX, double maxX, double minY, double maxY, double PlaneZ, int ImageHeight, int ImageWidth) { FBP2DProcessClass process; process.initProcess(in_path, out_path, Rref, minX, maxX, minY, maxY, PlaneZ, ImageHeight, ImageWidth); @@ -117,7 +117,7 @@ int LAMPTOOLAPI FBP2DProcess(QString in_path, QString out_path, double Rref, dou return -1; } -int LAMPTOOLAPI build2Bin(QString path, int width, int height, std::vector& freqs, Eigen::MatrixXd AntPostion, Eigen::MatrixXcd echo) +int build2Bin(QString path, int width, int height, std::vector& freqs, Eigen::MatrixXd AntPostion, Eigen::MatrixXcd echo) { /* * % 构建回波结果 @@ -173,7 +173,7 @@ fclose(fid); } template -Eigen::MatrixXcd LAMPTOOLAPI BP2DImageByPluse(Eigen::MatrixXcd timeEcho, Eigen::MatrixXd AntPosition, double minX, double maxX, double minY, double maxY, double PlaneZ, double Rref, size_t ImageWidth, size_t ImageHeight, double startfreq, size_t timefreqnum, double timeFreqBandWidth, T* logclss) +Eigen::MatrixXcd BP2DImageByPluse(Eigen::MatrixXcd timeEcho, Eigen::MatrixXd AntPosition, double minX, double maxX, double minY, double maxY, double PlaneZ, double Rref, size_t ImageWidth, size_t ImageHeight, double startfreq, size_t timefreqnum, double timeFreqBandWidth, T* logclss) { bool logfun = !(nullptr == logclss); // 空指针 double delta_x = (maxX - minX) / (ImageWidth - 1); @@ -242,7 +242,7 @@ Eigen::MatrixXcd LAMPTOOLAPI BP2DImageByPluse(Eigen::MatrixXcd timeEcho, Eigen:: template -Eigen::MatrixXcd LAMPTOOLAPI BP2DImageByPixel(Eigen::MatrixXcd timeEcho, Eigen::MatrixXd AntPosition, double minX, double maxX, double minY, double maxY, double PlaneZ, double Rref, size_t ImageWidth, size_t ImageHeight, double startfreq, size_t timefreqnum, double timeFreqBandWidth, T* logclss) +Eigen::MatrixXcd BP2DImageByPixel(Eigen::MatrixXcd timeEcho, Eigen::MatrixXd AntPosition, double minX, double maxX, double minY, double maxY, double PlaneZ, double Rref, size_t ImageWidth, size_t ImageHeight, double startfreq, size_t timefreqnum, double timeFreqBandWidth, T* logclss) { bool logfun = !(nullptr == logclss); double delta_x = (maxX - minX) / (ImageWidth - 1); @@ -430,7 +430,7 @@ Eigen::MatrixXcd LAMPTOOLAPI BP2DImageByPixel(Eigen::MatrixXcd timeEcho, Eigen:: } -int LAMPTOOLAPI BP2DProcessClass::initProcess(QString in_path, QString out_path, double Rref, double minX, double maxX, double minY, double maxY, double PlaneZ, int ImageHeight, int ImageWidth) +int BP2DProcessClass::initProcess(QString in_path, QString out_path, double Rref, double minX, double maxX, double minY, double maxY, double PlaneZ, int ImageHeight, int ImageWidth) { // 初始化参数 this->readEchoFile(in_path); @@ -456,7 +456,7 @@ int LAMPTOOLAPI BP2DProcessClass::initProcess(QString in_path, QString out_path, return -1; } -int LAMPTOOLAPI BP2DProcessClass::readEchoFile(QString in_path) +int BP2DProcessClass::readEchoFile(QString in_path) { std::ifstream fin(in_path.toUtf8().constData(), std::ios::in | std::ios::binary); if (!fin.is_open()) exit(2); @@ -501,7 +501,7 @@ int LAMPTOOLAPI BP2DProcessClass::readEchoFile(QString in_path) return -1; } -int LAMPTOOLAPI BP2DProcessClass::saveTiFF(Eigen::MatrixXcd m) +int BP2DProcessClass::saveTiFF(Eigen::MatrixXcd m) { return saveMatrixXcd2TiFF(m, this->out_path); } @@ -510,7 +510,7 @@ int LAMPTOOLAPI BP2DProcessClass::saveTiFF(Eigen::MatrixXcd m) /// 成像工作流,注意存在大量的内存浪费,后期可以根据情况进行优化 /// /// -int LAMPTOOLAPI BP2DProcessClass::start() +int BP2DProcessClass::start() { // step 0 生成文件夹路径,为中间临时文件输出,构建临时环境,正式版需要注释相关代码 QString parantPath = getParantFolderNameFromPath(this->out_path); @@ -573,7 +573,7 @@ int LAMPTOOLAPI BP2DProcessClass::start() return -1; } -int LAMPTOOLAPI BP2DProcessClass::logFUN(int percent, QString logtext) { +int BP2DProcessClass::logFUN(int percent, QString logtext) { qDebug() << "\rBPProcess [" << percent << "%]\t" << logtext; if (percent < 100) { qDebug()<<"\n"; diff --git a/src/LAMPTool/FEKONearBPBasic.h b/src/PluginWBFZExchangePlugin/FEKONearBPBasic.h similarity index 70% rename from src/LAMPTool/FEKONearBPBasic.h rename to src/PluginWBFZExchangePlugin/FEKONearBPBasic.h index 8a634fd..60dddb1 100644 --- a/src/LAMPTool/FEKONearBPBasic.h +++ b/src/PluginWBFZExchangePlugin/FEKONearBPBasic.h @@ -6,7 +6,7 @@ * 适用于FEKO的近场结果的 BP 成像算法 * **/ -#include "LAMPToolAPI.h" +#include "WBFZExchangePluginAPI.h" #include #include #include @@ -25,12 +25,12 @@ /// /// [X,Y,Z;X1,Y1,Z1] /// -Eigen::MatrixXd LAMPTOOLAPI Cartesian2Spherical(Eigen::MatrixXd CartesianPoint); +Eigen::MatrixXd Cartesian2Spherical(Eigen::MatrixXd CartesianPoint); /// /// 时域BP /// -class LAMPTOOLAPI BP2DProcessClass { +class BP2DProcessClass { public: size_t height; size_t width; @@ -60,15 +60,15 @@ public: }; -int LAMPTOOLAPI BP2DProcess(QString in_path, QString out_path, double Rref, double minX, double maxX, double minY, double maxY, double PlaneZ,int ImageHeight,int ImageWidth); +int BP2DProcess(QString in_path, QString out_path, double Rref, double minX, double maxX, double minY, double maxY, double PlaneZ,int ImageHeight,int ImageWidth); // BP 成像时,逐像素点计算,计算速度慢,回波(PRFNUM,freqNUM) template -Eigen::MatrixXcd LAMPTOOLAPI BP2DImageByPixel(Eigen::MatrixXcd timeEcho,Eigen::MatrixXd AntPosition,double minX,double maxX,double minY,double maxY,double PlaneZ ,double Rref,size_t ImageWidth,size_t ImageHeight,double startfreq,size_t timefreqnum,double timeFreqBandWidth, T* logclss=nullptr); +Eigen::MatrixXcd BP2DImageByPixel(Eigen::MatrixXcd timeEcho,Eigen::MatrixXd AntPosition,double minX,double maxX,double minY,double maxY,double PlaneZ ,double Rref,size_t ImageWidth,size_t ImageHeight,double startfreq,size_t timefreqnum,double timeFreqBandWidth, T* logclss=nullptr); /// /// 时域BP --- FBP /// -class LAMPTOOLAPI FBP2DProcessClass:public BP2DProcessClass { +class FBP2DProcessClass:public BP2DProcessClass { public: size_t height; size_t width; @@ -99,23 +99,23 @@ public: // BP 成像时,逐脉冲计算,回波(PRFNUM,freqNUM) template -Eigen::MatrixXcd LAMPTOOLAPI BP2DImageByPluse(Eigen::MatrixXcd timeEcho, Eigen::MatrixXd AntPosition, double minX, double maxX, double minY, double maxY, double PlaneZ, double Rref, size_t ImageWidth, size_t ImageHeight, double startfreq, size_t timefreqnum, double timeFreqBandWidth, T* logclss = nullptr); +Eigen::MatrixXcd BP2DImageByPluse(Eigen::MatrixXcd timeEcho, Eigen::MatrixXd AntPosition, double minX, double maxX, double minY, double maxY, double PlaneZ, double Rref, size_t ImageWidth, size_t ImageHeight, double startfreq, size_t timefreqnum, double timeFreqBandWidth, T* logclss = nullptr); -int LAMPTOOLAPI FBP2DProcess(QString in_path, QString out_path, double Rref, double minX, double maxX, double minY, double maxY, double PlaneZ, int ImageHeight, int ImageWidth); +int FBP2DProcess(QString in_path, QString out_path, double Rref, double minX, double maxX, double minY, double maxY, double PlaneZ, int ImageHeight, int ImageWidth); // 生成成像的数据文件 -int LAMPTOOLAPI build2Bin(QString path,int width,int height,std::vector &freqs,Eigen::MatrixXd AntPositions,Eigen::MatrixXcd echo); +int build2Bin(QString path,int width,int height,std::vector &freqs,Eigen::MatrixXd AntPositions,Eigen::MatrixXcd echo); // 定义插值函数,以处理复数值 -std::complex LAMPTOOLAPI InterpolateComplex(Eigen::MatrixXd& xi, Eigen::MatrixXd& yi, Eigen::MatrixXcd& data, double x, double y); +std::complex InterpolateComplex(Eigen::MatrixXd& xi, Eigen::MatrixXd& yi, Eigen::MatrixXcd& data, double x, double y); /// /// 远场成像 /// -class LAMPTOOLAPI FEKOFarFieldProcessClass :public BP2DProcessClass { +class FEKOFarFieldProcessClass :public BP2DProcessClass { public: size_t height; size_t width; diff --git a/src/LAMPTool/FEKONearBpBaseImage.cpp b/src/PluginWBFZExchangePlugin/FEKONearBpBaseImage.cpp similarity index 100% rename from src/LAMPTool/FEKONearBpBaseImage.cpp rename to src/PluginWBFZExchangePlugin/FEKONearBpBaseImage.cpp diff --git a/src/LAMPTool/FEKOSimulationSARClass.cpp b/src/PluginWBFZExchangePlugin/FEKOSimulationSARClass.cpp similarity index 99% rename from src/LAMPTool/FEKOSimulationSARClass.cpp rename to src/PluginWBFZExchangePlugin/FEKOSimulationSARClass.cpp index cca7185..2299de0 100644 --- a/src/LAMPTool/FEKOSimulationSARClass.cpp +++ b/src/PluginWBFZExchangePlugin/FEKOSimulationSARClass.cpp @@ -434,7 +434,7 @@ QString FEKOBase::FEKOSimulationSARClass::createLuaSciptString(size_t startprfid -bool LAMPTOOLAPI FEKOBase::FEKOImageProcess(EchoDataClass& echodata, FEKOImageSettingParams& imageSettingParams, QString& outPath, FEKOImageAlgorithm algmethod, ImageAlgWindowFun winfun) +bool FEKOBase::FEKOImageProcess(EchoDataClass& echodata, FEKOImageSettingParams& imageSettingParams, QString& outPath, FEKOImageAlgorithm algmethod, ImageAlgWindowFun winfun) { Eigen::MatrixXcd echoData = echodata.getEchoData(); Eigen::MatrixXd antpos = echodata.getAntPos(); @@ -1105,13 +1105,13 @@ FEKOBase::FEKOSimulationDataparamsHandler::~FEKOSimulationDataparamsHandler() { } -void FEKOBase::FEKOSimulationDataparamsHandler::setFEKOSimulationDataparams(std::shared_ptr simulationparams) +void FEKOBase::FEKOSimulationDataparamsHandler::setFEKOSimulationDataparams(FEKOBase::FEKOSimulationDataparams* simulationparams) { this->simulationparams = simulationparams; this->bandingsetFEKOSimulationDataparams(); } -std::shared_ptr FEKOBase::FEKOSimulationDataparamsHandler::getFEKOSimulationDataparams() +FEKOBase::FEKOSimulationDataparams* FEKOBase::FEKOSimulationDataparamsHandler::getFEKOSimulationDataparams() { return this->simulationparams; } diff --git a/src/LAMPTool/FEKOSimulationSARClass.h b/src/PluginWBFZExchangePlugin/FEKOSimulationSARClass.h similarity index 92% rename from src/LAMPTool/FEKOSimulationSARClass.h rename to src/PluginWBFZExchangePlugin/FEKOSimulationSARClass.h index ffe856a..bb3bcee 100644 --- a/src/LAMPTool/FEKOSimulationSARClass.h +++ b/src/PluginWBFZExchangePlugin/FEKOSimulationSARClass.h @@ -6,23 +6,23 @@ */ #ifndef _FEKO_SIMULATION_SAR_CLASS_H #define _FEKO_SIMULATION_SAR_CLASS_H - +#include "WBFZExchangePluginAPI.h" +#include #include "referenceHeader.h" #include "OCCTBase.h" #include "GeoOperator.h" #include "FEKOBaseToolClass.h" #include "SARImageBase.h" -#include + namespace FEKOBase { //========================================================== // FEKO成像仿真参数类 //========================================================== - class LAMPTOOLAPI FEKOSimulationDataparams : public QObject { // 仿真参数类 + class FEKOSimulationDataparams : public QObject { // 仿真参数类 Q_OBJECT - public: FEKOSimulationDataparams(QObject* parent = nullptr); ~FEKOSimulationDataparams(); @@ -169,16 +169,21 @@ namespace FEKOBase { void setFarsourcePhiPoints(long phiPoints); }; - class LAMPTOOLAPI FEKOSimulationDataparamsHandler { + + + // + class FEKOSimulationDataparamsHandler { + public: FEKOSimulationDataparamsHandler(); ~FEKOSimulationDataparamsHandler(); public: - std::shared_ptr simulationparams; + FEKOBase::FEKOSimulationDataparams* simulationparams; + FEKOBase::FEKOSimulationDataparams* getFEKOSimulationDataparams(); void setFEKOSimulationDataparams( - std::shared_ptr simulationparams); - std::shared_ptr getFEKOSimulationDataparams(); + FEKOBase::FEKOSimulationDataparams* simulationparams); + public: virtual void bandingsetFEKOSimulationDataparams(); @@ -188,14 +193,14 @@ namespace FEKOBase { // FEKO仿真成像参数类 // 解析成像参数xml //========================================================== - class LAMPTOOLAPI FEKOSimulationSARClass : public FEKOSimulationDataparamsHandler { + class FEKOSimulationSARClass : public FEKOSimulationDataparamsHandler { public: FEKOSimulationSARClass(); ~FEKOSimulationSARClass(); public: std::vector FEKOAntPoselist; // FEKO的天线参数设置 - void setFEKOAntPoselist( + void setFEKOAntPoselist( std::vector FEKOAntPoselist); // FEKO的天线参数设置 std::vector getFEKOAntPoselist(); @@ -223,12 +228,12 @@ namespace FEKOBase { // FEKO成像 //========================================================== - bool LAMPTOOLAPI FEKOImageProcess(EchoDataClass& echodata, + bool FEKOImageProcess(EchoDataClass& echodata, FEKOImageSettingParams& imageSettingParams, QString& outPath, FEKOImageAlgorithm algmethod = FEKOImageAlgorithm::TBP_FREQ, ImageAlgWindowFun winfun = ImageAlgWindowFun::HANMMING); - class LAMPTOOLAPI FEKOImageProcessAbstractClass { + class FEKOImageProcessAbstractClass { public: FEKOImageProcessAbstractClass(); ~FEKOImageProcessAbstractClass(); diff --git a/src/LAMPTool/FileOperator.cpp b/src/PluginWBFZExchangePlugin/FileOperator.cpp similarity index 79% rename from src/LAMPTool/FileOperator.cpp rename to src/PluginWBFZExchangePlugin/FileOperator.cpp index 8aac6f7..0059d18 100644 --- a/src/LAMPTool/FileOperator.cpp +++ b/src/PluginWBFZExchangePlugin/FileOperator.cpp @@ -10,7 +10,7 @@ #include #include -std::vector LAMPTOOLAPI getFilelist(const QString& folderpath, const QString& filenameExtension, int (*logfun)(QString logtext, int value)) +std::vector getFilelist(const QString& folderpath, const QString& filenameExtension, int (*logfun)(QString logtext, int value)) { QString filenameExtensionStr = filenameExtension; filenameExtensionStr = filenameExtensionStr.remove(0, 1); @@ -40,7 +40,7 @@ std::vector LAMPTOOLAPI getFilelist(const QString& folderpath, const Q } -QString LAMPTOOLAPI getParantFolderNameFromPath(const QString& path) +QString getParantFolderNameFromPath(const QString& path) { QDir directory(path); directory.cdUp(); @@ -48,7 +48,7 @@ QString LAMPTOOLAPI getParantFolderNameFromPath(const QString& path) return directory.dirName(); } -QString LAMPTOOLAPI getParantFromPath(const QString& path) +QString getParantFromPath(const QString& path) { //qDebug() << path; QDir directory(path); @@ -58,31 +58,31 @@ QString LAMPTOOLAPI getParantFromPath(const QString& path) return parentPath; } -QString LAMPTOOLAPI getFileNameFromPath(const QString& path) +QString getFileNameFromPath(const QString& path) { QFileInfo fileInfo(path); return fileInfo.fileName(); } -bool LAMPTOOLAPI isDirectory(const QString& path) +bool isDirectory(const QString& path) { QFileInfo fileinfo(path); return fileinfo.isDir(); } -bool LAMPTOOLAPI isExists(const QString& path) +bool isExists(const QString& path) { QFileInfo fileinfo(path); return fileinfo.exists(); } -bool LAMPTOOLAPI isFile(const QString& path) +bool isFile(const QString& path) { QFileInfo fileinfo(path); return fileinfo.isFile(); } -int LAMPTOOLAPI write_binfile(char* filepath, char* data, size_t data_len) +int write_binfile(char* filepath, char* data, size_t data_len) { FILE* pd = fopen(filepath, "w"); if (NULL == pd) { @@ -94,7 +94,7 @@ int LAMPTOOLAPI write_binfile(char* filepath, char* data, size_t data_len) return -1; } -LAMPTOOLAPI char* read_textfile(char* text_path, int* length) + char* read_textfile(char* text_path, int* length) { char* data = NULL; FILE* fp1 = fopen(text_path, "r"); @@ -120,12 +120,12 @@ LAMPTOOLAPI char* read_textfile(char* text_path, int* length) return data; } -bool LAMPTOOLAPI exists_test(const QString& name) +bool exists_test(const QString& name) { return isExists(name); } -size_t LAMPTOOLAPI fsize(FILE* fp) +size_t fsize(FILE* fp) { size_t n; fpos_t fpos; // 当前位置 @@ -137,7 +137,7 @@ size_t LAMPTOOLAPI fsize(FILE* fp) } -void LAMPTOOLAPI removeFile(const QString& filePath) +void removeFile(const QString& filePath) { QFile file(filePath); @@ -154,7 +154,7 @@ void LAMPTOOLAPI removeFile(const QString& filePath) } } -unsigned long LAMPTOOLAPI convertToULong(const QString& input) { +unsigned long convertToULong(const QString& input) { bool ok; // Used to check if the conversion was successful unsigned long result = input.toULong(&ok); @@ -167,7 +167,7 @@ unsigned long LAMPTOOLAPI convertToULong(const QString& input) { -void LAMPTOOLAPI copyFile(const QString& sourcePath, const QString& destinationPath) { +void copyFile(const QString& sourcePath, const QString& destinationPath) { QFile sourceFile(sourcePath); QFile destinationFile(destinationPath); diff --git a/src/PluginWBFZExchangePlugin/FileOperator.h b/src/PluginWBFZExchangePlugin/FileOperator.h new file mode 100644 index 0000000..9dc383a --- /dev/null +++ b/src/PluginWBFZExchangePlugin/FileOperator.h @@ -0,0 +1,50 @@ +#pragma once + +#ifndef FILEOPERATOR_H +#define FILEOPERATOR_H + +#include "referenceHeader.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +bool isDirectory(const QString& path); +bool isExists(const QString& path); +bool isFile(const QString& path); +void removeFile(const QString& filePath); +unsigned long convertToULong(const QString& input); +/// +/// 获取文件(绝对路径) +/// +/// +/// +/// +std::vector getFilelist(const QString& folderpath, const QString& FilenameExtension = ".*",int (*logfun)(QString logtext,int value)=nullptr); + +QString getParantFolderNameFromPath(const QString& path); + +QString getFileNameFromPath(const QString& path); + +int write_binfile(char* filepath, char* data, size_t data_len); + + char* read_textfile(char* text_path, int* length); + +bool exists_test(const QString& name); + +size_t fsize(FILE* fp); + +QString getParantFromPath(const QString& path); +void copyFile(const QString& sourcePath, const QString& destinationPath); +// QT FileOperator +#endif \ No newline at end of file diff --git a/src/LAMPTool/GeoOperator.cpp b/src/PluginWBFZExchangePlugin/GeoOperator.cpp similarity index 80% rename from src/LAMPTool/GeoOperator.cpp rename to src/PluginWBFZExchangePlugin/GeoOperator.cpp index fdc77ce..c78fd67 100644 --- a/src/LAMPTool/GeoOperator.cpp +++ b/src/PluginWBFZExchangePlugin/GeoOperator.cpp @@ -22,24 +22,24 @@ using namespace std; using namespace Eigen; -Landpoint LAMPTOOLAPI operator +(const Landpoint& p1, const Landpoint& p2) +Landpoint operator +(const Landpoint& p1, const Landpoint& p2) { return Landpoint{ p1.lon + p2.lon,p1.lat + p2.lat,p1.ati + p2.ati }; } -Landpoint LAMPTOOLAPI operator -(const Landpoint& p1, const Landpoint& p2) +Landpoint operator -(const Landpoint& p1, const Landpoint& p2) { return Landpoint{ p1.lon - p2.lon,p1.lat - p2.lat,p1.ati - p2.ati }; } -bool LAMPTOOLAPI operator ==(const Landpoint& p1, const Landpoint& p2) +bool operator ==(const Landpoint& p1, const Landpoint& p2) { return p1.lat == p2.lat && p1.lon == p2.lon && p1.ati == p2.ati; } -Landpoint LAMPTOOLAPI operator *(const Landpoint& p, double scale) +Landpoint operator *(const Landpoint& p, double scale) { return Landpoint{ p.lon * scale, @@ -49,7 +49,7 @@ Landpoint LAMPTOOLAPI operator *(const Landpoint& p, double scale) } -Landpoint LAMPTOOLAPI LLA2XYZ(const Landpoint& LLA) { +Landpoint LLA2XYZ(const Landpoint& LLA) { double L = LLA.lon * d2r; double B = LLA.lat * d2r; double H = LLA.ati; @@ -68,7 +68,7 @@ Landpoint LAMPTOOLAPI LLA2XYZ(const Landpoint& LLA) { } -Eigen::MatrixXd LAMPTOOLAPI LLA2XYZ(Eigen::MatrixXd landpoint) +Eigen::MatrixXd LLA2XYZ(Eigen::MatrixXd landpoint) { landpoint.col(0) = landpoint.col(0).array() * d2r; // lon landpoint.col(1) = landpoint.col(1).array() * d2r; // lat @@ -88,7 +88,7 @@ Eigen::MatrixXd LAMPTOOLAPI LLA2XYZ(Eigen::MatrixXd landpoint) } -Landpoint LAMPTOOLAPI XYZ2LLA(const Landpoint& XYZ) { +Landpoint XYZ2LLA(const Landpoint& XYZ) { double tmpX = XYZ.lon;// double temY = XYZ.lat;// double temZ = XYZ.ati; @@ -118,7 +118,7 @@ Landpoint LAMPTOOLAPI XYZ2LLA(const Landpoint& XYZ) { -double LAMPTOOLAPI getAngle(const Landpoint& a, const Landpoint& b) +double getAngle(const Landpoint& a, const Landpoint& b) { double c = dot(a, b) / (getlength(a) * getlength(b)); if (a.lon * b.lat - a.lat * b.lon >= 0) { @@ -129,17 +129,17 @@ double LAMPTOOLAPI getAngle(const Landpoint& a, const Landpoint& b) } } -double LAMPTOOLAPI dot(const Landpoint& p1, const Landpoint& p2) +double dot(const Landpoint& p1, const Landpoint& p2) { return p1.lat * p2.lat + p1.lon * p2.lon + p1.ati * p2.ati; } -double LAMPTOOLAPI getlength(const Landpoint& p1) { +double getlength(const Landpoint& p1) { return sqrt(dot(p1, p1)); } -Landpoint LAMPTOOLAPI crossProduct(const Landpoint& a, const Landpoint& b) { +Landpoint crossProduct(const Landpoint& a, const Landpoint& b) { return Landpoint{ a.lat * b.ati - a.ati * b.lat,//x a.ati * b.lon - a.lon * b.ati,//y @@ -147,28 +147,28 @@ Landpoint LAMPTOOLAPI crossProduct(const Landpoint& a, const Landpoint& b) { }; } -float LAMPTOOLAPI cross2d(Point_3d a, Point_3d b) +float cross2d(Point_3d a, Point_3d b) { return a.x * b.y - a.y * b.x; } -Point_3d LAMPTOOLAPI operator -(Point_3d a, Point_3d b) +Point_3d operator -(Point_3d a, Point_3d b) { return Point_3d{ a.x - b.x, a.y - b.y, a.z - b.z }; } -Point_3d LAMPTOOLAPI operator +(Point_3d a, Point_3d b) +Point_3d operator +(Point_3d a, Point_3d b) { return Point_3d{ a.x + b.x, a.y + b.y, a.z + b.z }; } -double LAMPTOOLAPI operator /(Point_3d a, Point_3d b) +double operator /(Point_3d a, Point_3d b) { return sqrt(pow(a.x, 2) + pow(a.y, 2)) / sqrt(pow(b.x, 2) + pow(b.y, 2)); } -Landpoint LAMPTOOLAPI getSlopeVector(const Landpoint& p0, const Landpoint& p1, const Landpoint& p2, const Landpoint& p3, const Landpoint& p4) { +Landpoint getSlopeVector(const Landpoint& p0, const Landpoint& p1, const Landpoint& p2, const Landpoint& p3, const Landpoint& p4) { Landpoint n0 = LLA2XYZ(p0), n1 = LLA2XYZ(p1), @@ -226,7 +226,7 @@ Landpoint LAMPTOOLAPI getSlopeVector(const Landpoint& p0, const Landpoint& p1, -double LAMPTOOLAPI distance(const Vector3D& p1, const Vector3D& p2) +double distance(const Vector3D& p1, const Vector3D& p2) { double dx = p1.x - p2.x; double dy = p1.y - p2.y; @@ -234,7 +234,7 @@ double LAMPTOOLAPI distance(const Vector3D& p1, const Vector3D& p2) return std::sqrt(dx * dx + dy * dy + dz * dz); } -double LAMPTOOLAPI pointToLineDistance(const Vector3D& point, const Vector3D& linePoint, const Vector3D& lineDirection) +double pointToLineDistance(const Vector3D& point, const Vector3D& linePoint, const Vector3D& lineDirection) { Vector3D pointToLine = { point.x - linePoint.x, point.y - linePoint.y, point.z - linePoint.z }; @@ -249,7 +249,7 @@ double LAMPTOOLAPI pointToLineDistance(const Vector3D& point, const Vector3D& li return distance(point, projection); } -SphericalCoordinates LAMPTOOLAPI cartesianToSpherical(const CartesianCoordinates& cartesian) +SphericalCoordinates cartesianToSpherical(const CartesianCoordinates& cartesian) { SphericalCoordinates spherical; @@ -260,7 +260,7 @@ SphericalCoordinates LAMPTOOLAPI cartesianToSpherical(const CartesianCoordinates return spherical; } -CartesianCoordinates LAMPTOOLAPI sphericalToCartesian(const SphericalCoordinates& spherical) +CartesianCoordinates sphericalToCartesian(const SphericalCoordinates& spherical) { CartesianCoordinates cartesian; diff --git a/src/PluginWBFZExchangePlugin/GeoOperator.h b/src/PluginWBFZExchangePlugin/GeoOperator.h new file mode 100644 index 0000000..18a951f --- /dev/null +++ b/src/PluginWBFZExchangePlugin/GeoOperator.h @@ -0,0 +1,111 @@ +#pragma once + + +#ifndef _GEOOPERATOR_H +#define _GEOOPERATOR_H +#include "WBFZExchangePluginAPI.h" +#include "BaseConstVariable.h" +#include +#include +#include +#include +#include +#include +#include + +/// +/// 三维向量,坐标表达 +/// +struct Landpoint // 点 SAR影像的像素坐标; +{ + /// + /// 经度x + /// + double lon; // 经度x lon pixel_col + /// + /// 纬度y + /// + double lat; // 纬度y lat pixel_row + /// + /// 高度z + /// + double ati; // 高程z ati pixel_time +}; +struct Point_3d { + double x; + double y; + double z; +}; + +/// +/// 将经纬度转换为地固参心坐标系 +/// +/// 经纬度点--degree +/// 投影坐标系点 +Landpoint LLA2XYZ(const Landpoint& LLA); +Eigen::MatrixXd LLA2XYZ(Eigen::MatrixXd landpoint); + +/// +/// 将地固参心坐标系转换为经纬度 +/// +/// 固参心坐标系 +/// 经纬度--degree +Landpoint XYZ2LLA(const Landpoint& XYZ); + + +Landpoint operator +(const Landpoint& p1, const Landpoint& p2); + +Landpoint operator -(const Landpoint& p1, const Landpoint& p2); + +bool operator ==(const Landpoint& p1, const Landpoint& p2); + +Landpoint operator *(const Landpoint& p, double scale); + +double getAngle(const Landpoint& a, const Landpoint& b); + +double dot(const Landpoint& p1, const Landpoint& p2); + +double getlength(const Landpoint& p1); + +Landpoint crossProduct(const Landpoint& a, const Landpoint& b); + + +Landpoint getSlopeVector(const Landpoint& p0, const Landpoint& p1, const Landpoint& p2, const Landpoint& p3, const Landpoint& p4); + + + +float cross2d(Point_3d a, Point_3d b); + +Point_3d operator -(Point_3d a, Point_3d b); + +Point_3d operator +(Point_3d a, Point_3d b); + +double operator /(Point_3d a, Point_3d b); + + + +// 矢量计算 +struct Vector3D { + double x, y, z; +}; + +// 计算两点之间的距离 +double distance(const Vector3D& p1, const Vector3D& p2); +// 计算点到直线的最短距离 +double pointToLineDistance(const Vector3D& point, const Vector3D& linePoint, const Vector3D& lineDirection); + + +struct CartesianCoordinates { + double x, y, z; +}; + +struct SphericalCoordinates { + double r, theta, phi; +}; + +SphericalCoordinates cartesianToSpherical(const CartesianCoordinates& cartesian); + +CartesianCoordinates sphericalToCartesian(const SphericalCoordinates& spherical); + + +#endif \ No newline at end of file diff --git a/src/WBCLFZSystemModule/HeaderSort.h b/src/PluginWBFZExchangePlugin/HeaderSort.h similarity index 100% rename from src/WBCLFZSystemModule/HeaderSort.h rename to src/PluginWBFZExchangePlugin/HeaderSort.h diff --git a/src/LAMPTool/ImageOperatorBase.cpp b/src/PluginWBFZExchangePlugin/ImageOperatorBase.cpp similarity index 95% rename from src/LAMPTool/ImageOperatorBase.cpp rename to src/PluginWBFZExchangePlugin/ImageOperatorBase.cpp index 9e75883..78db892 100644 --- a/src/LAMPTool/ImageOperatorBase.cpp +++ b/src/PluginWBFZExchangePlugin/ImageOperatorBase.cpp @@ -29,7 +29,7 @@ using namespace Eigen; -std::shared_ptr LAMPTOOLAPI OpenDataset(const QString& in_path,GDALAccess rwmode) +std::shared_ptr OpenDataset(const QString& in_path,GDALAccess rwmode) { GDALAllRegister(); GDALDataset* dataset_ptr = (GDALDataset*)(GDALOpen(in_path.toUtf8().constData(), rwmode)); @@ -37,13 +37,13 @@ std::shared_ptr LAMPTOOLAPI OpenDataset(const QString& in_path,GDA return rasterDataset; } -void LAMPTOOLAPI CloseDataset(GDALDataset* ptr) +void CloseDataset(GDALDataset* ptr) { GDALClose(ptr); ptr = NULL; } -int LAMPTOOLAPI TIFF2ENVI(QString in_tiff_path, QString out_envi_path) +int TIFF2ENVI(QString in_tiff_path, QString out_envi_path) { std::shared_ptr ds = OpenDataset(in_tiff_path); const char* args[] = { "-of", "ENVI", NULL }; @@ -53,7 +53,7 @@ int LAMPTOOLAPI TIFF2ENVI(QString in_tiff_path, QString out_envi_path) return 0; } -int LAMPTOOLAPI ENVI2TIFF(QString in_envi_path, QString out_tiff_path) +int ENVI2TIFF(QString in_envi_path, QString out_tiff_path) { std::shared_ptr ds = OpenDataset(in_envi_path); const char* args[] = { "-of", "Gtiff", NULL }; @@ -63,7 +63,7 @@ int LAMPTOOLAPI ENVI2TIFF(QString in_envi_path, QString out_tiff_path) return 0; } -int LAMPTOOLAPI CreateDataset(QString new_file_path,int height, int width, int band_num,double* gt, QString projection, GDALDataType gdal_dtype ,bool need_gt) +int CreateDataset(QString new_file_path,int height, int width, int band_num,double* gt, QString projection, GDALDataType gdal_dtype ,bool need_gt) { GDALAllRegister(); GDALDriver* poDriver = GetGDALDriverManager()->GetDriverByName("ENVI"); @@ -78,7 +78,7 @@ int LAMPTOOLAPI CreateDataset(QString new_file_path,int height, int width, int return 0; } -int LAMPTOOLAPI saveDataset(QString new_file_path, int start_line,int start_cols ,int band_ids, int datacols,int datarows,void* databuffer) +int saveDataset(QString new_file_path, int start_line,int start_cols ,int band_ids, int datacols,int datarows,void* databuffer) { GDALAllRegister(); std::shared_ptr poDstDS = OpenDataset(new_file_path,GA_Update); @@ -88,7 +88,7 @@ int LAMPTOOLAPI saveDataset(QString new_file_path, int start_line,int start_col return 0; } -int LAMPTOOLAPI block_num_pre_memory(int block_width, int height, GDALDataType gdal_datatype,double memey_size) +int block_num_pre_memory(int block_width, int height, GDALDataType gdal_datatype,double memey_size) { // 计算大小 int size_meta = 0; @@ -134,7 +134,7 @@ int LAMPTOOLAPI block_num_pre_memory(int block_width, int height, GDALDataType return block_num; } -Eigen::Matrix LAMPTOOLAPI ReadComplexMatrixData(int start_line, int width, int line_num, std::shared_ptr rasterDataset, GDALDataType gdal_datatype) +Eigen::Matrix ReadComplexMatrixData(int start_line, int width, int line_num, std::shared_ptr rasterDataset, GDALDataType gdal_datatype) { int band_num = rasterDataset->GetRasterCount(); @@ -276,7 +276,7 @@ Eigen::Matrix LAMPTOOL } } -Eigen::Matrix LAMPTOOLAPI ReadMatrixDoubleData(int start_line, int width, int line_num, std::shared_ptr rasterDataset, GDALDataType gdal_datatype, int band_idx) +Eigen::Matrix ReadMatrixDoubleData(int start_line, int width, int line_num, std::shared_ptr rasterDataset, GDALDataType gdal_datatype, int band_idx) { // 构建矩阵块,使用eigen 进行矩阵计算,加速计算 bool _flag = false; @@ -341,7 +341,7 @@ Eigen::Matrix LAMPTOOL return data_mat; } -Eigen::MatrixXd LAMPTOOLAPI getGeoTranslationArray(QString in_path) +Eigen::MatrixXd getGeoTranslationArray(QString in_path) { @@ -349,7 +349,7 @@ Eigen::MatrixXd LAMPTOOLAPI getGeoTranslationArray(QString in_path) return Eigen::MatrixXd(); } -ImageGEOINFO LAMPTOOLAPI getImageINFO(QString in_path) +ImageGEOINFO getImageINFO(QString in_path) { std::shared_ptr df = OpenDataset(in_path); int width = df->GetRasterXSize(); @@ -363,7 +363,7 @@ ImageGEOINFO LAMPTOOLAPI getImageINFO(QString in_path) return result; } -GDALDataType LAMPTOOLAPI getGDALDataType(QString fileptah) +GDALDataType getGDALDataType(QString fileptah) { omp_lock_t lock; omp_init_lock(&lock); @@ -833,7 +833,7 @@ Eigen::MatrixXd gdalImage::getHist(int bandids) } -gdalImage LAMPTOOLAPI CreategdalImage(const QString& img_path, int height, int width, int band_num, Eigen::MatrixXd gt, QString projection, bool need_gt,bool overwrite) { +gdalImage CreategdalImage(const QString& img_path, int height, int width, int band_num, Eigen::MatrixXd gt, QString projection, bool need_gt,bool overwrite) { if (exists_test(img_path.toUtf8().constData())) { if (overwrite) { @@ -870,7 +870,7 @@ gdalImage LAMPTOOLAPI CreategdalImage(const QString& img_path, int height, int return result_img; } -gdalImageComplex LAMPTOOLAPI CreategdalImageComplex(const QString& img_path, int height, int width, int band_num, Eigen::MatrixXd gt, QString projection, bool need_gt, bool overwrite) +gdalImageComplex CreategdalImageComplex(const QString& img_path, int height, int width, int band_num, Eigen::MatrixXd gt, QString projection, bool need_gt, bool overwrite) { if (exists_test(img_path.toUtf8().constData())) { if (overwrite) { @@ -908,7 +908,7 @@ gdalImageComplex LAMPTOOLAPI CreategdalImageComplex(const QString& img_path, in } -int LAMPTOOLAPI ResampleGDAL(const char* pszSrcFile, const char* pszOutFile, double* gt, int new_width, int new_height, GDALResampleAlg eResample) +int ResampleGDAL(const char* pszSrcFile, const char* pszOutFile, double* gt, int new_width, int new_height, GDALResampleAlg eResample) { GDALAllRegister(); CPLSetConfigOption("GDAL_FILENAME_IS_UTF8", "NO"); @@ -1014,7 +1014,7 @@ int LAMPTOOLAPI ResampleGDAL(const char* pszSrcFile, const char* pszOutFile, do return 0; } -int LAMPTOOLAPI ResampleGDALs(const char* pszSrcFile, int band_ids, GDALRIOResampleAlg eResample) +int ResampleGDALs(const char* pszSrcFile, int band_ids, GDALRIOResampleAlg eResample) { GDALAllRegister(); CPLSetConfigOption("GDAL_FILENAME_IS_UTF8", "NO"); @@ -1072,7 +1072,7 @@ int LAMPTOOLAPI ResampleGDALs(const char* pszSrcFile, int band_ids, GDALRIOResa return 0; } -int LAMPTOOLAPI saveMatrixXcd2TiFF(Eigen::MatrixXcd data, QString out_tiff_path) +int saveMatrixXcd2TiFF(Eigen::MatrixXcd data, QString out_tiff_path) { int rows = data.rows(); int cols = data.cols(); diff --git a/src/LAMPTool/ImageOperatorBase.h b/src/PluginWBFZExchangePlugin/ImageOperatorBase.h similarity index 62% rename from src/LAMPTool/ImageOperatorBase.h rename to src/PluginWBFZExchangePlugin/ImageOperatorBase.h index d731e38..67f04df 100644 --- a/src/LAMPTool/ImageOperatorBase.h +++ b/src/PluginWBFZExchangePlugin/ImageOperatorBase.h @@ -39,31 +39,31 @@ struct ImageGEOINFO { // 判断是否需要输出为DLL #define DLLOUT // 文件打开 -std::shared_ptr LAMPTOOLAPI OpenDataset(const QString& in_path, GDALAccess rwmode= GA_ReadOnly); // 当指令销毁时,调用GDALClose 销毁类型 -void LAMPTOOLAPI CloseDataset(GDALDataset* ptr); +std::shared_ptr OpenDataset(const QString& in_path, GDALAccess rwmode= GA_ReadOnly); // 当指令销毁时,调用GDALClose 销毁类型 +void CloseDataset(GDALDataset* ptr); // 数据格式转换 -int LAMPTOOLAPI TIFF2ENVI(QString in_tiff_path,QString out_envi_path); -int LAMPTOOLAPI ENVI2TIFF(QString in_envi_path,QString out_tiff_path); +int TIFF2ENVI(QString in_tiff_path,QString out_envi_path); +int ENVI2TIFF(QString in_envi_path,QString out_tiff_path); // 保存影像数据 --直接保存 ENVI 文件 -int LAMPTOOLAPI CreateDataset(QString new_file_path, int height, int width, int band_num, double* gt, QString projection, GDALDataType gdal_dtype, bool need_gt); // 创建文件 +int CreateDataset(QString new_file_path, int height, int width, int band_num, double* gt, QString projection, GDALDataType gdal_dtype, bool need_gt); // 创建文件 -int LAMPTOOLAPI saveDataset(QString new_file_path, int start_line, int start_cols, int band_ids, int datacols, int datarows, void* databuffer); +int saveDataset(QString new_file_path, int start_line, int start_cols, int band_ids, int datacols, int datarows, void* databuffer); // 根据限制条件估算分块大小 -int LAMPTOOLAPI block_num_pre_memory(int width, int height, GDALDataType gdal_dtype,double memey_size); +int block_num_pre_memory(int width, int height, GDALDataType gdal_dtype,double memey_size); // 将结果转换为复数 或者 实数 -Eigen::Matrix LAMPTOOLAPI ReadComplexMatrixData(int start_line,int width, int line_num, std::shared_ptr rasterDataset, GDALDataType gdal_datatype); +Eigen::Matrix ReadComplexMatrixData(int start_line,int width, int line_num, std::shared_ptr rasterDataset, GDALDataType gdal_datatype); -Eigen::Matrix LAMPTOOLAPI ReadMatrixDoubleData(int start_line, int width, int line_num, std::shared_ptr rasterDataset, GDALDataType gdal_datatype,int band_idx); +Eigen::Matrix ReadMatrixDoubleData(int start_line, int width, int line_num, std::shared_ptr rasterDataset, GDALDataType gdal_datatype,int band_idx); -Eigen::MatrixXd LAMPTOOLAPI getGeoTranslationArray(QString in_path); -ImageGEOINFO LAMPTOOLAPI getImageINFO(QString in_path); +Eigen::MatrixXd getGeoTranslationArray(QString in_path); +ImageGEOINFO getImageINFO(QString in_path); -GDALDataType LAMPTOOLAPI getGDALDataType(QString fileptah); +GDALDataType getGDALDataType(QString fileptah); struct DemBox { @@ -77,7 +77,7 @@ struct DemBox { /// /// gdalImage图像操作类 /// -class LAMPTOOLAPI gdalImage +class gdalImage { public: // 方法 @@ -127,7 +127,7 @@ public: /// /// gdalImage图像操作类 /// -class LAMPTOOLAPI gdalImageComplex:public gdalImage +class gdalImageComplex:public gdalImage { public: // 方法 @@ -155,20 +155,20 @@ public: -gdalImage LAMPTOOLAPI CreategdalImage(const QString& img_path, int height, int width, int band_num, Eigen::MatrixXd gt, QString projection, bool need_gt = true, bool overwrite = false); -gdalImageComplex LAMPTOOLAPI CreategdalImageComplex(const QString& img_path, int height, int width, int band_num, Eigen::MatrixXd gt, QString projection, bool need_gt = true, bool overwrite = false); +gdalImage CreategdalImage(const QString& img_path, int height, int width, int band_num, Eigen::MatrixXd gt, QString projection, bool need_gt = true, bool overwrite = false); +gdalImageComplex CreategdalImageComplex(const QString& img_path, int height, int width, int band_num, Eigen::MatrixXd gt, QString projection, bool need_gt = true, bool overwrite = false); -int LAMPTOOLAPI ResampleGDAL(const char* pszSrcFile, const char* pszOutFile, double* gt, int new_width, int new_height, GDALResampleAlg eResample); +int ResampleGDAL(const char* pszSrcFile, const char* pszOutFile, double* gt, int new_width, int new_height, GDALResampleAlg eResample); -int LAMPTOOLAPI ResampleGDALs(const char* pszSrcFile, int band_ids, GDALRIOResampleAlg eResample = GRIORA_Bilinear); +int ResampleGDALs(const char* pszSrcFile, int band_ids, GDALRIOResampleAlg eResample = GRIORA_Bilinear); //--------------------- 保存文博 ------------------------------- -int LAMPTOOLAPI saveMatrixXcd2TiFF(Eigen::MatrixXcd data, QString out_tiff_path); +int saveMatrixXcd2TiFF(Eigen::MatrixXcd data, QString out_tiff_path); //---------------------------------------------------- diff --git a/src/WBCLFZSystemModule/ImageShowDialogClass.cpp b/src/PluginWBFZExchangePlugin/ImageShowDialogClass.cpp similarity index 72% rename from src/WBCLFZSystemModule/ImageShowDialogClass.cpp rename to src/PluginWBFZExchangePlugin/ImageShowDialogClass.cpp index 2d2820c..ad1be76 100644 --- a/src/WBCLFZSystemModule/ImageShowDialogClass.cpp +++ b/src/PluginWBFZExchangePlugin/ImageShowDialogClass.cpp @@ -1,19 +1,19 @@ #include "ImageShowDialogClass.h" - +#include "ui_ImageShowDialogClass.h" ImageShowDialogClass ::ImageShowDialogClass(QWidget *parent) : QDialog(parent) { - ui.setupUi(this); - ui.m_plot->setInteractions(QCP::iRangeDrag | QCP::iRangeZoom); - connect(this->ui.m_plot, SIGNAL(mouseMove(QMouseEvent*)), this, SLOT(updateCursor(QMouseEvent*))); + ui->setupUi(this); + ui->m_plot->setInteractions(QCP::iRangeDrag | QCP::iRangeZoom); + connect(this->ui->m_plot, SIGNAL(mouseMove(QMouseEvent*)), this, SLOT(updateCursor(QMouseEvent*))); this->graphclass=LAMPDATASHOWCLASS::NOWINDOWS; this->menubar = new QMenuBar(this); QMenu* windowsMenu = this->menubar->addMenu(u8"数据"); QAction* action_cursor_enable = windowsMenu->addAction(u8"打开游标"); - QObject::connect(action_cursor_enable,SIGNAL(triggered()),this,SLOT(on_action_cursor_enable_trigged())); - this->tracer=new QCPItemTracer(this->ui.m_plot); - this->m_plot = ui.m_plot; + //QObject::connect(action_cursor_enable,SIGNAL(triggered()),this,SLOT(on_action_cursor_enable_trigged())); + this->tracer=new QCPItemTracer(this->ui->m_plot); + this->m_plot = ui->m_plot; this->desCursor = nullptr; this->HlineCursor = nullptr; @@ -27,53 +27,53 @@ ImageShowDialogClass ::ImageShowDialogClass(QWidget *parent) this->statusbar->setMaximumHeight(20); this->statusbar->setMinimumHeight(20); - ui.verticalLayout->setMenuBar(this->menubar); - ui.verticalLayout->addWidget(this->statusbar); - this->setLayout(ui.verticalLayout); + ui->verticalLayout->setMenuBar(this->menubar); + ui->verticalLayout->addWidget(this->statusbar); + this->setLayout(ui->verticalLayout); } ImageShowDialogClass::~ImageShowDialogClass() {} - -void ImageShowDialogClass::on_action_cursor_enable_trigged() -{ - this->desCursor = new ImageShowCursorDesClass(); - - - QObject::connect(this->desCursor, SIGNAL(windowsClose()), this, SLOT(on_action_descursor_close_trigged())); - - - this->desCursorflag = true; - for (size_t i = 0; i < this->getGraphCount(); i++) { - if (this->getGraphClass(i) == LAMPDATASHOWCLASS::LAMPColorMap) { - this->HlineCursorflag = true; - this->VlineCursorflag = true; - } - } - - //下面的代码就是设置游标的外观 - this->setMouseTracking(true); - tracer->setInterpolating(false);//禁用插值 - tracer->setPen(QPen(Qt::DashLine));//虚线游标 - tracer->setStyle(QCPItemTracer::tsPlus);//游标样式:十字星、圆圈、方框 - tracer->setBrush(Qt::red);//游标颜色 - - if (this->graphclass == LAMPDATASHOWCLASS::LAMPColorMap) { - this->HlineCursor = new ImageShowCursorLineClass(); - this->VlineCursor = new ImageShowCursorLineClass(); - QObject::connect(this->HlineCursor, SIGNAL(windowsClose()), this, SLOT(on_action_Hlinecursor_close_trigged())); - QObject::connect(this->VlineCursor, SIGNAL(windowsClose()), this, SLOT(on_action_VVlinecursor_close_trigged())); - QObject::connect(this->ui.m_plot->xAxis, SIGNAL(rangeChanged(QCPRange)), this->HlineCursor, SLOT(xAxisRangeChanged(QCPRange))); - QObject::connect(this->ui.m_plot->yAxis, SIGNAL(rangeChanged(QCPRange)), this->HlineCursor, SLOT(xAxisRangeChanged(QCPRange))); - this->HlineCursor->show(); - this->VlineCursor->show(); - } - this->desCursor->show(); -} - - +// +//void ImageShowDialogClass::on_action_cursor_enable_trigged() +//{ +// this->desCursor = new ImageShowCursorDesClass(); +// +// +// QObject::connect(this->desCursor, SIGNAL(windowsClose()), this, SLOT(on_action_descursor_close_trigged())); +// +// +// this->desCursorflag = true; +// for (size_t i = 0; i < this->getGraphCount(); i++) { +// if (this->getGraphClass(i) == LAMPDATASHOWCLASS::LAMPColorMap) { +// this->HlineCursorflag = true; +// this->VlineCursorflag = true; +// } +// } +// +// //下面的代码就是设置游标的外观 +// this->setMouseTracking(true); +// tracer->setInterpolating(false);//禁用插值 +// tracer->setPen(QPen(Qt::DashLine));//虚线游标 +// tracer->setStyle(QCPItemTracer::tsPlus);//游标样式:十字星、圆圈、方框 +// tracer->setBrush(Qt::red);//游标颜色 +// +// if (this->graphclass == LAMPDATASHOWCLASS::LAMPColorMap) { +// this->HlineCursor = new ImageShowCursorLineClass(); +// this->VlineCursor = new ImageShowCursorLineClass(); +// QObject::connect(this->HlineCursor, SIGNAL(windowsClose()), this, SLOT(on_action_Hlinecursor_close_trigged())); +// QObject::connect(this->VlineCursor, SIGNAL(windowsClose()), this, SLOT(on_action_VVlinecursor_close_trigged())); +// QObject::connect(this->ui->m_plot->xAxis, SIGNAL(rangeChanged(QCPRange)), this->HlineCursor, SLOT(xAxisRangeChanged(QCPRange))); +// QObject::connect(this->ui->m_plot->yAxis, SIGNAL(rangeChanged(QCPRange)), this->HlineCursor, SLOT(xAxisRangeChanged(QCPRange))); +// this->HlineCursor->show(); +// this->VlineCursor->show(); +// } +// this->desCursor->show(); +//} +// +// void ImageShowDialogClass::load_double_MatrixX_data(Eigen::MatrixXd data, QString name) { @@ -81,7 +81,7 @@ void ImageShowDialogClass::load_double_MatrixX_data(Eigen::MatrixXd data, QStrin int nx = data.rows(); // 行数 int ny = data.cols(); // 列数 // 创建 Color Map - QCPColorMap* colorMap = new QCPColorMap(ui.m_plot->xAxis, ui.m_plot->yAxis); + QCPColorMap* colorMap = new QCPColorMap(ui->m_plot->xAxis, ui->m_plot->yAxis); colorMap->data()->setSize(nx, ny); // 设置 Color Map 的大小 colorMap->data()->setRange(QCPRange(0, nx), QCPRange(0, ny)); // 设置坐标轴的范围 @@ -95,8 +95,8 @@ void ImageShowDialogClass::load_double_MatrixX_data(Eigen::MatrixXd data, QStrin colorMap->setGradient(QCPColorGradient::gpJet); colorMap->rescaleDataRange(true); - ui.m_plot->rescaleAxes(); - ui.m_plot->replot(); + ui->m_plot->rescaleAxes(); + ui->m_plot->replot(); } @@ -105,9 +105,9 @@ void ImageShowDialogClass::load_double_MatrixX_data(Eigen::MatrixXd X, Eigen::Ma int nx = data.cols(); // 行数 int ny = data.rows(); // 列数 // 创建 Color Map - ui.m_plot->xAxis->setRange(X(0, 0), X(0, nx - 1)); - ui.m_plot->yAxis->setRange(Y(0, 0), Y(ny - 1, 0)); - QCPColorMap* colorMap = new QCPColorMap(ui.m_plot->xAxis, ui.m_plot->yAxis); + ui->m_plot->xAxis->setRange(X(0, 0), X(0, nx - 1)); + ui->m_plot->yAxis->setRange(Y(0, 0), Y(ny - 1, 0)); + QCPColorMap* colorMap = new QCPColorMap(ui->m_plot->xAxis, ui->m_plot->yAxis); colorMap->data()->setSize(ny, nx); // 设置 Color Map 的大小 colorMap->data()->setRange(QCPRange(X(0,0), X(0,nx-1)), QCPRange(Y(0,0),Y(ny-1,0))); // 设置坐标轴的范围 // 填充数据 @@ -120,8 +120,8 @@ void ImageShowDialogClass::load_double_MatrixX_data(Eigen::MatrixXd X, Eigen::Ma colorMap->setGradient(QCPColorGradient::gpJet); colorMap->rescaleDataRange(true); - ui.m_plot->rescaleAxes(); - ui.m_plot->replot(); + ui->m_plot->rescaleAxes(); + ui->m_plot->replot(); } void ImageShowDialogClass::remove_Data(QString name) @@ -143,7 +143,7 @@ LAMPDATASHOWCLASS ImageShowDialogClass::getGraphClass(size_t i) { return LAMPDATASHOWCLASS::NOWINDOWS; } - QCPAbstractPlottable* plottable = this->ui.m_plot->plottable(i); + QCPAbstractPlottable* plottable = this->ui->m_plot->plottable(i); if (dynamic_cast(plottable)) { return LAMPDATASHOWCLASS::LAMPGraph; } @@ -158,25 +158,25 @@ LAMPDATASHOWCLASS ImageShowDialogClass::getGraphClass(size_t i) } } -size_t ImageShowDialogClass::getGraphCount() -{ - return this->m_plot->graphCount(); -} - -void ImageShowDialogClass::on_action_descursor_close_trigged() -{ - this->desCursorflag = false; -} - -void ImageShowDialogClass::on_action_Hlinecursor_close_trigged() -{ - this->HlineCursorflag = false; -} - -void ImageShowDialogClass::on_action_VVlinecursor_close_trigged() -{ - this->VlineCursorflag = false; -} +//size_t ImageShowDialogClass::getGraphCount() +//{ +// return this->m_plot->graphCount(); +//} +// +//void ImageShowDialogClass::on_action_descursor_close_trigged() +//{ +// this->desCursorflag = false; +//} +// +//void ImageShowDialogClass::on_action_Hlinecursor_close_trigged() +//{ +// this->HlineCursorflag = false; +//} +// +//void ImageShowDialogClass::on_action_VVlinecursor_close_trigged() +//{ +// this->VlineCursorflag = false; +//} void ImageShowDialogClass::updateCursor(QMouseEvent *event) { @@ -197,7 +197,7 @@ void ImageShowDialogClass::updateCursor(QMouseEvent *event) if (this->desCursorflag) { if (this->graphclass == LAMPDATASHOWCLASS::LAMPColorMap) { - QCPColorMap* colorMap = dynamic_cast(this->ui.m_plot->plottable(0)); + QCPColorMap* colorMap = dynamic_cast(this->ui->m_plot->plottable(0)); double dataValue = colorMap->data()->data(x, y); this->desCursor->updateCursorContent(u8"X: " + QString::number(x, 'f', 6) + " y: " + QString::number(y, 'f', 6) +u8"\n" +u8"DataValue: "+QString::number(dataValue)); } diff --git a/src/WBCLFZSystemModule/ImageShowDialogClass.h b/src/PluginWBFZExchangePlugin/ImageShowDialogClass.h similarity index 85% rename from src/WBCLFZSystemModule/ImageShowDialogClass.h rename to src/PluginWBFZExchangePlugin/ImageShowDialogClass.h index ef8e5be..a56f1cc 100644 --- a/src/WBCLFZSystemModule/ImageShowDialogClass.h +++ b/src/PluginWBFZExchangePlugin/ImageShowDialogClass.h @@ -1,10 +1,13 @@ #pragma once #ifndef IMAGESHOWDIALOGCLASS_H #define IMAGESHOWDIALOGCLASS_H +#include "WBFZExchangePluginAPI.h" #include "AllHead.h" #include -#include "TaskXml/TaskTreeClass.h" -#include "ui_ImageShowDialogClass.h" +#include "TaskTreeClass.h" + + + //=========================== // 定义需要绘制的图像的类型 @@ -16,7 +19,9 @@ enum LAMPDATASHOWCLASS { NOWINDOWS }; - +namespace Ui{ + class ImageShowDialogClass; +} @@ -26,7 +31,7 @@ enum LAMPDATASHOWCLASS { // 1. 单纯的描述游标,主要用来展示坐标,还有当前数据信息 // 2. 区域性描述游标,通过线,等用来展示某一个区域的信息 //=========================== -class ImageShowCursorDesClass : public QDialog +class ImageShowCursorDesClass : public QDialog { Q_OBJECT public: @@ -46,7 +51,7 @@ protected: }; -class ImageShowCursorLineClass :public QDialog { +class ImageShowCursorLineClass :public QDialog { Q_OBJECT public: QMenuBar* menubar; @@ -92,7 +97,7 @@ protected: // 1. 单纯的描述游标,主要用来展示坐标,还有当前数据信息 // 2. 区域性描述游标,通过线,等用来展示某一个区域的信息 //=========================== -class ImageShowDialogClass : public QDialog +class ImageShowDialogClass : public QDialog { Q_OBJECT private: @@ -124,15 +129,15 @@ public: LAMPDATASHOWCLASS getGraphClass(size_t i = 0); size_t getGraphCount(); private: - Ui::ImageShowDialogClass ui; + Ui::ImageShowDialogClass* ui; public slots: void updateCursor(QMouseEvent* event); public slots: // cursor - void on_action_cursor_enable_trigged(); - void on_action_descursor_close_trigged(); - void on_action_Hlinecursor_close_trigged(); - void on_action_VVlinecursor_close_trigged(); +// void on_action_cursor_enable_trigged(); +// void on_action_descursor_close_trigged(); +// void on_action_Hlinecursor_close_trigged(); +// void on_action_VVlinecursor_close_trigged(); }; diff --git a/src/WBCLFZSystemModule/ImageShowDialogClass.ui b/src/PluginWBFZExchangePlugin/ImageShowDialogClass.ui similarity index 100% rename from src/WBCLFZSystemModule/ImageShowDialogClass.ui rename to src/PluginWBFZExchangePlugin/ImageShowDialogClass.ui diff --git a/src/WBCLFZSystemModule/LAMPDataShowClass.cpp b/src/PluginWBFZExchangePlugin/LAMPDataShowClass.cpp similarity index 85% rename from src/WBCLFZSystemModule/LAMPDataShowClass.cpp rename to src/PluginWBFZExchangePlugin/LAMPDataShowClass.cpp index 72d0019..0adf111 100644 --- a/src/WBCLFZSystemModule/LAMPDataShowClass.cpp +++ b/src/PluginWBFZExchangePlugin/LAMPDataShowClass.cpp @@ -1,16 +1,18 @@ #include "LAMPDataShowClass.h" +#include "ui_LAMPDataShowClass.h" LAMPDataShowClass::LAMPDataShowClass(QWidget *parent) : QMainWindow(parent) { - ui.setupUi(this); + ui=new Ui::LAMPDataShowClassClass; + ui->setupUi(this); // 添加菜单项 - QMenu* FileOpenMenu = this->ui.menuFile->addMenu(u8"打开"); + QMenu* FileOpenMenu = this->ui->menuFile->addMenu(u8"打开"); QAction* action_openfile_tiff = FileOpenMenu->addAction(u8"tiff文件"); // 添加菜单项 QObject::connect(action_openfile_tiff, SIGNAL(triggered()), this, SLOT(on_action_openfile_tiff_triggered())); - QMenu* ComplexFileOpenMenu = this->ui.menuFile->addMenu(u8"打开复数数据"); + QMenu* ComplexFileOpenMenu = this->ui->menuFile->addMenu(u8"打开复数数据"); QAction* action_openfile_tiff_complex = ComplexFileOpenMenu->addAction(u8"tiff文件"); // 添加菜单项 QObject::connect(action_openfile_tiff_complex, SIGNAL(triggered()), this, SLOT(on_action_openfile_tiff_complex_triggered())); QAction* action_openfile_envi_complex = ComplexFileOpenMenu->addAction(u8"envi文件"); // 添加菜单项 @@ -18,19 +20,18 @@ LAMPDataShowClass::LAMPDataShowClass(QWidget *parent) this->setContextMenuPolicy(Qt::CustomContextMenu); - this->ui.listWidgetContent->setContextMenuPolicy(Qt::CustomContextMenu); + this->ui->listWidgetContent->setContextMenuPolicy(Qt::CustomContextMenu); } LAMPDataShowClass::~LAMPDataShowClass() {} - void LAMPDataShowClass::add_DataTree(TaskNode* node) { - QListWidgetItem* itemtemp = new QListWidgetItem(this->ui.listWidgetContent); + QListWidgetItem* itemtemp = new QListWidgetItem(this->ui->listWidgetContent); itemtemp->setSizeHint(node->sizeHint()); - this->ui.listWidgetContent->setItemWidget(itemtemp, node); - this->ui.listWidgetContent->addItem(itemtemp); + this->ui->listWidgetContent->setItemWidget(itemtemp, node); + this->ui->listWidgetContent->addItem(itemtemp); } void ShowComplexMatrixPlot(QCustomPlot* customPlot, const Eigen::MatrixXcd& complexMatrix) { @@ -95,6 +96,7 @@ void LAMPDataShowClass::on_action_openfile_envi_complex_triggered() void LAMPDataShowClass::load_complex_data(QString path) { + DebugInfo("LAMPDataShowClass::load_complex_data"); ComplexDataShowNode* node = new ComplexDataShowNode(); node->bangdindWindows(this); node->TaskXmlPath = path; diff --git a/src/WBCLFZSystemModule/LAMPDataShowClass.h b/src/PluginWBFZExchangePlugin/LAMPDataShowClass.h similarity index 72% rename from src/WBCLFZSystemModule/LAMPDataShowClass.h rename to src/PluginWBFZExchangePlugin/LAMPDataShowClass.h index e37034d..881073d 100644 --- a/src/WBCLFZSystemModule/LAMPDataShowClass.h +++ b/src/PluginWBFZExchangePlugin/LAMPDataShowClass.h @@ -2,16 +2,18 @@ #ifndef LAMPDATASHOWClASS_H #define LAMPDATASHOWClASS_H - +#include "WBFZExchangePluginAPI.h" #include "AllHead.h" #include -#include "ui_LAMPDataShowClass.h" -#include "TaskXml/TaskTreeClass.h" + +#include "TaskTreeClass.h" #include "TaskNodeList.h" #include "ImageShowDialogClass.h" - -class LAMPDataShowClass : public QMainWindow +namespace Ui{ + class LAMPDataShowClassClass; +} +class LAMPDataShowClass : public QMainWindow { Q_OBJECT @@ -34,14 +36,14 @@ public slots: // 菜单action 槽函数 public: void load_complex_data(QString path); private: - Ui::LAMPDataShowClassClass ui; + Ui::LAMPDataShowClassClass* ui; }; /////////////////////////////////////////////////////// // 基础函数 /////////////////////////////////////////////////////// -void ShowComplexMatrixPlot(QCustomPlot* customPlot, const Eigen::MatrixXcd& complexMatrix); +void ShowComplexMatrixPlot(QCustomPlot* customPlot, const Eigen::MatrixXcd& complexMatrix); diff --git a/src/WBCLFZSystemModule/LAMPDataShowClass.ui b/src/PluginWBFZExchangePlugin/LAMPDataShowClass.ui similarity index 100% rename from src/WBCLFZSystemModule/LAMPDataShowClass.ui rename to src/PluginWBFZExchangePlugin/LAMPDataShowClass.ui diff --git a/src/PluginWBFZExchangePlugin/LAMPImageCreateClass.cpp b/src/PluginWBFZExchangePlugin/LAMPImageCreateClass.cpp new file mode 100644 index 0000000..a95d536 --- /dev/null +++ b/src/PluginWBFZExchangePlugin/LAMPImageCreateClass.cpp @@ -0,0 +1,197 @@ +#include "LAMPImageCreateClass.h" +#include "ui_LAMPImageCreateClass.h" +LAMPImageCreateClass::LAMPImageCreateClass(QWidget *parent) + : QDialog(parent) +{ + ui=new Ui::LAMPImageCreateClassClass; + ui->setupUi(this); + this->simulationparams =new FEKOBase::FEKOSimulationDataparams;// std::make_shared(); + + this->ui->comboBox_ImageMode->addItem(FEKOBase::FEKOImageModeenumToString(FEKOBase::FEKOImageMode::Strip)); + this->ui->comboBox_ImageMode->addItem(FEKOBase::FEKOImageModeenumToString(FEKOBase::FEKOImageMode::Scane)); + this->ui->comboBox_ImageMode->addItem(FEKOBase::FEKOImageModeenumToString(FEKOBase::FEKOImageMode::ISAR)); + this->ui->comboBox_ImageMode->addItem(FEKOBase::FEKOImageModeenumToString(FEKOBase::FEKOImageMode::CircleSAR)); + + + + // 限制lineedit输入为数值 + QDoubleValidator* doubleValidator = new QDoubleValidator(); + this->ui->lineEdit_minX->setValidator(doubleValidator); + this->ui->lineEdit__maxX->setValidator(doubleValidator); + this->ui->lineEdit__minY->setValidator(doubleValidator); + this->ui->lineEdit__maxY->setValidator(doubleValidator); + this->ui->lineEdit_planeZ->setValidator(doubleValidator); + QIntValidator* intValidator = new QIntValidator(1,100000000000000); + this->ui->lineEdit_height->setValidator(intValidator); + this->ui->lineEdit_width->setValidator(intValidator); + + + this->ui->lineEdit_minX->setText("-1.0"); + this->ui->lineEdit__maxX->setText("1.0"); + this->ui->lineEdit__minY->setText("-1.0"); + this->ui->lineEdit__maxY->setText("1.0"); + this->ui->lineEdit_planeZ->setText("0"); + this->ui->lineEdit_height->setText("101"); + this->ui->lineEdit_width->setText("101"); + this->ui->checkBoxTheta->setChecked(true); + this->ui->checkBox_phi->setChecked(true); +} + +LAMPImageCreateClass::~LAMPImageCreateClass() +{} + +Q_INVOKABLE FEKOBase::FEKOImageSettingParams LAMPImageCreateClass::getFEKOImageSettingParams() +{ + + FEKOBase::FEKOImageSettingParams result; + result.min_x = this->ui->lineEdit_minX->text().toDouble(); + result.max_x = this->ui->lineEdit__maxX->text().toDouble(); + result.min_y = this->ui->lineEdit__minY->text().toDouble(); + result.max_y = this->ui->lineEdit__maxY->text().toDouble(); + result.plane_z = this->ui->lineEdit_planeZ->text().toDouble(); + result.ImageHeight = this->ui->lineEdit_height->text().toDouble(); + result.ImageWidth = this->ui->lineEdit_width->text().toDouble(); + + return Q_INVOKABLE result; +} + +void LAMPImageCreateClass::on_pushButton_theta_clicked() +{ + QString thetaechopath = getOpenFilePath(this, u8"打开theta回波文件", u8"theta Files (*.theta)"); + this->ui->lineEdit_thetaechopath->setText(thetaechopath); +} + +void LAMPImageCreateClass::on_pushButton_phi_clicked() +{ + QString phiechopath = getOpenFilePath(this, u8"打开phi回波文件", u8"theta Files (*.phi)"); + this->ui->lineEdit_phiechopath->setText(phiechopath); +} + +void LAMPImageCreateClass::on_pushButton_thetaimage_clicked() +{ + QString thetaimagePath = getSaveFilePath(this, u8"保存theta极化回波成像结果", u8"ENVI (*.dat)"); + this->ui->lineEdit_thetaimagepath->setText(thetaimagePath); +} + +void LAMPImageCreateClass::on_pushButton_phiImage_clicked() +{ + QString phiimagePath = getSaveFilePath(this, u8"保存theta极化回波成像结果", u8"ENVI (*.dat)"); + this->ui->lineEdit_phiimagepath->setText(phiimagePath); +} + +void LAMPImageCreateClass::on_checkBoxTheta_toggled(bool flag) +{ + this->ui->pushButton_theta->setEnabled(this->ui->checkBoxTheta->isChecked()); + this->ui->pushButton_thetaimage->setEnabled(this->ui->checkBoxTheta->isChecked()); + this->ui->lineEdit_thetaechopath->setEnabled(this->ui->checkBoxTheta->isChecked()); + this->ui->lineEdit_thetaimagepath->setEnabled(this->ui->checkBoxTheta->isChecked()); +} + +void LAMPImageCreateClass::on_checkBox_phi_toggled(bool flag) +{ + this->ui->pushButton_phi->setEnabled(this->ui->checkBox_phi->isChecked()); + this->ui->pushButton_phiImage->setEnabled(this->ui->checkBox_phi->isChecked()); + this->ui->lineEdit_phiechopath->setEnabled(this->ui->checkBox_phi->isChecked()); + this->ui->lineEdit_phiimagepath->setEnabled(this->ui->checkBox_phi->isChecked()); + +} + +void LAMPImageCreateClass::on_pushButton_OK_clicked() +{ + + FEKOBase::FEKOImageSettingParams imageparams = this->getFEKOImageSettingParams(); + // 计算回波 + if (this->ui->checkBoxTheta->isChecked()) { // theta + + QString thetafileptah= this->ui->lineEdit_thetaechopath->text().trimmed(); + QString theta_tiff_filepath=this->ui->lineEdit_thetaimagepath->text().trimmed(); + + FEKOBase::EchoDataClass data; + data.loadEchoData(thetafileptah); + if (this->simulationparams&&(this->simulationparams->imagemode==FEKOBase::FEKOImageMode::Strip|| this->simulationparams->imagemode == FEKOBase::FEKOImageMode::Scane)) { + FEKOBase::FEKOImageProcess(data, imageparams, theta_tiff_filepath,FEKOBase::FEKOImageAlgorithm::TBP_FREQ,FEKOBase::ImageAlgWindowFun::HANMMING); + } + else { + FEKOBase::FEKOImageProcess(data, imageparams, theta_tiff_filepath); + } + } + else { + + } + + if (this->ui->checkBox_phi->isChecked()) { // phi + + QString phifileptah = this->ui->lineEdit_phiechopath->text().trimmed(); + QString phi_tiff_filepath = this->ui->lineEdit_phiimagepath->text().trimmed(); + + FEKOBase::EchoDataClass data; + data.loadEchoData(phifileptah); + //FEKOBase::FEKOImageProcess(data, imageparams, phi_tiff_filepath); + if (this->simulationparams && (this->simulationparams->imagemode == FEKOBase::FEKOImageMode::Strip || this->simulationparams->imagemode == FEKOBase::FEKOImageMode::Scane)) { + FEKOBase::FEKOImageProcess(data, imageparams, phi_tiff_filepath, FEKOBase::FEKOImageAlgorithm::TBP_FREQ, FEKOBase::ImageAlgWindowFun::HANMMING); + } + else { + FEKOBase::FEKOImageProcess(data, imageparams, phi_tiff_filepath); + } + } + else { + + } + + QMessageBox::StandardButton reply = QMessageBox::question(this, u8"提示", u8"是否查看图像", QMessageBox::Yes | QMessageBox::No); + if (reply == QMessageBox::Yes) { + LAMPDataShowClass* datashow=new LAMPDataShowClass(); + datashow->show(); + if (this->ui->checkBoxTheta->isChecked()) { // theta + QString theta_tiff_filepath = this->ui->lineEdit_thetaimagepath->text().trimmed(); + datashow->load_complex_data(theta_tiff_filepath); + + } + if (this->ui->checkBox_phi->isChecked()) { // phi + QString phi_tiff_filepath = this->ui->lineEdit_phiimagepath->text().trimmed(); + datashow->load_complex_data(phi_tiff_filepath); + } + + } + else { + return; + } + + +} + +void LAMPImageCreateClass::on_pushButton_cancel_clicked() +{ + this->close(); +} + +void LAMPImageCreateClass::on_pushButton_loadfekosimulationxml_clicked() +{ + QString xmlpath = getOpenFilePath(this, u8"仿真任务xml", u8"xml文件 (*.xml)"); + if (isExists(xmlpath)) { + this->OpenFEKOSimulationImageSettingXml(xmlpath); + } + else { + + } +} + +void LAMPImageCreateClass::OpenFEKOSimulationImageSettingXml(QString& xmlpath) +{ + this->simulationparams->loadXml(xmlpath); + this->ui->lineEdit_TaskName->setText(this->simulationparams->taskName); + this->ui->comboBox_ImageMode->setCurrentText(FEKOBase::FEKOImageModeenumToString(this->simulationparams->imagemode)); + this->ui->lineEdit_minX->setText(QString::number(this->simulationparams->x_min)); + this->ui->lineEdit__maxX->setText(QString::number(this->simulationparams->x_max)); + this->ui->lineEdit__minY->setText(QString::number(this->simulationparams->y_min)); + this->ui->lineEdit__maxY->setText(QString::number(this->simulationparams->y_max)); + this->ui->lineEdit_planeZ->setText(QString::number(this->simulationparams->z_plane)); + this->ui->lineEdit_height->setText(QString::number(this->simulationparams->imageheight)); + this->ui->lineEdit_width->setText(QString::number(this->simulationparams->imagewidth)); +} + +void LAMPImageCreateClass::bandingsetFEKOSimulationDataparams() +{ +} + + diff --git a/src/WBCLFZSystemModule/LAMPImageCreateClass.h b/src/PluginWBFZExchangePlugin/LAMPImageCreateClass.h similarity index 80% rename from src/WBCLFZSystemModule/LAMPImageCreateClass.h rename to src/PluginWBFZExchangePlugin/LAMPImageCreateClass.h index c2e4559..dfc9f81 100644 --- a/src/WBCLFZSystemModule/LAMPImageCreateClass.h +++ b/src/PluginWBFZExchangePlugin/LAMPImageCreateClass.h @@ -1,12 +1,17 @@ #pragma once #ifndef LAMPIMAGECREATECLASS_H #define LAMPIMAGECREATECLASS_H +#include "WBFZExchangePluginAPI.h" #include "AllHead.h" #include -#include "ui_LAMPImageCreateClass.h" + #include "LAMPDataShowClass.h" -class LAMPImageCreateClass : public QDialog,public FEKOBase::FEKOSimulationDataparamsHandler + +namespace Ui{ + class LAMPImageCreateClassClass; +} +class LAMPImageCreateClass : public QDialog,public FEKOBase::FEKOSimulationDataparamsHandler { Q_OBJECT @@ -15,7 +20,7 @@ public: ~LAMPImageCreateClass(); private: - Ui::LAMPImageCreateClassClass ui; + Ui::LAMPImageCreateClassClass* ui; public: Q_INVOKABLE FEKOBase::FEKOImageSettingParams getFEKOImageSettingParams(); diff --git a/src/WBCLFZSystemModule/LAMPImageCreateClass.ui b/src/PluginWBFZExchangePlugin/LAMPImageCreateClass.ui similarity index 100% rename from src/WBCLFZSystemModule/LAMPImageCreateClass.ui rename to src/PluginWBFZExchangePlugin/LAMPImageCreateClass.ui diff --git a/src/LAMPTool/LAMPTool.cpp b/src/PluginWBFZExchangePlugin/LAMPTool.cpp similarity index 88% rename from src/LAMPTool/LAMPTool.cpp rename to src/PluginWBFZExchangePlugin/LAMPTool.cpp index 597081c..538cb2e 100644 --- a/src/LAMPTool/LAMPTool.cpp +++ b/src/PluginWBFZExchangePlugin/LAMPTool.cpp @@ -14,11 +14,11 @@ #include #include #include - +#include "ui_LAMPTool.h" LAMPTool::LAMPTool(QWidget *parent) : QMainWindow(parent) { - ui.setupUi(this); + ui->setupUi(this); } LAMPTool::~LAMPTool() diff --git a/src/LAMPTool/LAMPTool.h b/src/PluginWBFZExchangePlugin/LAMPTool.h similarity index 51% rename from src/LAMPTool/LAMPTool.h rename to src/PluginWBFZExchangePlugin/LAMPTool.h index d0cb7cc..70cbbb6 100644 --- a/src/LAMPTool/LAMPTool.h +++ b/src/PluginWBFZExchangePlugin/LAMPTool.h @@ -5,17 +5,22 @@ #define LAMPTOOL_H #include -#include "ui_LAMPTool.h" -#include "LAMPToolAPI.h" -class LAMPTOOLAPI LAMPTool : public QMainWindow + +#include "WBFZExchangePluginAPI.h" + +namespace Ui{ + class LAMPToolClass; +} + +class LAMPTool : public QMainWindow { - Q_OBJECT + // Q_OBJECT public: LAMPTool(QWidget *parent = nullptr); ~LAMPTool(); private: - Ui::LAMPToolClass ui; + Ui::LAMPToolClass* ui; }; #endif \ No newline at end of file diff --git a/src/LAMPTool/LAMPTool.ui b/src/PluginWBFZExchangePlugin/LAMPTool.ui similarity index 100% rename from src/LAMPTool/LAMPTool.ui rename to src/PluginWBFZExchangePlugin/LAMPTool.ui diff --git a/src/WBCLFZSystemModule/LAMP_ScatterSettingClass.cpp b/src/PluginWBFZExchangePlugin/LAMP_ScatterSettingClass.cpp similarity index 86% rename from src/WBCLFZSystemModule/LAMP_ScatterSettingClass.cpp rename to src/PluginWBFZExchangePlugin/LAMP_ScatterSettingClass.cpp index f1651cb..ef7f260 100644 --- a/src/WBCLFZSystemModule/LAMP_ScatterSettingClass.cpp +++ b/src/PluginWBFZExchangePlugin/LAMP_ScatterSettingClass.cpp @@ -1,53 +1,106 @@ #include "AllHead.h" #include "LAMP_ScatterSettingClass.h" - +#include "ui_LAMP_ScatterSettingClass.h" LAMP_ScatterSettingClass::LAMP_ScatterSettingClass(QWidget* parent) : QDialog(parent) { - ui.setupUi(this); + this->_mainWindows=nullptr; + _geoData=nullptr; + _geoData = Geometry::GeometryData::getInstance(); + DebugInfo(" Geometry::GeometryData::getInstance() \n"); + ui=new Ui::LAMP_ScatterSettingClassClass; + ui->setupUi(this); this->setWindowTitle(u8"散射仪器仿真设置界面"); this->settingobj = new LAMP_ScatterSettingXmlClass; - this->myContext = nullptr; + DebugInfo(" Geometry::GeometryData::getInstance() \n"); + //this->myContext = nullptr; QDoubleValidator* doubleValidator = new QDoubleValidator; - this->ui.lineEdit_A1_incAngle->setValidator(doubleValidator); - this->ui.lineEdit_A2_incAngle->setValidator(doubleValidator); - this->ui.checkBox_A1->setChecked(true); - this->ui.checkBox_A2->setChecked(true); + this->ui->lineEdit_A1_incAngle->setValidator(doubleValidator); + this->ui->lineEdit_A2_incAngle->setValidator(doubleValidator); + this->ui->lineEdit_startFreq->setValidator(doubleValidator); + this->ui->lineEdit_endfreq->setValidator(doubleValidator); + this->ui->lineEdit_freqPoints->setValidator(new QIntValidator); - this->ui.radioButton_nearfield->setVisible(false); - this->ui.radioButton_nearfield->setChecked(false); - this->ui.radioButton_nearfield->setEnabled(false); + this->ui->checkBox_A1->setChecked(true); + this->ui->checkBox_A2->setChecked(true); - this->ui.radioButton_farfield->setCheckable(true); + this->ui->radioButton_nearfield->setVisible(false); + this->ui->radioButton_nearfield->setChecked(false); + this->ui->radioButton_nearfield->setEnabled(false); - this->ui.radioButton_S1 ->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_S3 ->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_S5 ->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_S8 ->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_S10 ->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_S12 ->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F1 ->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F2 ->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F3 ->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F4 ->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F5 ->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F6 ->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F7 ->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F8 ->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F9 ->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F10 ->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F11 ->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F12 ->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - + this->ui->radioButton_farfield->setCheckable(true); + + this->ui->radioButton_S1 ->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_S3 ->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_S5 ->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_S8 ->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_S10 ->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_S12 ->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F1 ->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F2 ->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F3 ->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F4 ->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F5 ->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F6 ->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F7 ->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F8 ->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F9 ->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F10 ->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F11 ->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F12 ->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + + connect(this->ui->radioButton_S1, SIGNAL(toggled(bool)), this, + SLOT(on_radioButton_S1_toggled(bool))); + connect(this->ui->radioButton_S3, SIGNAL(toggled(bool)), this, + SLOT(on_radioButton_S3_toggled(bool))); + connect(this->ui->radioButton_S5, SIGNAL(toggled(bool)), this, + SLOT(on_radioButton_S5_toggled(bool))); + connect(this->ui->radioButton_S8, SIGNAL(toggled(bool)), this, + SLOT(on_radioButton_S8_toggled(bool))); + connect(this->ui->radioButton_S10, SIGNAL(toggled(bool)), this, + SLOT(on_radioButton_S10_toggled(bool))); + connect(this->ui->radioButton_S12, SIGNAL(toggled(bool)), this, + SLOT(on_radioButton_S12_toggled(bool))); + connect(this->ui->radioButton_F1, SIGNAL(toggled(bool)), this, + SLOT(on_radioButton_F1_toggled(bool))); + connect(this->ui->radioButton_F2, SIGNAL(toggled(bool)), this, + SLOT(on_radioButton_F2_toggled(bool))); + connect(this->ui->radioButton_F3, SIGNAL(toggled(bool)), this, + SLOT(on_radioButton_F3_toggled(bool))); + connect(this->ui->radioButton_F4, SIGNAL(toggled(bool)), this, + SLOT(on_radioButton_F4_toggled(bool))); + connect(this->ui->radioButton_F5, SIGNAL(toggled(bool)), this, + SLOT(on_radioButton_F5_toggled(bool))); + connect(this->ui->radioButton_F6, SIGNAL(toggled(bool)), this, + SLOT(on_radioButton_F6_toggled(bool))); + connect(this->ui->radioButton_F7, SIGNAL(toggled(bool)), this, + SLOT(on_radioButton_F7_toggled(bool))); + connect(this->ui->radioButton_F8, SIGNAL(toggled(bool)), this, + SLOT(on_radioButton_F8_toggled(bool))); + connect(this->ui->radioButton_F9, SIGNAL(toggled(bool)), this, + SLOT(on_radioButton_F9_toggled(bool))); + connect(this->ui->radioButton_F10, SIGNAL(toggled(bool)), this, + SLOT(on_radioButton_F10_toggled(bool))); + connect(this->ui->radioButton_F11, SIGNAL(toggled(bool)), this, + SLOT(on_radioButton_F11_toggled(bool))); + connect(this->ui->radioButton_F12, SIGNAL(toggled(bool)), this, + SLOT(on_radioButton_F12_toggled(bool))); + + DebugInfo(" Geometry::GeometryData::getInstance() \n"); } LAMP_ScatterSettingClass::~LAMP_ScatterSettingClass() -{} +{ + delete this->ui; + this->ui=nullptr; + + +} void LAMP_ScatterSettingClass::loadxml(QString xmlpath) { - this->ui.lineEdit_xmlpath->setText(xmlpath); + this->ui->lineEdit_xmlpath->setText(xmlpath); this->xmlpath = xmlpath; this->workpsace = getParantFromPath(xmlpath); this->settingobj->loadxml(xmlpath); @@ -74,59 +127,59 @@ void LAMP_ScatterSettingClass::savexml() void LAMP_ScatterSettingClass::renderSettingObj() { - this->ui.checkBox_A1->setChecked(this->settingobj->A1); - this->ui.checkBox_A2->setChecked(this->settingobj->A2); - this->ui.lineEdit_A1_incAngle->setText(QString::number(this->settingobj->incidence_A1)); - this->ui.lineEdit_A2_incAngle->setText(QString::number(this->settingobj->incidence_A2)); + this->ui->checkBox_A1->setChecked(this->settingobj->A1); + this->ui->checkBox_A2->setChecked(this->settingobj->A2); + this->ui->lineEdit_A1_incAngle->setText(QString::number(this->settingobj->incidence_A1)); + this->ui->lineEdit_A2_incAngle->setText(QString::number(this->settingobj->incidence_A2)); - this->ui.checkBox_AllScatter->setChecked(this->settingobj->enableScatter); - this->ui.radioButton_S1->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_S3->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_S5->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_S8->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_S10->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_S12->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F1->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F2->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F3->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F4->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F5->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F6->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F7->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F8->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F9->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F10->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F11->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F12->setEnabled(this->ui.checkBox_AllScatter->isChecked()); + this->ui->checkBox_AllScatter->setChecked(this->settingobj->enableScatter); + this->ui->radioButton_S1->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_S3->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_S5->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_S8->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_S10->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_S12->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F1->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F2->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F3->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F4->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F5->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F6->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F7->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F8->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F9->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F10->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F11->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F12->setEnabled(this->ui->checkBox_AllScatter->isChecked()); - this->ui.radioButton_S1->setChecked(this->settingobj->S1); - this->ui.radioButton_S3->setChecked(this->settingobj->S3); - this->ui.radioButton_S5->setChecked(this->settingobj->S5); - this->ui.radioButton_S8->setChecked(this->settingobj->S8); - this->ui.radioButton_S10->setChecked(this->settingobj->S10); - this->ui.radioButton_S12->setChecked(this->settingobj->S12); - this->ui.radioButton_F1->setChecked(this->settingobj->F1); - this->ui.radioButton_F2->setChecked(this->settingobj->F2); - this->ui.radioButton_F3->setChecked(this->settingobj->F3); - this->ui.radioButton_F4->setChecked(this->settingobj->F4); - this->ui.radioButton_F5->setChecked(this->settingobj->F5); - this->ui.radioButton_F6->setChecked(this->settingobj->F6); - this->ui.radioButton_F7->setChecked(this->settingobj->F7); - this->ui.radioButton_F8->setChecked(this->settingobj->F8); - this->ui.radioButton_F9->setChecked(this->settingobj->F9); - this->ui.radioButton_F10->setChecked(this->settingobj->F10); - this->ui.radioButton_F11->setChecked(this->settingobj->F11); - this->ui.radioButton_F12->setChecked(this->settingobj->F12); + this->ui->radioButton_S1->setChecked(this->settingobj->S1); + this->ui->radioButton_S3->setChecked(this->settingobj->S3); + this->ui->radioButton_S5->setChecked(this->settingobj->S5); + this->ui->radioButton_S8->setChecked(this->settingobj->S8); + this->ui->radioButton_S10->setChecked(this->settingobj->S10); + this->ui->radioButton_S12->setChecked(this->settingobj->S12); + this->ui->radioButton_F1->setChecked(this->settingobj->F1); + this->ui->radioButton_F2->setChecked(this->settingobj->F2); + this->ui->radioButton_F3->setChecked(this->settingobj->F3); + this->ui->radioButton_F4->setChecked(this->settingobj->F4); + this->ui->radioButton_F5->setChecked(this->settingobj->F5); + this->ui->radioButton_F6->setChecked(this->settingobj->F6); + this->ui->radioButton_F7->setChecked(this->settingobj->F7); + this->ui->radioButton_F8->setChecked(this->settingobj->F8); + this->ui->radioButton_F9->setChecked(this->settingobj->F9); + this->ui->radioButton_F10->setChecked(this->settingobj->F10); + this->ui->radioButton_F11->setChecked(this->settingobj->F11); + this->ui->radioButton_F12->setChecked(this->settingobj->F12); - this->ui.lineEdit_startFreq->setText(QString::number(this->settingobj->startfre)); - this->ui.lineEdit_endfreq->setText(QString::number(this->settingobj->endfre)); - this->ui.lineEdit_freqPoints->setText(QString::number(this->settingobj->freponts)); - this->ui.radioButton_farfield->setChecked(this->settingobj->farfield); - this->ui.radioButton_nearfield->setChecked(this->settingobj->nearfield); - this->ui.lineEdit_TaskName->setText(this->settingobj->taskName); - this->ui.lineEdit_xmlpath->setText(this->xmlpath); + this->ui->lineEdit_startFreq->setText(QString::number(this->settingobj->startfre)); + this->ui->lineEdit_endfreq->setText(QString::number(this->settingobj->endfre)); + this->ui->lineEdit_freqPoints->setText(QString::number(this->settingobj->freponts)); + this->ui->radioButton_farfield->setChecked(this->settingobj->farfield); + this->ui->radioButton_nearfield->setChecked(this->settingobj->nearfield); + this->ui->lineEdit_TaskName->setText(this->settingobj->taskName); + this->ui->lineEdit_xmlpath->setText(this->xmlpath); } @@ -134,38 +187,38 @@ void LAMP_ScatterSettingClass::renderSettingObj() void LAMP_ScatterSettingClass::sycnSettingObj() { //renderSettingObj 函数的关系,使用界面控件值,更新 settingobj 的值 - this->settingobj->A1 = this->ui.checkBox_A1->isChecked(); - this->settingobj->A2 = this->ui.checkBox_A2->isChecked(); - this->settingobj->incidence_A1 = this->ui.lineEdit_A1_incAngle->text().toDouble(); - this->settingobj->incidence_A2 = this->ui.lineEdit_A2_incAngle->text().toDouble(); + this->settingobj->A1 = this->ui->checkBox_A1->isChecked(); + this->settingobj->A2 = this->ui->checkBox_A2->isChecked(); + this->settingobj->incidence_A1 = this->ui->lineEdit_A1_incAngle->text().toDouble(); + this->settingobj->incidence_A2 = this->ui->lineEdit_A2_incAngle->text().toDouble(); - this->settingobj->enableScatter = this->ui.checkBox_AllScatter->isChecked(); - this->settingobj->S1 = this->ui.radioButton_S1->isChecked(); - this->settingobj->S3 = this->ui.radioButton_S3->isChecked(); - this->settingobj->S5 = this->ui.radioButton_S5->isChecked(); - this->settingobj->S8 = this->ui.radioButton_S8->isChecked(); - this->settingobj->S10 = this->ui.radioButton_S10->isChecked(); - this->settingobj->S12 = this->ui.radioButton_S12->isChecked(); - this->settingobj->F1 = this->ui.radioButton_F1->isChecked(); - this->settingobj->F2 = this->ui.radioButton_F2->isChecked(); - this->settingobj->F3 = this->ui.radioButton_F3->isChecked(); - this->settingobj->F4 = this->ui.radioButton_F4->isChecked(); - this->settingobj->F5 = this->ui.radioButton_F5->isChecked(); - this->settingobj->F6 = this->ui.radioButton_F6->isChecked(); - this->settingobj->F7 = this->ui.radioButton_F7->isChecked(); - this->settingobj->F8 = this->ui.radioButton_F8->isChecked(); - this->settingobj->F9 = this->ui.radioButton_F9->isChecked(); - this->settingobj->F10 = this->ui.radioButton_F10->isChecked(); - this->settingobj->F11 = this->ui.radioButton_F11->isChecked(); - this->settingobj->F12 = this->ui.radioButton_F12->isChecked(); + this->settingobj->enableScatter = this->ui->checkBox_AllScatter->isChecked(); + this->settingobj->S1 = this->ui->radioButton_S1->isChecked(); + this->settingobj->S3 = this->ui->radioButton_S3->isChecked(); + this->settingobj->S5 = this->ui->radioButton_S5->isChecked(); + this->settingobj->S8 = this->ui->radioButton_S8->isChecked(); + this->settingobj->S10 = this->ui->radioButton_S10->isChecked(); + this->settingobj->S12 = this->ui->radioButton_S12->isChecked(); + this->settingobj->F1 = this->ui->radioButton_F1->isChecked(); + this->settingobj->F2 = this->ui->radioButton_F2->isChecked(); + this->settingobj->F3 = this->ui->radioButton_F3->isChecked(); + this->settingobj->F4 = this->ui->radioButton_F4->isChecked(); + this->settingobj->F5 = this->ui->radioButton_F5->isChecked(); + this->settingobj->F6 = this->ui->radioButton_F6->isChecked(); + this->settingobj->F7 = this->ui->radioButton_F7->isChecked(); + this->settingobj->F8 = this->ui->radioButton_F8->isChecked(); + this->settingobj->F9 = this->ui->radioButton_F9->isChecked(); + this->settingobj->F10 = this->ui->radioButton_F10->isChecked(); + this->settingobj->F11 = this->ui->radioButton_F11->isChecked(); + this->settingobj->F12 = this->ui->radioButton_F12->isChecked(); - this->settingobj->startfre = this->ui.lineEdit_startFreq->text().toDouble(); - this->settingobj->endfre = this->ui.lineEdit_endfreq->text().toDouble(); - this->settingobj->freponts = this->ui.lineEdit_freqPoints->text().toDouble(); - this->settingobj->farfield = this->ui.radioButton_farfield->isChecked(); - this->settingobj->nearfield = this->ui.radioButton_nearfield->isChecked(); + this->settingobj->startfre = this->ui->lineEdit_startFreq->text().toDouble(); + this->settingobj->endfre = this->ui->lineEdit_endfreq->text().toDouble(); + this->settingobj->freponts = this->ui->lineEdit_freqPoints->text().toInt(); + this->settingobj->farfield = this->ui->radioButton_farfield->isChecked(); + this->settingobj->nearfield = this->ui->radioButton_nearfield->isChecked(); - this->settingobj->taskName = this->ui.lineEdit_TaskName->text(); + this->settingobj->taskName = this->ui->lineEdit_TaskName->text(); @@ -182,10 +235,14 @@ void LAMP_ScatterSettingClass::createAntModel() sp.theta = sp.theta * M_PI / 180; CartesianCoordinates cp = sphericalToCartesian(sp); TopoDS_Shape shape_ax = CreateCartesianCoordinatesAxis(0.2, 0.4, 0.8); - TopoDS_Shape shape_ant = Process_RotationThetaPhi_MoveXYZ(shape_ax, M_PI - sp.theta, sp.phi + M_PI, cp.x, cp.y, cp.z); - Handle(AIS_InteractiveObject) shape_ais = new AIS_Shape(shape_ant); + TopoDS_Shape *shape = new TopoDS_Shape; + *shape= Process_RotationThetaPhi_MoveXYZ(shape_ax, M_PI - sp.theta, sp.phi + M_PI, cp.x, cp.y, cp.z); + //Handle(AIS_InteractiveObject) shape_ais = new AIS_Shape(shape_ant); + Geometry::GeometrySet *set = new Geometry::GeometrySet(Geometry::STEP); + set->setName(QString::fromStdString(k)); + set->setShape(shape); - DataAISMap[k] = shape_ais; + DataAISMap[k] = set; } } @@ -297,21 +354,21 @@ void LAMP_ScatterSettingClass::initAntModelSettingParams() void LAMP_ScatterSettingClass::closeWindows() { - - for (map::iterator iter = DataAISMap.begin(); iter != DataAISMap.end(); ++iter) { - this->myContext->Erase(iter->second, Standard_True); - this->myContext->Remove(iter->second, Standard_True); + for (map::iterator iter = DataAISMap.begin(); iter != DataAISMap.end(); ++iter) { + AddOrRemoveScatterAntModel(_mainWindows,_geoData,iter->second,false); +// this->myContext->Erase(iter->second); +// this->myContext->Remove(iter->second); } this->close(); } -void LAMP_ScatterSettingClass::setDocument3d(Handle(AIS_InteractiveContext) myContext) +void LAMP_ScatterSettingClass::setDocument3d(GUI::MainWindow* myContext) { - this->myContext = myContext; + this->_mainWindows = myContext; this->initAntModelSettingParams(); this->createAntModel(); - this->myContext->Display(DataAISMap["A1"],Standard_True); - this->myContext->Display(DataAISMap["A2"], Standard_True); + _geoData->appendGeometrySet(DataAISMap["A1"]); + _geoData->appendGeometrySet(DataAISMap["A2"]); } @@ -1572,7 +1629,7 @@ void LAMP_ScatterSettingClass::createFEKOLua() void LAMP_ScatterSettingClass::setTaskName(QString name) { - this->ui.lineEdit_TaskName->setText(name); + this->ui->lineEdit_TaskName->setText(name); this->settingobj->taskName = name; } @@ -1580,203 +1637,236 @@ void LAMP_ScatterSettingClass::setWorkSpacePath(QString path) { this->workpsace = getParantFromPath(path); this->xmlpath = path; - this->ui.lineEdit_xmlpath->setText(this->xmlpath); + this->ui->lineEdit_xmlpath->setText(this->xmlpath); } void LAMP_ScatterSettingClass::on_radioButton_S1_toggled(bool flag) { - if (this->myContext.IsNull()) {} - else { return; } + if (this->_geoData==nullptr) {return; } + else { } this->switchAntShowAndHide("S1", flag); } void LAMP_ScatterSettingClass::on_radioButton_S3_toggled(bool flag) { - if (this->myContext.IsNull()) {} - else { return; } + if (this->_geoData==nullptr) {return; } + else { } this->switchAntShowAndHide("S3", flag); } void LAMP_ScatterSettingClass::on_radioButton_S5_toggled(bool flag) { - if (this->myContext.IsNull()) {} - else { return; } + if (this->_geoData==nullptr) {return; } + else { } this->switchAntShowAndHide("S5", flag); } void LAMP_ScatterSettingClass::on_radioButton_S8_toggled(bool flag) { - if (this->myContext.IsNull()) {} - else { return; } + if (this->_geoData==nullptr) {return; } + else { } this->switchAntShowAndHide("S8", flag); } void LAMP_ScatterSettingClass::on_radioButton_S10_toggled(bool flag) { - if (this->myContext.IsNull()) {} - else { return; } + if (this->_geoData==nullptr) {return; } + else { } this->switchAntShowAndHide("S10", flag); } void LAMP_ScatterSettingClass::on_radioButton_S12_toggled(bool flag) { - if (this->myContext.IsNull()) {} - else { return; } + if (this->_geoData==nullptr) {return; } + else { } this->switchAntShowAndHide("S12", flag); } void LAMP_ScatterSettingClass::on_radioButton_F1_toggled(bool flag) { - if (this->myContext.IsNull()) {} - else { return; } + if (this->_geoData==nullptr) {return; } + else { } this->switchAntShowAndHide("F1", flag); } void LAMP_ScatterSettingClass::on_radioButton_F2_toggled(bool flag) { - if (this->myContext.IsNull()) {} - else { return; } + if (this->_geoData==nullptr) {return; } + else { } this->switchAntShowAndHide("F2", flag); } void LAMP_ScatterSettingClass::on_radioButton_F3_toggled(bool flag) { - if (this->myContext.IsNull()) {} - else { return; } + if (this->_geoData==nullptr) {return; } + else { } this->switchAntShowAndHide("F3", flag); this->switchAntShowAndHide("F1", flag); } void LAMP_ScatterSettingClass::on_radioButton_F4_toggled(bool flag) { - if (this->myContext.IsNull()) {} - else { return; } + if (this->_geoData==nullptr) {return; } + else { } this->switchAntShowAndHide("F4", flag); } void LAMP_ScatterSettingClass::on_radioButton_F5_toggled(bool flag) { - if (this->myContext.IsNull()) {} - else { return; } + if (this->_geoData==nullptr) {return; } + else { } this->switchAntShowAndHide("F5", flag); } void LAMP_ScatterSettingClass::on_radioButton_F6_toggled(bool flag) { - if (this->myContext.IsNull()) {} - else { return; } + if (this->_geoData==nullptr) {return; } + else { } this->switchAntShowAndHide("F6", flag); } void LAMP_ScatterSettingClass::on_radioButton_F7_toggled(bool flag) { - if (this->myContext.IsNull()) {} - else { return; } + if (this->_geoData==nullptr) {return; } + else { } this->switchAntShowAndHide("F7", flag); } void LAMP_ScatterSettingClass::on_radioButton_F8_toggled(bool flag) { - if (this->myContext.IsNull()) {} - else { return; } + if (this->_geoData==nullptr) {return; } + else { } this->switchAntShowAndHide("F8", flag); } void LAMP_ScatterSettingClass::on_radioButton_F9_toggled(bool flag) { - if (this->myContext.IsNull()) {} - else { return; } + if (this->_geoData==nullptr) {return; } + else { } this->switchAntShowAndHide("F9", flag); } void LAMP_ScatterSettingClass::on_radioButton_F10_toggled(bool flag) { - if (this->myContext.IsNull()) {} - else { return; } + if (this->_geoData==nullptr) {return; } + else { } this->switchAntShowAndHide("F10", flag); } void LAMP_ScatterSettingClass::on_radioButton_F11_toggled(bool flag) { - if (this->myContext.IsNull()) {} - else { return; } + if (this->_geoData==nullptr) {return; } + else { } this->switchAntShowAndHide("F11", flag); } void LAMP_ScatterSettingClass::on_radioButton_F12_toggled(bool flag) { - if (this->myContext.IsNull()) {} - else { return; } + if (this->_geoData==nullptr) {return; } + else { } this->switchAntShowAndHide("F12", flag); } void LAMP_ScatterSettingClass::on_checkBox_A1_toggled(bool flag) { - this->ui.lineEdit_A1_incAngle->setEnabled(this->ui.checkBox_A1->isChecked()); - this->switchAntShowAndHide("A1", this->ui.checkBox_A1->isChecked()); - if (this->myContext.IsNull()) {} - else { return; } + this->ui->lineEdit_A1_incAngle->setEnabled(this->ui->checkBox_A1->isChecked()); + this->switchAntShowAndHide("A1", this->ui->checkBox_A1->isChecked()); + if (this->_geoData==nullptr) {return; } + else { } } void LAMP_ScatterSettingClass::on_checkBox_A2_toggled(bool flag) { - this->ui.lineEdit_A2_incAngle->setEnabled(this->ui.checkBox_A2->isChecked()); - this->switchAntShowAndHide("A2", this->ui.checkBox_A2->isChecked()); - if (this->myContext.IsNull()) {} - else { return; } + this->ui->lineEdit_A2_incAngle->setEnabled(this->ui->checkBox_A2->isChecked()); + this->switchAntShowAndHide("A2", this->ui->checkBox_A2->isChecked()); + if (this->_geoData==nullptr) {return; } + else { } } void LAMP_ScatterSettingClass::on_checkBox_AllScatter_toggled(bool flag) { - this->ui.radioButton_S1->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_S3->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_S5->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_S8->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_S10->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_S12->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F1->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F2->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F3->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F4->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F5->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F6->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F7->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F8->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F9->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F10->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F11->setEnabled(this->ui.checkBox_AllScatter->isChecked()); - this->ui.radioButton_F12->setEnabled(this->ui.checkBox_AllScatter->isChecked()); + this->ui->radioButton_S1->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_S3->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_S5->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_S8->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_S10->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_S12->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F1->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F2->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F3->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F4->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F5->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F6->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F7->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F8->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F9->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F10->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F11->setEnabled(this->ui->checkBox_AllScatter->isChecked()); + this->ui->radioButton_F12->setEnabled(this->ui->checkBox_AllScatter->isChecked()); } void LAMP_ScatterSettingClass::on_lineEdit_A1_incAngle_editingFinished() { + DebugInfo("_mainWindows %d ; DataAISMap[\"A1\"] %d \n",_mainWindows== nullptr,DataAISMap["A1"] ==nullptr); + if(_mainWindows== nullptr){return;} + + DebugInfo("emit _mainWindows->updateGeometryTreeSig();"); + AddOrRemoveScatterAntModel(_mainWindows,_geoData,DataAISMap["A1"],false); + DebugInfo("emit _mainWindows->updateGeometryTreeSig();"); + //emit _mainWindows->getSubWindowManager()->getPreWindow()->removeGemoActors(DataAISMap["A1"]); + // 根据坐标计算 - this->myContext->Erase(DataAISMap["A1"], Standard_True); - AntSettingdict["A1"].theta = this->ui.lineEdit_A1_incAngle->text().toDouble(); +// this->myContext->Erase(DataAISMap["A1"]); + AntSettingdict["A1"].theta = this->ui->lineEdit_A1_incAngle->text().toDouble(); SphericalCoordinates sp = AntSettingdict["A1"]; sp.phi = sp.phi * M_PI / 180; sp.theta = sp.theta * M_PI / 180; CartesianCoordinates cp = sphericalToCartesian(sp); TopoDS_Shape shape_ax = CreateCartesianCoordinatesAxis(0.2, 0.4, 0.8); TopoDS_Shape shape_ant = Process_RotationThetaPhi_MoveXYZ(shape_ax, M_PI - sp.theta, sp.phi + M_PI, cp.x, cp.y, cp.z); - Handle(AIS_InteractiveObject) shape_ais = new AIS_Shape(shape_ant); - DataAISMap["A1"] = shape_ais; - this->myContext->Display(DataAISMap["A1"],Standard_True); + TopoDS_Shape* shape=new TopoDS_Shape; + *shape=shape_ant; + Geometry::GeometrySet *set = new Geometry::GeometrySet(Geometry::STEP); + set->setName("A1"); + set->setShape(shape); + DataAISMap["A1"] = set; + DebugInfo("emit _mainWindows->updateGeometryTreeSig();"); + AddOrRemoveScatterAntModel(_mainWindows,_geoData,DataAISMap["A1"],true); + DebugInfo("emit _mainWindows->updateGeometryTreeSig();"); + //emit _mainWindows->getSubWindowManager()->getPreWindow()->showGeoSet(DataAISMap["A1"], true); + DebugInfo("_mainWindows %d ; DataAISMap[\"A1\"] %d \n",_mainWindows== nullptr,DataAISMap["A1"] ==nullptr); + } void LAMP_ScatterSettingClass::on_lineEdit_A2_incAngle_editingFinished() { + DebugInfo("_mainWindows %d ; DataAISMap[\"A2\"] %d \n",_mainWindows== nullptr,DataAISMap["A2"] ==nullptr); + if(_mainWindows== nullptr){return;} // 根据坐标计算 - this->myContext->Erase(DataAISMap["A2"], Standard_True); - AntSettingdict["A2"].theta = this->ui.lineEdit_A2_incAngle->text().toDouble(); + DebugInfo("emit _mainWindows->updateGeometryTreeSig();"); + AddOrRemoveScatterAntModel(_mainWindows,_geoData,DataAISMap["A2"],false); + DebugInfo("emit _mainWindows->updateGeometryTreeSig();"); + //emit _mainWindows->getSubWindowManager()->getPreWindow()->removeGemoActors(DataAISMap["A2"]); + + + AntSettingdict["A2"].theta = this->ui->lineEdit_A2_incAngle->text().toDouble(); SphericalCoordinates sp = AntSettingdict["A2"]; sp.phi = sp.phi * M_PI / 180; sp.theta = sp.theta * M_PI / 180; CartesianCoordinates cp = sphericalToCartesian(sp); TopoDS_Shape shape_ax = CreateCartesianCoordinatesAxis(0.2, 0.4, 0.8); TopoDS_Shape shape_ant = Process_RotationThetaPhi_MoveXYZ(shape_ax, M_PI - sp.theta, sp.phi + M_PI, cp.x, cp.y, cp.z); - Handle(AIS_InteractiveObject) shape_ais = new AIS_Shape(shape_ant); - DataAISMap["A2"] = shape_ais; - this->myContext->Display(DataAISMap["A2"], Standard_True); + TopoDS_Shape* shape=new TopoDS_Shape; + *shape=shape_ant; + Geometry::GeometrySet *set = new Geometry::GeometrySet(Geometry::STEP); + set->setName("A2"); + set->setShape(shape); + DataAISMap["A2"] = set; + DebugInfo("emit _mainWindows->updateGeometryTreeSig();"); + AddOrRemoveScatterAntModel(_mainWindows,_geoData,DataAISMap["A2"],true); + DebugInfo("emit _mainWindows->updateGeometryTreeSig();"); + //emit _mainWindows->getSubWindowManager()->getPreWindow()->showGeoSet(DataAISMap["A2"], true); + DebugInfo("_mainWindows %d ; DataAISMap[\"A2\"] %d \n",_mainWindows== nullptr,DataAISMap["A2"] ==nullptr); + } void LAMP_ScatterSettingClass::on_pushButton_load_clicked() { @@ -1815,12 +1905,23 @@ void LAMP_ScatterSettingClass::on_cancelButton_clicked() } void LAMP_ScatterSettingClass::switchAntShowAndHide(std::string antName, bool flag) { + DebugInfo("emit antName %s %d;",antName.c_str(),flag); + if(_mainWindows==nullptr){ + return; + } if (flag) { - this->myContext->Display(DataAISMap[antName], Standard_True); + DebugInfo("emit _mainWindows->updateGeometryTreeSig();"); + AddOrRemoveScatterAntModel(_mainWindows,_geoData,DataAISMap[antName],flag); + DebugInfo("emit _mainWindows->updateGeometryTreeSig();"); + + //emit _mainWindows->getSubWindowManager()->getPreWindow()->showGeoSet(DataAISMap[antName], true); } else { - this->myContext->Erase(DataAISMap[antName], Standard_True); + DebugInfo("emit _mainWindows->updateGeometryTreeSig();"); + AddOrRemoveScatterAntModel(_mainWindows,_geoData,DataAISMap[antName],flag); + DebugInfo("emit _mainWindows->updateGeometryTreeSig();"); } + DebugInfo("emit antName %s %d;",antName.c_str(),flag); } SphericalCoordinates LAMP_ScatterSettingClass::antsettingstring2Spherical(QString sphericalStr) @@ -1834,6 +1935,48 @@ SphericalCoordinates LAMP_ScatterSettingClass::antsettingstring2Spherical(QStrin return p; } +void LAMP_ScatterSettingClass::on_lineEdit_freqPoints_editingFinished() { + double startfreq=this->ui->lineEdit_startFreq->text().toDouble(); + double endfreq=this->ui->lineEdit_endfreq->text().toDouble(); + double pointcount=this->ui->lineEdit_freqPoints->text().toInt(); + if(pointcount<=0){ + return; + }else if(pointcount==1){ + this->ui->lineEdit_freqdelta->setText(0); + }else{ + double delta=(endfreq-startfreq)/(pointcount-1); + this->ui->lineEdit_freqdelta->setText(QString::number(delta*1000)); + } + +} +void LAMP_ScatterSettingClass::on_lineEdit_startFreq_editingFinished() { + double startfreq=this->ui->lineEdit_startFreq->text().toDouble(); + double endfreq=this->ui->lineEdit_endfreq->text().toDouble(); + double pointcount=this->ui->lineEdit_freqPoints->text().toInt(); + if(pointcount<=0){ + return; + }else if(pointcount==1){ + this->ui->lineEdit_freqdelta->setText(0); + }else{ + double delta=(endfreq-startfreq)/(pointcount-1); + this->ui->lineEdit_freqdelta->setText(QString::number(delta*1000)); + } + +} +void LAMP_ScatterSettingClass::on_lineEdit_endfreq_editingFinished() { + double startfreq=this->ui->lineEdit_startFreq->text().toDouble(); + double endfreq=this->ui->lineEdit_endfreq->text().toDouble(); + double pointcount=this->ui->lineEdit_freqPoints->text().toInt(); + if(pointcount<=0){ + return; + }else if(pointcount==1){ + this->ui->lineEdit_freqdelta->setText(0); + }else{ + double delta=(endfreq-startfreq)/(pointcount-1); + this->ui->lineEdit_freqdelta->setText(QString::number(delta*1000)); + } +} + LAMP_ScatterSettingXmlClass::LAMP_ScatterSettingXmlClass() { // 对成员变量进行初始化 diff --git a/src/WBCLFZSystemModule/LAMP_ScatterSettingClass.h b/src/PluginWBFZExchangePlugin/LAMP_ScatterSettingClass.h similarity index 80% rename from src/WBCLFZSystemModule/LAMP_ScatterSettingClass.h rename to src/PluginWBFZExchangePlugin/LAMP_ScatterSettingClass.h index 6e58287..6659266 100644 --- a/src/WBCLFZSystemModule/LAMP_ScatterSettingClass.h +++ b/src/PluginWBFZExchangePlugin/LAMP_ScatterSettingClass.h @@ -2,10 +2,21 @@ #ifndef LAMP_SCATTERSETTINGCLASS_H #define LAMP_SCATTERSETTINGCLASS_H - +#include "WBFZExchangePluginAPI.h" #include "AllHead.h" #include -#include "ui_LAMP_ScatterSettingClass.h" +#include "MainWindow/MainWindow.h" + + +namespace Ui{ + class LAMP_ScatterSettingClassClass; +} + + + + + + class LAMP_ScatterSettingXmlClass { public: @@ -47,7 +58,13 @@ public: }; -class LAMP_ScatterSettingClass : public QDialog + + + + + + +class LAMP_ScatterSettingClass : public QDialog { Q_OBJECT @@ -56,12 +73,14 @@ public: ~LAMP_ScatterSettingClass(); public: - Handle(AIS_InteractiveContext) myContext; // 窗口交互 // 模型管理 + GUI::MainWindow* _mainWindows; + Geometry::GeometryData * _geoData; + //Handle(AIS_InteractiveContext) myContext; // 窗口交互 // 模型管理 QString xmlpath; QString workpsace; LAMP_ScatterSettingXmlClass* settingobj; //QMap DataAISMap; - std::map DataAISMap; // 构建雷达照射模型 + std::map DataAISMap; // 构建雷达照射模型 std::map AntSettingdict; // 构建雷达照射模型 std::map AntffePathDict; public: @@ -72,7 +91,7 @@ public: void createAntModel(); void initAntModelSettingParams(); // 模型设置参数 void closeWindows(); - void setDocument3d(Handle(AIS_InteractiveContext) myContext); + void setDocument3d(GUI::MainWindow* m ); void createFEKOLua(); void setTaskName(QString name); void setWorkSpacePath(QString path); @@ -108,6 +127,10 @@ public slots: void on_okButton_clicked(); void on_cancelButton_clicked(); + void on_lineEdit_freqPoints_editingFinished(); + void on_lineEdit_startFreq_editingFinished(); + void on_lineEdit_endfreq_editingFinished(); + void switchAntShowAndHide(std::string antName,bool isShow); @@ -115,7 +138,7 @@ private: SphericalCoordinates antsettingstring2Spherical(QString sphericalStr); private: - Ui::LAMP_ScatterSettingClassClass ui; + Ui::LAMP_ScatterSettingClassClass* ui; }; diff --git a/src/WBCLFZSystemModule/LAMP_ScatterSettingClass.ui b/src/PluginWBFZExchangePlugin/LAMP_ScatterSettingClass.ui similarity index 100% rename from src/WBCLFZSystemModule/LAMP_ScatterSettingClass.ui rename to src/PluginWBFZExchangePlugin/LAMP_ScatterSettingClass.ui diff --git a/src/LAMPTool/LampToolTest.h b/src/PluginWBFZExchangePlugin/LampToolTest.h similarity index 100% rename from src/LAMPTool/LampToolTest.h rename to src/PluginWBFZExchangePlugin/LampToolTest.h diff --git a/src/LAMPTool/OCCTBase.cpp b/src/PluginWBFZExchangePlugin/OCCTBase.cpp similarity index 76% rename from src/LAMPTool/OCCTBase.cpp rename to src/PluginWBFZExchangePlugin/OCCTBase.cpp index 0cf1ccc..62ad725 100644 --- a/src/LAMPTool/OCCTBase.cpp +++ b/src/PluginWBFZExchangePlugin/OCCTBase.cpp @@ -8,7 +8,7 @@ // =================================================================== -OCCTShapeType LAMPTOOLAPI str2OCCTShapeType(QString str) +OCCTShapeType str2OCCTShapeType(QString str) { if (str.isEmpty()) { return OCCTShapeType::NoneType; @@ -28,7 +28,7 @@ OCCTShapeType LAMPTOOLAPI str2OCCTShapeType(QString str) return OCCTShapeType(); } -QStringList LAMPTOOLAPI getOCCTShapeTypeEmnu() +QStringList getOCCTShapeTypeEmnu() { QStringList list; list.push_back(QString(u8"STL")); @@ -38,27 +38,27 @@ QStringList LAMPTOOLAPI getOCCTShapeTypeEmnu() return list; } -QString LAMPTOOLAPI getOCCTShapeTypeFilterString() +QString getOCCTShapeTypeFilterString() { return QString(u8"STL Files (*.stl);;STL Files (*.stla);;step Files (*.stp);;step Files (*.step);;IGES Files (*.iges);;IGES Files (*.igs)"); } -QString LAMPTOOLAPI get_STL_FilterString() +QString get_STL_FilterString() { return QString(u8"STL Files (*.stl);;STL Files (*.stla)"); } -QString LAMPTOOLAPI get_STEP_FilterString() +QString get_STEP_FilterString() { return QString(u8"step Files (*.stp);;step Files (*.step)"); } -QString LAMPTOOLAPI get_IGES_FilterString() +QString get_IGES_FilterString() { return QString(u8"IGES Files (*.iges);;IGES Files (*.igs)"); } -QString LAMPTOOLAPI getOCCTShapeTypeFilterString(OCCTShapeType switch_on) +QString getOCCTShapeTypeFilterString(OCCTShapeType switch_on) { switch (switch_on) { @@ -71,26 +71,26 @@ QString LAMPTOOLAPI getOCCTShapeTypeFilterString(OCCTShapeType switch_on) } } -QString LAMPTOOLAPI getOCCTShapeTypeFilterString(QString str) +QString getOCCTShapeTypeFilterString(QString str) { return getOCCTShapeTypeFilterString(str2OCCTShapeType(str)); } -bool LAMPTOOLAPI SaveTopoDs_Stl(QString FilePath, const TopoDS_Shape& shape) { +bool SaveTopoDs_Stl(QString FilePath, const TopoDS_Shape& shape) { // 将形状保存为 STL 文件 qDebug() << u8"SaveTopoDs_Stl " << FilePath; StlAPI_Writer writer; writer.Write(shape, FilePath.toStdString().c_str()); // 保存为stl模型 return true; } -bool LAMPTOOLAPI SaveTopoDs_Step(QString FilePath, const TopoDS_Shape& shape) { +bool SaveTopoDs_Step(QString FilePath, const TopoDS_Shape& shape) { qDebug() << u8"SaveTopoDs_Step " << FilePath; STEPControl_Writer writer; writer.Transfer(shape, STEPControl_AsIs); writer.Write(FilePath.toStdString().c_str()); return true; } -bool LAMPTOOLAPI SaveTopoDs_IGES(QString FilePath,const TopoDS_Shape& shape) { +bool SaveTopoDs_IGES(QString FilePath,const TopoDS_Shape& shape) { qDebug() << u8"SaveTopoDs_IGES " << FilePath; IGESControl_Writer writer; writer.AddShape(shape); @@ -98,7 +98,7 @@ bool LAMPTOOLAPI SaveTopoDs_IGES(QString FilePath,const TopoDS_Shape& shape) { return true; } -bool LAMPTOOLAPI SaveTopoDs(QString FilePath,const TopoDS_Shape& DataShape, OCCTShapeType shapetype) +bool SaveTopoDs(QString FilePath,const TopoDS_Shape& DataShape, OCCTShapeType shapetype) { switch (shapetype) { @@ -125,20 +125,20 @@ bool LAMPTOOLAPI SaveTopoDs(QString FilePath,const TopoDS_Shape& DataShape, OC return true; } -TopoDS_Shape LAMPTOOLAPI ReadTopoDs_IGES(QString Filepath) { +TopoDS_Shape ReadTopoDs_IGES(QString Filepath) { IGESControl_Reader reader; reader.ReadFile(Filepath.toStdString().c_str()); reader.TransferRoots(); TopoDS_Shape shape = reader.OneShape(); return shape; } -TopoDS_Shape LAMPTOOLAPI ReadTopoDs_Stl(QString Filepath) { +TopoDS_Shape ReadTopoDs_Stl(QString Filepath) { TopoDS_Shape shape_TopoDs; StlAPI_Reader aReader_Stl; aReader_Stl.Read(shape_TopoDs, Filepath.toStdString().c_str()); return shape_TopoDs; } -TopoDS_Shape LAMPTOOLAPI ReadTopoDs_Step(QString Filepath) { +TopoDS_Shape ReadTopoDs_Step(QString Filepath) { TopoDS_Shape shape; STEPControl_Reader reader; IFSelect_ReturnStatus status = reader.ReadFile(Filepath.toStdString().c_str()); @@ -152,7 +152,7 @@ TopoDS_Shape LAMPTOOLAPI ReadTopoDs_Step(QString Filepath) { } } -OCCTShapeType LAMPTOOLAPI ReadTopoDs_Shape(QString filepath, TopoDS_Shape& shape_TopoDs) +OCCTShapeType ReadTopoDs_Shape(QString filepath, TopoDS_Shape& shape_TopoDs) { QFileInfo fileinfo(filepath); QString filename = fileinfo.fileName(); @@ -182,7 +182,7 @@ OCCTShapeType LAMPTOOLAPI ReadTopoDs_Shape(QString filepath, TopoDS_Shape& shap } } -TopoDS_Shape LAMPTOOLAPI MergedTopoShape(std::vector TopoDS_Shapelist) +TopoDS_Shape MergedTopoShape(std::vector TopoDS_Shapelist) { // 创建一个复合体 TopoDS_Compound compound; @@ -199,7 +199,7 @@ TopoDS_Shape LAMPTOOLAPI MergedTopoShape(std::vector TopoDS_Shape } -void LAMPTOOLAPI ChangeModelColor(Handle(AIS_Shape)& aisShape, Quantity_Color& redColor) +void ChangeModelColor(Handle(AIS_Shape)& aisShape, Quantity_Color& redColor) { // 将颜色应用到模型 @@ -208,7 +208,7 @@ void LAMPTOOLAPI ChangeModelColor(Handle(AIS_Shape)& aisShape, Quantity_Color& -TopoDS_Shape LAMPTOOLAPI CreateArrow(const gp_Dir& direction, Standard_Real length, Standard_Real radius) { +TopoDS_Shape CreateArrow(const gp_Dir& direction, Standard_Real length, Standard_Real radius) { // 创建一个圆柱作为箭头的主体 gp_Pnt origin(0, 0, 0); gp_Ax2 axis(origin, direction); @@ -230,7 +230,7 @@ TopoDS_Shape LAMPTOOLAPI CreateArrow(const gp_Dir& direction, Standard_Real len } -gp_Trsf LAMPTOOLAPI GetTransFormFromVector(const gp_Vec& vectorA, const gp_Vec& vectorB) +gp_Trsf GetTransFormFromVector(const gp_Vec& vectorA, const gp_Vec& vectorB) { // 计算旋转轴和旋转角度 gp_Vec rotationAxis = vectorA.Crossed(vectorB); @@ -250,7 +250,7 @@ gp_Trsf LAMPTOOLAPI GetTransFormFromVector(const gp_Vec& vectorA, const gp_Vec& } -TopoDS_Shape LAMPTOOLAPI Process_RotationThetaPhi_MoveXYZ(TopoDS_Shape shape, double theta, double phi, double X, double Y, double Z) +TopoDS_Shape Process_RotationThetaPhi_MoveXYZ(TopoDS_Shape shape, double theta, double phi, double X, double Y, double Z) { gp_Vec Position(gp_Pnt(0, 0, 0), gp_Pnt(X, Y, Z)); gp_Trsf rotationTransform_theta; @@ -270,7 +270,7 @@ TopoDS_Shape LAMPTOOLAPI Process_RotationThetaPhi_MoveXYZ(TopoDS_Shape shape, d return result; } -TopoDS_Shape LAMPTOOLAPI CreateCartesianCoordinatesAxis(double xlength, double ylength, double zlength) +TopoDS_Shape CreateCartesianCoordinatesAxis(double xlength, double ylength, double zlength) { // 创建三个方向的箭头 @@ -296,21 +296,21 @@ TopoDS_Shape LAMPTOOLAPI CreateCartesianCoordinatesAxis(double xlength, double return compound; } -TopoDS_Shape LAMPTOOLAPI CreateBox(double x, double y, double z) +TopoDS_Shape CreateBox(double x, double y, double z) { // 创建一个长方体 BRepPrimAPI_MakeBox box(gp_Pnt(-x / 2, -y / 2, -z / 2), gp_Pnt(x / 2, y / 2, z / 2)); return box.Shape(); } -TopoDS_Shape LAMPTOOLAPI CreateCylinder(double radius, double height) +TopoDS_Shape CreateCylinder(double radius, double height) { BRepPrimAPI_MakeCylinder makeCylinder(radius, height); TopoDS_Shape cylinderShape = makeCylinder.Shape(); return cylinderShape; } -TopoDS_Shape LAMPTOOLAPI CreateCone(double radius1, double radius2, double height) +TopoDS_Shape CreateCone(double radius1, double radius2, double height) { BRepPrimAPI_MakeCone mkCone = BRepPrimAPI_MakeCone::BRepPrimAPI_MakeCone(radius1, radius2, height); TopoDS_Shape coneShape = mkCone.Shape(); @@ -318,29 +318,29 @@ TopoDS_Shape LAMPTOOLAPI CreateCone(double radius1, double radius2, double heig return coneShape; } -TopoDS_Shape LAMPTOOLAPI CreateSphere(double radius) +TopoDS_Shape CreateSphere(double radius) { return TopoDS_Shape(); } -TopoDS_Shape LAMPTOOLAPI CreateTorus(double majorRadius, double minorRadius) +TopoDS_Shape CreateTorus(double majorRadius, double minorRadius) { return TopoDS_Shape(); } -TopoDS_Shape LAMPTOOLAPI Cut(TopoDS_Shape& shape1, TopoDS_Shape& shape2) +TopoDS_Shape Cut(TopoDS_Shape& shape1, TopoDS_Shape& shape2) { return TopoDS_Shape(); } -TopoDS_Shape LAMPTOOLAPI Fuse(TopoDS_Shape& shape1, TopoDS_Shape& shape2) +TopoDS_Shape Fuse(TopoDS_Shape& shape1, TopoDS_Shape& shape2) { return TopoDS_Shape(); } -TopoDS_Shape LAMPTOOLAPI Rotate(TopoDS_Shape& shape, gp_Ax1 axis, double angle) +TopoDS_Shape Rotate(TopoDS_Shape& shape, gp_Ax1 axis, double angle) { // 进行旋转 angle= angle * M_PI / 180; @@ -350,7 +350,7 @@ TopoDS_Shape LAMPTOOLAPI Rotate(TopoDS_Shape& shape, gp_Ax1 axis, double angle) return rotateTransform_X.Shape(); } -TopoDS_Shape LAMPTOOLAPI Translate(TopoDS_Shape& shape, gp_Vec move_vec) +TopoDS_Shape Translate(TopoDS_Shape& shape, gp_Vec move_vec) { gp_Trsf translation; translation.SetTranslation(move_vec); @@ -358,7 +358,7 @@ TopoDS_Shape LAMPTOOLAPI Translate(TopoDS_Shape& shape, gp_Vec move_vec) return translateTransform.Shape(); } -TopoDS_Shape LAMPTOOLAPI Scale(TopoDS_Shape& shape, gp_Pnt refrenceCenter, double scale) +TopoDS_Shape Scale(TopoDS_Shape& shape, gp_Pnt refrenceCenter, double scale) { gp_Trsf scaleTransform; scaleTransform.SetScale(refrenceCenter, scale); @@ -366,7 +366,7 @@ TopoDS_Shape LAMPTOOLAPI Scale(TopoDS_Shape& shape, gp_Pnt refrenceCenter, doub return scaleTransformBuilder.Shape(); } -TopoDS_Shape LAMPTOOLAPI createConicalHorn(double bottomRadius, double bottomHeight, double topRadius, double topHeight) +TopoDS_Shape createConicalHorn(double bottomRadius, double bottomHeight, double topRadius, double topHeight) { BRepPrimAPI_MakeCone mkCone = BRepPrimAPI_MakeCone::BRepPrimAPI_MakeCone(bottomRadius,topRadius,topHeight); @@ -394,7 +394,7 @@ TopoDS_Shape LAMPTOOLAPI createConicalHorn(double bottomRadius, double bottomHe return compound; } -TopoDS_Shape LAMPTOOLAPI createPyramidalHorn(double bottomWidth, double bottomHeight, double bottomAtl, double topWidth, double topHeight, double topAtl) +TopoDS_Shape createPyramidalHorn(double bottomWidth, double bottomHeight, double bottomAtl, double topWidth, double topHeight, double topAtl) { @@ -402,7 +402,7 @@ TopoDS_Shape LAMPTOOLAPI createPyramidalHorn(double bottomWidth, double bottomH return TopoDS_Shape(); } - TopoDS_Shape LAMPTOOLAPI CreateWedge(double x, double y, double z) + TopoDS_Shape CreateWedge(double x, double y, double z) { diff --git a/src/PluginWBFZExchangePlugin/OCCTBase.h b/src/PluginWBFZExchangePlugin/OCCTBase.h new file mode 100644 index 0000000..52c8ed3 --- /dev/null +++ b/src/PluginWBFZExchangePlugin/OCCTBase.h @@ -0,0 +1,97 @@ +#pragma once + +#ifndef OCCTBASELAMP_H +#define OCCTBASELAMP_H +#include "WBFZExchangePluginAPI.h" +#include "referenceHeader.h" + + +//==================== +// 系统支持的模型导出类型 +//===================== + +enum OCCTShapeType +{ + STL, + STEP, + IGES, + NoneType, +}; + +OCCTShapeType str2OCCTShapeType(QString str); +QStringList getOCCTShapeTypeEmnu(); +QString getOCCTShapeTypeFilterString(); +QString get_STL_FilterString(); +QString get_STEP_FilterString(); +QString get_IGES_FilterString(); +QString getOCCTShapeTypeFilterString(OCCTShapeType t); +QString getOCCTShapeTypeFilterString(QString str); + +// 常用静态函数 +bool SaveTopoDs_Stl(QString FilePath, const TopoDS_Shape& shape); +bool SaveTopoDs_Step(QString FilePath, const TopoDS_Shape& shape); +bool SaveTopoDs_IGES(QString FilePath,const TopoDS_Shape& shape); +bool SaveTopoDs(QString FilePath,const TopoDS_Shape& shape, OCCTShapeType type); + +TopoDS_Shape ReadTopoDs_IGES(QString Filepath); +TopoDS_Shape ReadTopoDs_Stl(QString Filepath); +TopoDS_Shape ReadTopoDs_Step(QString Filepath); + +OCCTShapeType ReadTopoDs_Shape(QString FilePath, TopoDS_Shape& shape_TopoDs); + + +// 模型合并 +TopoDS_Shape MergedTopoShape(std::vector TopoDS_Shapelist); + + +// 修改模型显示 +void ChangeModelColor(Handle(AIS_Shape)& aisShape, Quantity_Color& redColor); + +//// 创建箭头 +TopoDS_Shape CreateArrow(const gp_Dir& direction, Standard_Real length, Standard_Real radius); +// + + +// OCCT 根据向量A和B,计算变换矩阵 +gp_Trsf GetTransFormFromVector(const gp_Vec& A, const gp_Vec& B); + + +TopoDS_Shape Process_RotationThetaPhi_MoveXYZ(TopoDS_Shape shape, double theta, double phi,double X,double Y,double Z); + + +//TopoDS_Shape Createpyramid(double width=10.0,double depth=5.0, double mouthWidth=1.0, double mouthHeight=0.5, double height = 15.0); + + + +// 创建一个笛卡尔坐标系 +TopoDS_Shape CreateCartesianCoordinatesAxis(double xlength,double ylength,double zlength); +// 常见模型创建 +TopoDS_Shape CreateBox(double x, double y, double z); +TopoDS_Shape CreateCylinder(double radius, double height); +TopoDS_Shape CreateCone(double radius_bottom, double radius_top, double height); +TopoDS_Shape CreateSphere(double radius); +TopoDS_Shape CreateTorus(double majorRadius, double minorRadius); + +// 常见模型操作 +TopoDS_Shape Cut(TopoDS_Shape& shape1, TopoDS_Shape& shape2); +TopoDS_Shape Fuse(TopoDS_Shape& shape1, TopoDS_Shape& shape2); +// 常见操作 -- 模型旋转、平移、缩放 +TopoDS_Shape Rotate(TopoDS_Shape& shape, gp_Ax1 axis, double angle); +TopoDS_Shape Translate(TopoDS_Shape& shape, gp_Vec move_vec); +TopoDS_Shape Scale(TopoDS_Shape& shape, gp_Pnt refrenceCenter, double scale); + + +// 创建散射体雷达 +// 创建一个坐标原点为圆心的 +TopoDS_Shape createConicalHorn(double bottomRadius,double bottomHeight,double topRadius,double topHeight); +TopoDS_Shape createPyramidalHorn(double bottomWidth, double bottomHeight, double bottomAtl, double topWidth, double topHeight, double topAtl); + + + + + +#endif // OCCTBASELAMP_H + + + + diff --git a/src/WBCLFZSystemModule/OCCTBaseOperaorClass.cpp b/src/PluginWBFZExchangePlugin/OCCTBaseOperaorClass.cpp similarity index 100% rename from src/WBCLFZSystemModule/OCCTBaseOperaorClass.cpp rename to src/PluginWBFZExchangePlugin/OCCTBaseOperaorClass.cpp diff --git a/src/WBCLFZSystemModule/OCCTBaseOperaorClass.h b/src/PluginWBFZExchangePlugin/OCCTBaseOperaorClass.h similarity index 100% rename from src/WBCLFZSystemModule/OCCTBaseOperaorClass.h rename to src/PluginWBFZExchangePlugin/OCCTBaseOperaorClass.h diff --git a/src/WBCLFZSystemModule/OCCTModelOperator.cpp b/src/PluginWBFZExchangePlugin/OCCTModelOperator.cpp similarity index 70% rename from src/WBCLFZSystemModule/OCCTModelOperator.cpp rename to src/PluginWBFZExchangePlugin/OCCTModelOperator.cpp index 3f772bf..48c7127 100644 --- a/src/WBCLFZSystemModule/OCCTModelOperator.cpp +++ b/src/PluginWBFZExchangePlugin/OCCTModelOperator.cpp @@ -2,69 +2,69 @@ #include #include #include - +#include "ui_OCCTModelOperator.h" OCCTModelOperator::OCCTModelOperator(QString TopoName,QWidget *parent, Handle(AIS_InteractiveContext) myContext) : QDialog(parent) { - ui.setupUi(this); + ui->setupUi(this); setWindowFlags(Qt::Window); setWindowTitle(TopoName); // 参数初设 - this->ui.radioButton_NoCopy->setChecked(true); - this->ui.radioButton_Time->setChecked(true); + this->ui->radioButton_NoCopy->setChecked(true); + this->ui->radioButton_Time->setChecked(true); this->myContext = myContext; this->ModelName = TopoName; // 处理平移 QDoubleValidator* validator = new QDoubleValidator(); // 限制参数 - ui.lineEdit_Move_From_X->setValidator(validator); - ui.lineEdit_Move_From_Z->setValidator(validator); - ui.lineEdit_Move_From_Y->setValidator(validator); - ui.lineEdit_Move_To_X->setValidator(validator); - ui.lineEdit_Move_To_Y->setValidator(validator); - ui.lineEdit_Move_To_Z->setValidator(validator); - ui.lineEdit_Rotation_Center_X->setValidator(validator); - ui.lineEdit_Rotation_Center_Y->setValidator(validator); - ui.lineEdit_Rotation_Center_Z->setValidator(validator); - ui.lineEdit_Rotation_Axis_X->setValidator(validator); - ui.lineEdit_Rotation_Axis_Y->setValidator(validator); - ui.lineEdit_Rotation_Axis_Z->setValidator(validator); + ui->lineEdit_Move_From_X->setValidator(validator); + ui->lineEdit_Move_From_Z->setValidator(validator); + ui->lineEdit_Move_From_Y->setValidator(validator); + ui->lineEdit_Move_To_X->setValidator(validator); + ui->lineEdit_Move_To_Y->setValidator(validator); + ui->lineEdit_Move_To_Z->setValidator(validator); + ui->lineEdit_Rotation_Center_X->setValidator(validator); + ui->lineEdit_Rotation_Center_Y->setValidator(validator); + ui->lineEdit_Rotation_Center_Z->setValidator(validator); + ui->lineEdit_Rotation_Axis_X->setValidator(validator); + ui->lineEdit_Rotation_Axis_Y->setValidator(validator); + ui->lineEdit_Rotation_Axis_Z->setValidator(validator); - ui.lineEdit_Scale_refrence_point_X->setValidator(validator); - ui.lineEdit_Scale_refrence_point_Y->setValidator(validator); - ui.lineEdit_Scale_refrence_point_Z->setValidator(validator); + ui->lineEdit_Scale_refrence_point_X->setValidator(validator); + ui->lineEdit_Scale_refrence_point_Y->setValidator(validator); + ui->lineEdit_Scale_refrence_point_Z->setValidator(validator); QDoubleValidator* validatorScale = new QDoubleValidator(); validatorScale->setBottom(0.0); - ui.lineEdit_ScaleValue->setValidator(validatorScale); + ui->lineEdit_ScaleValue->setValidator(validatorScale); // 初始化 - ui.lineEdit_Move_From_X->setText(u8"0.0"); - ui.lineEdit_Move_From_Z->setText(u8"0.0"); - ui.lineEdit_Move_From_Y->setText(u8"0.0"); - ui.lineEdit_Move_To_X->setText(u8"0.0"); - ui.lineEdit_Move_To_Y->setText(u8"0.0"); - ui.lineEdit_Move_To_Z->setText(u8"0.0"); - ui.lineEdit_Rotation_Center_X->setText(u8"0.0"); - ui.lineEdit_Rotation_Center_Y->setText(u8"0.0"); - ui.lineEdit_Rotation_Center_Z->setText(u8"0.0"); - ui.lineEdit_Rotation_Axis_X->setText(u8"0.0"); - ui.lineEdit_Rotation_Axis_Y->setText(u8"0.0"); - ui.lineEdit_Rotation_Axis_Z->setText(u8"0.0"); - ui.lineEdit_ScaleValue->setText(u8"1.0"); - ui.lineEdit_Scale_refrence_point_X->setText(u8"0.0"); - ui.lineEdit_Scale_refrence_point_Y->setText(u8"0.0"); - ui.lineEdit_Scale_refrence_point_Z->setText(u8"0.0"); + ui->lineEdit_Move_From_X->setText(u8"0.0"); + ui->lineEdit_Move_From_Z->setText(u8"0.0"); + ui->lineEdit_Move_From_Y->setText(u8"0.0"); + ui->lineEdit_Move_To_X->setText(u8"0.0"); + ui->lineEdit_Move_To_Y->setText(u8"0.0"); + ui->lineEdit_Move_To_Z->setText(u8"0.0"); + ui->lineEdit_Rotation_Center_X->setText(u8"0.0"); + ui->lineEdit_Rotation_Center_Y->setText(u8"0.0"); + ui->lineEdit_Rotation_Center_Z->setText(u8"0.0"); + ui->lineEdit_Rotation_Axis_X->setText(u8"0.0"); + ui->lineEdit_Rotation_Axis_Y->setText(u8"0.0"); + ui->lineEdit_Rotation_Axis_Z->setText(u8"0.0"); + ui->lineEdit_ScaleValue->setText(u8"1.0"); + ui->lineEdit_Scale_refrence_point_X->setText(u8"0.0"); + ui->lineEdit_Scale_refrence_point_Y->setText(u8"0.0"); + ui->lineEdit_Scale_refrence_point_Z->setText(u8"0.0"); // 缩放中心参数化 - ui.radioButton_Auto->setChecked(true); + ui->radioButton_Auto->setChecked(true); // 参数初始化 this->UpdataVariable(); // 事件绑定 if (TopoName.isEmpty()) { - this->ui.radioButton_Copy->setChecked(true); - this->ui.radioButton_NoCopy->setEnabled(false); + this->ui->radioButton_Copy->setChecked(true); + this->ui->radioButton_NoCopy->setEnabled(false); } } @@ -135,7 +135,7 @@ Handle(AIS_InteractiveObject) OCCTModelOperator::getAISBAK() void OCCTModelOperator::ExcuteOperator() { this->ProcesssModel(); - if (this->ui.radioButton_Copy->isChecked()) { // 复制模型 + if (this->ui->radioButton_Copy->isChecked()) { // 复制模型 emit this->ResultExportCopyAndCreateNew(this); } else { @@ -147,27 +147,27 @@ void OCCTModelOperator::ExcuteOperator() void OCCTModelOperator::UpdataVariable() { - this->Move_From_X = this->ui.lineEdit_Move_From_X->text().toDouble(); - this->Move_From_Z = this->ui.lineEdit_Move_From_Z->text().toDouble(); - this->Move_From_Y = this->ui.lineEdit_Move_From_Y->text().toDouble(); - this->Move_To_X = this->ui.lineEdit_Move_To_X->text().toDouble(); - this->Move_To_Y = this->ui.lineEdit_Move_To_Y->text().toDouble(); - this->Move_To_Z = this->ui.lineEdit_Move_To_Z->text().toDouble(); - this->Rotation_Center_X = this->ui.lineEdit_Rotation_Center_X->text().toDouble(); - this->Rotation_Center_Y = this->ui.lineEdit_Rotation_Center_Y->text().toDouble(); - this->Rotation_Center_Z = this->ui.lineEdit_Rotation_Center_Z->text().toDouble(); - this->Rotation_angle_X = this->ui.lineEdit_Rotation_Axis_X->text().toDouble(); - this->Rotation_angle_Y = this->ui.lineEdit_Rotation_Axis_Y->text().toDouble(); - this->ScaleDouble = this->ui.lineEdit_ScaleValue->text().toDouble(); + this->Move_From_X = this->ui->lineEdit_Move_From_X->text().toDouble(); + this->Move_From_Z = this->ui->lineEdit_Move_From_Z->text().toDouble(); + this->Move_From_Y = this->ui->lineEdit_Move_From_Y->text().toDouble(); + this->Move_To_X = this->ui->lineEdit_Move_To_X->text().toDouble(); + this->Move_To_Y = this->ui->lineEdit_Move_To_Y->text().toDouble(); + this->Move_To_Z = this->ui->lineEdit_Move_To_Z->text().toDouble(); + this->Rotation_Center_X = this->ui->lineEdit_Rotation_Center_X->text().toDouble(); + this->Rotation_Center_Y = this->ui->lineEdit_Rotation_Center_Y->text().toDouble(); + this->Rotation_Center_Z = this->ui->lineEdit_Rotation_Center_Z->text().toDouble(); + this->Rotation_angle_X = this->ui->lineEdit_Rotation_Axis_X->text().toDouble(); + this->Rotation_angle_Y = this->ui->lineEdit_Rotation_Axis_Y->text().toDouble(); + this->ScaleDouble = this->ui->lineEdit_ScaleValue->text().toDouble(); - this->ScaleRefrencePoint_X=this->ui.lineEdit_Scale_refrence_point_X->text().toDouble(); - this->ScaleRefrencePoint_Y=this->ui.lineEdit_Scale_refrence_point_Y->text().toDouble(); - this->ScaleRefrencePoint_Z=this->ui.lineEdit_Scale_refrence_point_Z->text().toDouble(); + this->ScaleRefrencePoint_X=this->ui->lineEdit_Scale_refrence_point_X->text().toDouble(); + this->ScaleRefrencePoint_Y=this->ui->lineEdit_Scale_refrence_point_Y->text().toDouble(); + this->ScaleRefrencePoint_Z=this->ui->lineEdit_Scale_refrence_point_Z->text().toDouble(); } void OCCTModelOperator::UpdateScaleRefrencepoint() { - if (this->ui.radioButton_Auto->isChecked()) { + if (this->ui->radioButton_Auto->isChecked()) { // 假设你有一个 TopoDS_Shape 对象,例如一个立方体 TopoDS_Shape myShape = this->DataShapeBAK; // 你需要将其替换为实际的形状对象 GProp_GProps volumeProperties; @@ -178,9 +178,9 @@ void OCCTModelOperator::UpdateScaleRefrencepoint() //// 获取质心 gp_Pnt centerOfMass = volumeProperties.CentreOfMass(); - this->ui.lineEdit_Scale_refrence_point_X->setText(QString("%1").arg(centerOfMass.X(), 0, 'e', 8)); - this->ui.lineEdit_Scale_refrence_point_Y->setText(QString("%1").arg(centerOfMass.Y(), 0, 'e', 8)); - this->ui.lineEdit_Scale_refrence_point_Z->setText(QString("%1").arg(centerOfMass.Z(), 0, 'e', 8)); + this->ui->lineEdit_Scale_refrence_point_X->setText(QString("%1").arg(centerOfMass.X(), 0, 'e', 8)); + this->ui->lineEdit_Scale_refrence_point_Y->setText(QString("%1").arg(centerOfMass.Y(), 0, 'e', 8)); + this->ui->lineEdit_Scale_refrence_point_Z->setText(QString("%1").arg(centerOfMass.Z(), 0, 'e', 8)); } } @@ -189,7 +189,7 @@ void OCCTModelOperator::PreViewOperator() this->UpdataVariable(); this->toString(); - if (this->ui.radioButton_Time->isChecked()) { + if (this->ui->radioButton_Time->isChecked()) { this->ProcesssModel(); } } @@ -389,9 +389,9 @@ void OCCTModelOperator::on_lineEdit_ScaleValue_returnPressed() void OCCTModelOperator::on_radioButton_Auto_toggled(bool flag) { if (flag) { - this->ui.lineEdit_Scale_refrence_point_X->setEnabled(false); - this->ui.lineEdit_Scale_refrence_point_Y->setEnabled(false); - this->ui.lineEdit_Scale_refrence_point_Z->setEnabled(false); + this->ui->lineEdit_Scale_refrence_point_X->setEnabled(false); + this->ui->lineEdit_Scale_refrence_point_Y->setEnabled(false); + this->ui->lineEdit_Scale_refrence_point_Z->setEnabled(false); this->UpdateScaleRefrencepoint(); } } @@ -399,9 +399,9 @@ void OCCTModelOperator::on_radioButton_Auto_toggled(bool flag) void OCCTModelOperator::on_radioButton_NoAuto_toggled(bool flag) { if (flag) { - this->ui.lineEdit_Scale_refrence_point_X->setEnabled(true); - this->ui.lineEdit_Scale_refrence_point_Y->setEnabled(true); - this->ui.lineEdit_Scale_refrence_point_Z->setEnabled(true); + this->ui->lineEdit_Scale_refrence_point_X->setEnabled(true); + this->ui->lineEdit_Scale_refrence_point_Y->setEnabled(true); + this->ui->lineEdit_Scale_refrence_point_Z->setEnabled(true); this->UpdateScaleRefrencepoint(); } } @@ -424,7 +424,7 @@ void OCCTModelOperator::on_pushButton_ok_clicked() copyBuilder.Perform(this->Datashape); this->DataShapeBAK = copyBuilder.Shape(); - if (this->ui.radioButton_Copy->isChecked()) { + if (this->ui->radioButton_Copy->isChecked()) { emit this->ResultExportCopyAndCreateNew(this); } else { @@ -451,7 +451,7 @@ void OCCTModelOperator::on_pushButton_apply_clicked() copyBuilder.Perform(this->Datashape); this->DataShapeBAK = copyBuilder.Shape(); - if (this->ui.radioButton_Copy->isChecked()) { + if (this->ui->radioButton_Copy->isChecked()) { emit this->ResultExportCopyAndCreateNew(this); } else { diff --git a/src/WBCLFZSystemModule/OCCTModelOperator.h b/src/PluginWBFZExchangePlugin/OCCTModelOperator.h similarity index 95% rename from src/WBCLFZSystemModule/OCCTModelOperator.h rename to src/PluginWBFZExchangePlugin/OCCTModelOperator.h index dec2eef..f25af72 100644 --- a/src/WBCLFZSystemModule/OCCTModelOperator.h +++ b/src/PluginWBFZExchangePlugin/OCCTModelOperator.h @@ -11,10 +11,16 @@ #ifndef OCCT_MODEL_OPERATOR_H #define OCCT_MODEL_OPERATOR_H +#include "WBFZExchangePluginAPI.h" #include "AllHead.h" -#include "ui_OCCTModelOperator.h" + #include "OCCTBaseOperaorClass.h" -class OCCTModelOperator : public QDialog + +namespace Ui{ + class OCCTModelOperatorClass; +} + +class OCCTModelOperator : public QDialog { Q_OBJECT @@ -31,7 +37,7 @@ public: Handle(AIS_InteractiveObject) getAISBAK(); private: - Ui::OCCTModelOperatorClass ui; + Ui::OCCTModelOperatorClass* ui; public: TopoDS_Shape Datashape; // 处理控制的模型 diff --git a/src/WBCLFZSystemModule/OCCTModelOperator.ui b/src/PluginWBFZExchangePlugin/OCCTModelOperator.ui similarity index 100% rename from src/WBCLFZSystemModule/OCCTModelOperator.ui rename to src/PluginWBFZExchangePlugin/OCCTModelOperator.ui diff --git a/src/WBCLFZSystemModule/OCCTopoShapeTreeViewer.cpp b/src/PluginWBFZExchangePlugin/OCCTopoShapeTreeViewer.cpp similarity index 100% rename from src/WBCLFZSystemModule/OCCTopoShapeTreeViewer.cpp rename to src/PluginWBFZExchangePlugin/OCCTopoShapeTreeViewer.cpp diff --git a/src/WBCLFZSystemModule/OCCTopoShapeTreeViewer.h b/src/PluginWBFZExchangePlugin/OCCTopoShapeTreeViewer.h similarity index 85% rename from src/WBCLFZSystemModule/OCCTopoShapeTreeViewer.h rename to src/PluginWBFZExchangePlugin/OCCTopoShapeTreeViewer.h index a552181..465badc 100644 --- a/src/WBCLFZSystemModule/OCCTopoShapeTreeViewer.h +++ b/src/PluginWBFZExchangePlugin/OCCTopoShapeTreeViewer.h @@ -1,9 +1,9 @@ #ifndef OCCTOPOSHAPETREEVIEWER_H #define OCCTOPOSHAPETREEVIEWER_H - +#include "WBFZExchangePluginAPI.h" #include "AllHead.h" -class OCCTopoShapeTreeViewer : public QTreeWidget +class OCCTopoShapeTreeViewer : public QTreeWidget { Q_OBJECT diff --git a/src/WBCLFZSystemModule/OCCViewer/CommonSample.h b/src/PluginWBFZExchangePlugin/OCCViewer/CommonSample.h similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/CommonSample.h rename to src/PluginWBFZExchangePlugin/OCCViewer/CommonSample.h diff --git a/src/WBCLFZSystemModule/OCCViewer/DocumentCommon.cpp b/src/PluginWBFZExchangePlugin/OCCViewer/DocumentCommon.cpp similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/DocumentCommon.cpp rename to src/PluginWBFZExchangePlugin/OCCViewer/DocumentCommon.cpp diff --git a/src/WBCLFZSystemModule/OCCViewer/DocumentCommon.h b/src/PluginWBFZExchangePlugin/OCCViewer/DocumentCommon.h similarity index 98% rename from src/WBCLFZSystemModule/OCCViewer/DocumentCommon.h rename to src/PluginWBFZExchangePlugin/OCCViewer/DocumentCommon.h index 4678a91..8186e62 100644 --- a/src/WBCLFZSystemModule/OCCViewer/DocumentCommon.h +++ b/src/PluginWBFZExchangePlugin/OCCViewer/DocumentCommon.h @@ -22,11 +22,11 @@ #ifndef DOCUMENT_COMMON_OVERVIEW_H #define DOCUMENT_COMMON_OVERVIEW_H - +#include "WBFZExchangePluginAPI.h" #include "AllHead.h" #include -#include "TaskXml/TaskTreeClass.h" +#include "TaskTreeClass.h" #include "TaskNodeList.h" @@ -38,7 +38,7 @@ /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// //! Implements visualization of samples content -class DocumentCommon : public QTreeWidget +class DocumentCommon : public QTreeWidget { Q_OBJECT public: diff --git a/src/WBCLFZSystemModule/OCCViewer/GeomWidget.cpp b/src/PluginWBFZExchangePlugin/OCCViewer/GeomWidget.cpp similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/GeomWidget.cpp rename to src/PluginWBFZExchangePlugin/OCCViewer/GeomWidget.cpp diff --git a/src/WBCLFZSystemModule/OCCViewer/GeomWidget.h b/src/PluginWBFZExchangePlugin/OCCViewer/GeomWidget.h similarity index 96% rename from src/WBCLFZSystemModule/OCCViewer/GeomWidget.h rename to src/PluginWBFZExchangePlugin/OCCViewer/GeomWidget.h index ba077dc..2fef2b4 100644 --- a/src/WBCLFZSystemModule/OCCViewer/GeomWidget.h +++ b/src/PluginWBFZExchangePlugin/OCCViewer/GeomWidget.h @@ -21,7 +21,7 @@ #ifndef GEOMWIDGET_H #define GEOMWIDGET_H - +#include "WBFZExchangePluginAPI.h" #include "OCCViewer\View.h" #include "OCCViewer\DocumentCommon.h" @@ -39,7 +39,7 @@ #include #include //! Qt widget for organize 3D & 2D documents -class GeomWidget : public QWidget +class GeomWidget : public QWidget { Q_OBJECT public: diff --git a/src/WBCLFZSystemModule/OCCViewer/OCCT_Test/BaseSample.cpp b/src/PluginWBFZExchangePlugin/OCCViewer/OCCT_Test/BaseSample.cpp similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/OCCT_Test/BaseSample.cpp rename to src/PluginWBFZExchangePlugin/OCCViewer/OCCT_Test/BaseSample.cpp diff --git a/src/WBCLFZSystemModule/OCCViewer/OCCT_Test/BaseSample.h b/src/PluginWBFZExchangePlugin/OCCViewer/OCCT_Test/BaseSample.h similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/OCCT_Test/BaseSample.h rename to src/PluginWBFZExchangePlugin/OCCViewer/OCCT_Test/BaseSample.h diff --git a/src/WBCLFZSystemModule/OCCViewer/OCCT_Test/MakeBottle.cpp b/src/PluginWBFZExchangePlugin/OCCViewer/OCCT_Test/MakeBottle.cpp similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/OCCT_Test/MakeBottle.cpp rename to src/PluginWBFZExchangePlugin/OCCViewer/OCCT_Test/MakeBottle.cpp diff --git a/src/WBCLFZSystemModule/OCCViewer/OCCT_Test/MakeBottle.h b/src/PluginWBFZExchangePlugin/OCCViewer/OCCT_Test/MakeBottle.h similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/OCCT_Test/MakeBottle.h rename to src/PluginWBFZExchangePlugin/OCCViewer/OCCT_Test/MakeBottle.h diff --git a/src/WBCLFZSystemModule/OCCViewer/OCCT_Test/Viewer3d.xml b/src/PluginWBFZExchangePlugin/OCCViewer/OCCT_Test/Viewer3d.xml similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/OCCT_Test/Viewer3d.xml rename to src/PluginWBFZExchangePlugin/OCCViewer/OCCT_Test/Viewer3d.xml diff --git a/src/WBCLFZSystemModule/OCCViewer/OCCT_Test/Viewer3dSamples.cpp b/src/PluginWBFZExchangePlugin/OCCViewer/OCCT_Test/Viewer3dSamples.cpp similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/OCCT_Test/Viewer3dSamples.cpp rename to src/PluginWBFZExchangePlugin/OCCViewer/OCCT_Test/Viewer3dSamples.cpp diff --git a/src/WBCLFZSystemModule/OCCViewer/OCCT_Test/Viewer3dSamples.h b/src/PluginWBFZExchangePlugin/OCCViewer/OCCT_Test/Viewer3dSamples.h similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/OCCT_Test/Viewer3dSamples.h rename to src/PluginWBFZExchangePlugin/OCCViewer/OCCT_Test/Viewer3dSamples.h diff --git a/src/WBCLFZSystemModule/OCCViewer/OcctHighlighter.cpp b/src/PluginWBFZExchangePlugin/OCCViewer/OcctHighlighter.cpp similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/OcctHighlighter.cpp rename to src/PluginWBFZExchangePlugin/OCCViewer/OcctHighlighter.cpp diff --git a/src/WBCLFZSystemModule/OCCViewer/OcctHighlighter.h b/src/PluginWBFZExchangePlugin/OCCViewer/OcctHighlighter.h similarity index 96% rename from src/WBCLFZSystemModule/OCCViewer/OcctHighlighter.h rename to src/PluginWBFZExchangePlugin/OCCViewer/OcctHighlighter.h index 967fa49..041653f 100644 --- a/src/WBCLFZSystemModule/OCCViewer/OcctHighlighter.h +++ b/src/PluginWBFZExchangePlugin/OCCViewer/OcctHighlighter.h @@ -21,7 +21,7 @@ #ifndef OCCTHIGHLIGHTER_H #define OCCTHIGHLIGHTER_H - +#include "WBFZExchangePluginAPI.h" #include #include @@ -38,7 +38,7 @@ QT_END_NAMESPACE //! Implements C++ and OCCT objects syntax //! highlighting for sample code window -class OcctHighlighter: public QSyntaxHighlighter +class OcctHighlighter: public QSyntaxHighlighter { Q_OBJECT public: diff --git a/src/WBCLFZSystemModule/OCCViewer/TranslateDialog.cpp b/src/PluginWBFZExchangePlugin/OCCViewer/TranslateDialog.cpp similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/TranslateDialog.cpp rename to src/PluginWBFZExchangePlugin/OCCViewer/TranslateDialog.cpp diff --git a/src/WBCLFZSystemModule/OCCViewer/TranslateDialog.h b/src/PluginWBFZExchangePlugin/OCCViewer/TranslateDialog.h similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/TranslateDialog.h rename to src/PluginWBFZExchangePlugin/OCCViewer/TranslateDialog.h diff --git a/src/WBCLFZSystemModule/OCCViewer/Transparency.cpp b/src/PluginWBFZExchangePlugin/OCCViewer/Transparency.cpp similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/Transparency.cpp rename to src/PluginWBFZExchangePlugin/OCCViewer/Transparency.cpp diff --git a/src/WBCLFZSystemModule/OCCViewer/Transparency.h b/src/PluginWBFZExchangePlugin/OCCViewer/Transparency.h similarity index 95% rename from src/WBCLFZSystemModule/OCCViewer/Transparency.h rename to src/PluginWBFZExchangePlugin/OCCViewer/Transparency.h index fc21bfb..780f8e6 100644 --- a/src/WBCLFZSystemModule/OCCViewer/Transparency.h +++ b/src/PluginWBFZExchangePlugin/OCCViewer/Transparency.h @@ -22,7 +22,7 @@ #ifndef TRANSPARENCY_H #define TRANSPARENCY_H - +#include "WBFZExchangePluginAPI.h" #include #include #include @@ -34,7 +34,7 @@ class QSlider; //! Qt dialog with slider for change shapes transparency -class DialogTransparency : public QDialog +class DialogTransparency : public QDialog { Q_OBJECT public: diff --git a/src/WBCLFZSystemModule/OCCViewer/View.cpp b/src/PluginWBFZExchangePlugin/OCCViewer/View.cpp similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/View.cpp rename to src/PluginWBFZExchangePlugin/OCCViewer/View.cpp diff --git a/src/WBCLFZSystemModule/OCCViewer/View.h b/src/PluginWBFZExchangePlugin/OCCViewer/View.h similarity index 98% rename from src/WBCLFZSystemModule/OCCViewer/View.h rename to src/PluginWBFZExchangePlugin/OCCViewer/View.h index 5bbb247..ee930ee 100644 --- a/src/WBCLFZSystemModule/OCCViewer/View.h +++ b/src/PluginWBFZExchangePlugin/OCCViewer/View.h @@ -23,6 +23,7 @@ #ifndef VIEW_H #define VIEW_H +#include "WBFZExchangePluginAPI.h" #include "AllHead.h" #include #include @@ -87,7 +88,7 @@ enum RaytraceAction //! Qt widget containing V3d_View and toolbar with view manipulation buttons. //! Also use AIS_ViewController for redirecting user input (mouse, keyboard) //! into 3D viewer events (rotation, panning, zooming) -class View: public QWidget, protected AIS_ViewController +class View: public QWidget, protected AIS_ViewController { Q_OBJECT public: diff --git a/src/WBCLFZSystemModule/OCCViewer/res/antialiasing.png b/src/PluginWBFZExchangePlugin/OCCViewer/res/antialiasing.png similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/res/antialiasing.png rename to src/PluginWBFZExchangePlugin/OCCViewer/res/antialiasing.png diff --git a/src/WBCLFZSystemModule/OCCViewer/res/cursor_rotate.png b/src/PluginWBFZExchangePlugin/OCCViewer/res/cursor_rotate.png similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/res/cursor_rotate.png rename to src/PluginWBFZExchangePlugin/OCCViewer/res/cursor_rotate.png diff --git a/src/WBCLFZSystemModule/OCCViewer/res/cursor_zoom.png b/src/PluginWBFZExchangePlugin/OCCViewer/res/cursor_zoom.png similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/res/cursor_zoom.png rename to src/PluginWBFZExchangePlugin/OCCViewer/res/cursor_zoom.png diff --git a/src/WBCLFZSystemModule/OCCViewer/res/help.png b/src/PluginWBFZExchangePlugin/OCCViewer/res/help.png similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/res/help.png rename to src/PluginWBFZExchangePlugin/OCCViewer/res/help.png diff --git a/src/WBCLFZSystemModule/OCCViewer/res/lamp.png b/src/PluginWBFZExchangePlugin/OCCViewer/res/lamp.png similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/res/lamp.png rename to src/PluginWBFZExchangePlugin/OCCViewer/res/lamp.png diff --git a/src/WBCLFZSystemModule/OCCViewer/res/raytracing.png b/src/PluginWBFZExchangePlugin/OCCViewer/res/raytracing.png similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/res/raytracing.png rename to src/PluginWBFZExchangePlugin/OCCViewer/res/raytracing.png diff --git a/src/WBCLFZSystemModule/OCCViewer/res/reflections.png b/src/PluginWBFZExchangePlugin/OCCViewer/res/reflections.png similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/res/reflections.png rename to src/PluginWBFZExchangePlugin/OCCViewer/res/reflections.png diff --git a/src/WBCLFZSystemModule/OCCViewer/res/shadows.png b/src/PluginWBFZExchangePlugin/OCCViewer/res/shadows.png similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/res/shadows.png rename to src/PluginWBFZExchangePlugin/OCCViewer/res/shadows.png diff --git a/src/WBCLFZSystemModule/OCCViewer/res/tool_color.png b/src/PluginWBFZExchangePlugin/OCCViewer/res/tool_color.png similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/res/tool_color.png rename to src/PluginWBFZExchangePlugin/OCCViewer/res/tool_color.png diff --git a/src/WBCLFZSystemModule/OCCViewer/res/tool_delete.png b/src/PluginWBFZExchangePlugin/OCCViewer/res/tool_delete.png similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/res/tool_delete.png rename to src/PluginWBFZExchangePlugin/OCCViewer/res/tool_delete.png diff --git a/src/WBCLFZSystemModule/OCCViewer/res/tool_material.png b/src/PluginWBFZExchangePlugin/OCCViewer/res/tool_material.png similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/res/tool_material.png rename to src/PluginWBFZExchangePlugin/OCCViewer/res/tool_material.png diff --git a/src/WBCLFZSystemModule/OCCViewer/res/tool_shading.png b/src/PluginWBFZExchangePlugin/OCCViewer/res/tool_shading.png similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/res/tool_shading.png rename to src/PluginWBFZExchangePlugin/OCCViewer/res/tool_shading.png diff --git a/src/WBCLFZSystemModule/OCCViewer/res/tool_transparency.png b/src/PluginWBFZExchangePlugin/OCCViewer/res/tool_transparency.png similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/res/tool_transparency.png rename to src/PluginWBFZExchangePlugin/OCCViewer/res/tool_transparency.png diff --git a/src/WBCLFZSystemModule/OCCViewer/res/tool_wireframe.png b/src/PluginWBFZExchangePlugin/OCCViewer/res/tool_wireframe.png similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/res/tool_wireframe.png rename to src/PluginWBFZExchangePlugin/OCCViewer/res/tool_wireframe.png diff --git a/src/WBCLFZSystemModule/OCCViewer/res/view_axo.png b/src/PluginWBFZExchangePlugin/OCCViewer/res/view_axo.png similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/res/view_axo.png rename to src/PluginWBFZExchangePlugin/OCCViewer/res/view_axo.png diff --git a/src/WBCLFZSystemModule/OCCViewer/res/view_back.png b/src/PluginWBFZExchangePlugin/OCCViewer/res/view_back.png similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/res/view_back.png rename to src/PluginWBFZExchangePlugin/OCCViewer/res/view_back.png diff --git a/src/WBCLFZSystemModule/OCCViewer/res/view_bottom.png b/src/PluginWBFZExchangePlugin/OCCViewer/res/view_bottom.png similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/res/view_bottom.png rename to src/PluginWBFZExchangePlugin/OCCViewer/res/view_bottom.png diff --git a/src/WBCLFZSystemModule/OCCViewer/res/view_comp_off.png b/src/PluginWBFZExchangePlugin/OCCViewer/res/view_comp_off.png similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/res/view_comp_off.png rename to src/PluginWBFZExchangePlugin/OCCViewer/res/view_comp_off.png diff --git a/src/WBCLFZSystemModule/OCCViewer/res/view_comp_on.png b/src/PluginWBFZExchangePlugin/OCCViewer/res/view_comp_on.png similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/res/view_comp_on.png rename to src/PluginWBFZExchangePlugin/OCCViewer/res/view_comp_on.png diff --git a/src/WBCLFZSystemModule/OCCViewer/res/view_fitall.png b/src/PluginWBFZExchangePlugin/OCCViewer/res/view_fitall.png similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/res/view_fitall.png rename to src/PluginWBFZExchangePlugin/OCCViewer/res/view_fitall.png diff --git a/src/WBCLFZSystemModule/OCCViewer/res/view_front.png b/src/PluginWBFZExchangePlugin/OCCViewer/res/view_front.png similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/res/view_front.png rename to src/PluginWBFZExchangePlugin/OCCViewer/res/view_front.png diff --git a/src/WBCLFZSystemModule/OCCViewer/res/view_left.png b/src/PluginWBFZExchangePlugin/OCCViewer/res/view_left.png similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/res/view_left.png rename to src/PluginWBFZExchangePlugin/OCCViewer/res/view_left.png diff --git a/src/WBCLFZSystemModule/OCCViewer/res/view_reset.png b/src/PluginWBFZExchangePlugin/OCCViewer/res/view_reset.png similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/res/view_reset.png rename to src/PluginWBFZExchangePlugin/OCCViewer/res/view_reset.png diff --git a/src/WBCLFZSystemModule/OCCViewer/res/view_right.png b/src/PluginWBFZExchangePlugin/OCCViewer/res/view_right.png similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/res/view_right.png rename to src/PluginWBFZExchangePlugin/OCCViewer/res/view_right.png diff --git a/src/WBCLFZSystemModule/OCCViewer/res/view_top.png b/src/PluginWBFZExchangePlugin/OCCViewer/res/view_top.png similarity index 100% rename from src/WBCLFZSystemModule/OCCViewer/res/view_top.png rename to src/PluginWBFZExchangePlugin/OCCViewer/res/view_top.png diff --git a/src/WBCLFZSystemModule/OcctExportClass.cpp b/src/PluginWBFZExchangePlugin/OcctExportClass.cpp similarity index 69% rename from src/WBCLFZSystemModule/OcctExportClass.cpp rename to src/PluginWBFZExchangePlugin/OcctExportClass.cpp index f9ef6e2..db8d97f 100644 --- a/src/WBCLFZSystemModule/OcctExportClass.cpp +++ b/src/PluginWBFZExchangePlugin/OcctExportClass.cpp @@ -1,22 +1,23 @@ #include "OcctExportClass.h" #include #include - +#include "ui_DialogBatchExport.h" +#include "ui_OcctExportClass.h" OcctExportClass::OcctExportClass(QWidget *parent) : QDialog(parent) { - ui.setupUi(this); - QObject::connect(this->ui.pushButton_saveFile, SIGNAL(pressed()), this, SLOT(SaveButonClick())); - QObject::connect(this->ui.pushButton_export, SIGNAL(pressed()), this, SLOT(ExportButonClick())); + ui->setupUi(this); + QObject::connect(this->ui->pushButton_saveFile, SIGNAL(pressed()), this, SLOT(SaveButonClick())); + QObject::connect(this->ui->pushButton_export, SIGNAL(pressed()), this, SLOT(ExportButonClick())); - ui.comboBox->clear(); - ui.comboBox->addItems(getOCCTShapeTypeEmnu()); - ui.comboBox->setCurrentIndex(0); + ui->comboBox->clear(); + ui->comboBox->addItems(getOCCTShapeTypeEmnu()); + ui->comboBox->setCurrentIndex(0); - ui.label_text->setText(u8""); + ui->label_text->setText(u8""); } OcctExportClass::~OcctExportClass() @@ -30,11 +31,11 @@ void OcctExportClass::setDataShape(const TopoDS_Shape & data) void OcctExportClass::ExportButonClick() { - this->Filepath = this->ui.lineEdit->text(); + this->Filepath = this->ui->lineEdit->text(); // 开始保存模型对象 - QString comboxStr = ui.comboBox->itemText(ui.comboBox->currentIndex()); + QString comboxStr = ui->comboBox->itemText(ui->comboBox->currentIndex()); OCCTShapeType type = str2OCCTShapeType(comboxStr); - ui.label_text->setText(u8"数据正在导出中........"); + ui->label_text->setText(u8"数据正在导出中........"); SaveTopoDs(this->Filepath, this->Datashape, type); QMessageBox::information(this, "info", u8"数据导出成功!!!"); this->close(); @@ -43,27 +44,27 @@ void OcctExportClass::ExportButonClick() { void OcctExportClass::SaveButonClick() { qDebug() << u8"选择导出路径"; QString filterStr; - QString comboxStr = ui.comboBox->itemText(ui.comboBox->currentIndex()); + QString comboxStr = ui->comboBox->itemText(ui->comboBox->currentIndex()); OCCTShapeType type = str2OCCTShapeType(comboxStr); filterStr = getOCCTShapeTypeFilterString(type); QString savePath = getSaveFilePath( nullptr,QString::fromUtf8(u8"导出路径") ,filterStr); this->Filepath = savePath; - this->ui.lineEdit->setText(this->Filepath); + this->ui->lineEdit->setText(this->Filepath); } DialogBatchExport::DialogBatchExport(QWidget* parent) { - ui.setupUi(this); - QObject::connect(this->ui.pushButton_saveFile, SIGNAL(pressed()), this, SLOT(SaveButonClick())); - QObject::connect(this->ui.pushButton_export, SIGNAL(pressed()), this, SLOT(ExportButonClick())); + ui->setupUi(this); + QObject::connect(this->ui->pushButton_saveFile, SIGNAL(pressed()), this, SLOT(SaveButonClick())); + QObject::connect(this->ui->pushButton_export, SIGNAL(pressed()), this, SLOT(ExportButonClick())); - ui.radioButton_Merged->setChecked(false); - ui.comboBox->clear(); - ui.comboBox->addItems(getOCCTShapeTypeEmnu()); - ui.comboBox->setCurrentIndex(0); + ui->radioButton_Merged->setChecked(false); + ui->comboBox->clear(); + ui->comboBox->addItems(getOCCTShapeTypeEmnu()); + ui->comboBox->setCurrentIndex(0); - ui.label_text->setText(u8""); + ui->label_text->setText(u8""); this->Datashapelist= QMap(); this->Datashapelist.clear(); @@ -94,17 +95,17 @@ TopoDS_Shape DialogBatchExport::getMerged() void DialogBatchExport::ExportButonClick() { // 分批 - QString comboxStr = ui.comboBox->itemText(ui.comboBox->currentIndex()); + QString comboxStr = ui->comboBox->itemText(ui->comboBox->currentIndex()); OCCTShapeType type = str2OCCTShapeType(comboxStr); - ui.label_text->setText(u8"数据正在导出中........"); + ui->label_text->setText(u8"数据正在导出中........"); - this->Filepath = this->ui.lineEdit->text(); + this->Filepath = this->ui->lineEdit->text(); if (this->Filepath.isEmpty()) { QMessageBox::warning(this, "warning", u8"没有选中文件夹"); return; } else { - if (this->ui.radioButton_Split->isChecked()) { // 分批导出文件 + if (this->ui->radioButton_Split->isChecked()) { // 分批导出文件 // 使用迭代器遍历 QMap 中的元素 QMap::const_iterator it; for (it = this->Datashapelist.constBegin(); it != this->Datashapelist.constEnd(); ++it) { @@ -126,7 +127,7 @@ void DialogBatchExport::SaveButonClick() { qDebug() << u8"选择导出路径"; - if (this->ui.radioButton_Split->isChecked()) { // 分批导出文件 + if (this->ui->radioButton_Split->isChecked()) { // 分批导出文件 // 弹出选择文件夹的对话框 QString selectedDirectory = QFileDialog::getExistingDirectory(nullptr, "选择文件夹", @@ -149,7 +150,7 @@ void DialogBatchExport::SaveButonClick() } else { // 选择合并文件 QString filterStr; - QString comboxStr = ui.comboBox->itemText(ui.comboBox->currentIndex()); + QString comboxStr = ui->comboBox->itemText(ui->comboBox->currentIndex()); OCCTShapeType type = str2OCCTShapeType(comboxStr); filterStr = getOCCTShapeTypeFilterString(type); QString savePath = getSaveFilePath( @@ -168,7 +169,7 @@ void DialogBatchExport::SaveButonClick() } this->Filepath = savePath; - this->ui.lineEdit->setText(this->Filepath); + this->ui->lineEdit->setText(this->Filepath); } diff --git a/src/WBCLFZSystemModule/OcctExportClass.h b/src/PluginWBFZExchangePlugin/OcctExportClass.h similarity index 74% rename from src/WBCLFZSystemModule/OcctExportClass.h rename to src/PluginWBFZExchangePlugin/OcctExportClass.h index eb30e8f..a1afb94 100644 --- a/src/WBCLFZSystemModule/OcctExportClass.h +++ b/src/PluginWBFZExchangePlugin/OcctExportClass.h @@ -1,16 +1,20 @@ #pragma once #ifndef OCCT_EXPORTCLASS_H #define OCCT_EXPORTCLASS_H +#include "WBFZExchangePluginAPI.h" #include "AllHead.h" #include -#include "ui_DialogBatchExport.h" -#include "ui_OcctExportClass.h" + #include "OCCTBaseOperaorClass.h" #include +namespace Ui{ + class OcctExportClassClass; + class DialogBatchExport; +} -class OcctExportClass : public QDialog +class OcctExportClass : public QDialog { Q_OBJECT @@ -22,7 +26,7 @@ private: TopoDS_Shape Datashape; QString Filepath; private: - Ui::OcctExportClassClass ui; + Ui::OcctExportClassClass* ui; public slots: void ExportButonClick(); @@ -32,7 +36,7 @@ public slots: -class DialogBatchExport : public QDialog +class DialogBatchExport : public QDialog { Q_OBJECT @@ -45,7 +49,7 @@ private: QMap Datashapelist; QString Filepath; private: - Ui::DialogBatchExport ui; + Ui::DialogBatchExport* ui; public slots: void ExportButonClick(); diff --git a/src/WBCLFZSystemModule/OcctExportClass.ui b/src/PluginWBFZExchangePlugin/OcctExportClass.ui similarity index 100% rename from src/WBCLFZSystemModule/OcctExportClass.ui rename to src/PluginWBFZExchangePlugin/OcctExportClass.ui diff --git a/src/WBCLFZSystemModule/PointCloudProcess/BasePCL.cpp b/src/PluginWBFZExchangePlugin/PointCloudProcess/BasePCL.cpp similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/BasePCL.cpp rename to src/PluginWBFZExchangePlugin/PointCloudProcess/BasePCL.cpp diff --git a/src/WBCLFZSystemModule/PointCloudProcess/BasePCL.h b/src/PluginWBFZExchangePlugin/PointCloudProcess/BasePCL.h similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/BasePCL.h rename to src/PluginWBFZExchangePlugin/PointCloudProcess/BasePCL.h diff --git a/src/WBCLFZSystemModule/PointCloudProcess/BilateralFilterWindows.ui b/src/PluginWBFZExchangePlugin/PointCloudProcess/BilateralFilterWindows.ui similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/BilateralFilterWindows.ui rename to src/PluginWBFZExchangePlugin/PointCloudProcess/BilateralFilterWindows.ui diff --git a/src/WBCLFZSystemModule/PointCloudProcess/DialogTriangulationSurfaceMesh.ui b/src/PluginWBFZExchangePlugin/PointCloudProcess/DialogTriangulationSurfaceMesh.ui similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/DialogTriangulationSurfaceMesh.ui rename to src/PluginWBFZExchangePlugin/PointCloudProcess/DialogTriangulationSurfaceMesh.ui diff --git a/src/WBCLFZSystemModule/PointCloudProcess/MedianFilterWindows.ui b/src/PluginWBFZExchangePlugin/PointCloudProcess/MedianFilterWindows.ui similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/MedianFilterWindows.ui rename to src/PluginWBFZExchangePlugin/PointCloudProcess/MedianFilterWindows.ui diff --git a/src/WBCLFZSystemModule/PointCloudProcess/PointCloudAlg.cpp b/src/PluginWBFZExchangePlugin/PointCloudProcess/PointCloudAlg.cpp similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/PointCloudAlg.cpp rename to src/PluginWBFZExchangePlugin/PointCloudProcess/PointCloudAlg.cpp diff --git a/src/WBCLFZSystemModule/PointCloudProcess/PointCloudAlg.h b/src/PluginWBFZExchangePlugin/PointCloudProcess/PointCloudAlg.h similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/PointCloudAlg.h rename to src/PluginWBFZExchangePlugin/PointCloudProcess/PointCloudAlg.h diff --git a/src/WBCLFZSystemModule/PointCloudProcess/PointManagerClass.cpp b/src/PluginWBFZExchangePlugin/PointCloudProcess/PointManagerClass.cpp similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/PointManagerClass.cpp rename to src/PluginWBFZExchangePlugin/PointCloudProcess/PointManagerClass.cpp diff --git a/src/WBCLFZSystemModule/PointCloudProcess/PointManagerClass.h b/src/PluginWBFZExchangePlugin/PointCloudProcess/PointManagerClass.h similarity index 98% rename from src/WBCLFZSystemModule/PointCloudProcess/PointManagerClass.h rename to src/PluginWBFZExchangePlugin/PointCloudProcess/PointManagerClass.h index 0ca0527..a0b639d 100644 --- a/src/WBCLFZSystemModule/PointCloudProcess/PointManagerClass.h +++ b/src/PluginWBFZExchangePlugin/PointCloudProcess/PointManagerClass.h @@ -1,4 +1,7 @@ #pragma once +#ifndef POINTMANAGERCLASS_H +#define POINTMANAGERCLASS_H +#include "WBFZExchangePluginAPI.h" #include #include #include @@ -195,3 +198,5 @@ public: std::shared_ptr getCloudPointItemFromName(QString Name); std::shared_ptr getMeshItemClassFromName(QString Name); }; + +#endif diff --git a/src/WBCLFZSystemModule/PointCloudProcess/PoissonReSurfaceWindows.ui b/src/PluginWBFZExchangePlugin/PointCloudProcess/PoissonReSurfaceWindows.ui similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/PoissonReSurfaceWindows.ui rename to src/PluginWBFZExchangePlugin/PointCloudProcess/PoissonReSurfaceWindows.ui diff --git a/src/WBCLFZSystemModule/PointCloudProcess/RadiusOutlierRemovalWindows.ui b/src/PluginWBFZExchangePlugin/PointCloudProcess/RadiusOutlierRemovalWindows.ui similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/RadiusOutlierRemovalWindows.ui rename to src/PluginWBFZExchangePlugin/PointCloudProcess/RadiusOutlierRemovalWindows.ui diff --git a/src/WBCLFZSystemModule/PointCloudProcess/Scance_FEKOSourceSettingPlaneWaveWIndows.ui b/src/PluginWBFZExchangePlugin/PointCloudProcess/Scance_FEKOSourceSettingPlaneWaveWIndows.ui similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/Scance_FEKOSourceSettingPlaneWaveWIndows.ui rename to src/PluginWBFZExchangePlugin/PointCloudProcess/Scance_FEKOSourceSettingPlaneWaveWIndows.ui diff --git a/src/WBCLFZSystemModule/PointCloudProcess/Scene_StripQtWidgetsClass.cpp b/src/PluginWBFZExchangePlugin/PointCloudProcess/Scene_StripQtWidgetsClass.cpp similarity index 90% rename from src/WBCLFZSystemModule/PointCloudProcess/Scene_StripQtWidgetsClass.cpp rename to src/PluginWBFZExchangePlugin/PointCloudProcess/Scene_StripQtWidgetsClass.cpp index 482ccca..3097cb2 100644 --- a/src/WBCLFZSystemModule/PointCloudProcess/Scene_StripQtWidgetsClass.cpp +++ b/src/PluginWBFZExchangePlugin/PointCloudProcess/Scene_StripQtWidgetsClass.cpp @@ -3,7 +3,7 @@ Scene_StripQtWidgetsClass::Scene_StripQtWidgetsClass(QWidget *parent) : QWidget(parent) { - ui.setupUi(this); + ui->setupUi(this); } Scene_StripQtWidgetsClass::~Scene_StripQtWidgetsClass() diff --git a/src/WBCLFZSystemModule/PointCloudProcess/Scene_StripQtWidgetsClass.h b/src/PluginWBFZExchangePlugin/PointCloudProcess/Scene_StripQtWidgetsClass.h similarity index 53% rename from src/WBCLFZSystemModule/PointCloudProcess/Scene_StripQtWidgetsClass.h rename to src/PluginWBFZExchangePlugin/PointCloudProcess/Scene_StripQtWidgetsClass.h index 11f9448..1c0e3b0 100644 --- a/src/WBCLFZSystemModule/PointCloudProcess/Scene_StripQtWidgetsClass.h +++ b/src/PluginWBFZExchangePlugin/PointCloudProcess/Scene_StripQtWidgetsClass.h @@ -1,8 +1,15 @@ #pragma once - +#ifndef SCENE_STRIPQTWIDGRTSCLASS_H +#define SCENE_STRIPQTWIDGRTSCLASS_H +#include "WBFZExchangePluginAPI.h" #include #include "ui_Scene_StripQtWidgetsClass.h" + +namespace Ui{ + class Scene_StripQtWidgetsClassClass; +} + class Scene_StripQtWidgetsClass : public QWidget { Q_OBJECT @@ -12,5 +19,7 @@ public: ~Scene_StripQtWidgetsClass(); private: - Ui::Scene_StripQtWidgetsClassClass ui; + Ui::Scene_StripQtWidgetsClassClass* ui; }; + +#endif \ No newline at end of file diff --git a/src/WBCLFZSystemModule/PointCloudProcess/Scene_StripQtWidgetsClass.ui b/src/PluginWBFZExchangePlugin/PointCloudProcess/Scene_StripQtWidgetsClass.ui similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/Scene_StripQtWidgetsClass.ui rename to src/PluginWBFZExchangePlugin/PointCloudProcess/Scene_StripQtWidgetsClass.ui diff --git a/src/WBCLFZSystemModule/PointCloudProcess/StatisticalOutlierRemovalWindows.ui b/src/PluginWBFZExchangePlugin/PointCloudProcess/StatisticalOutlierRemovalWindows.ui similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/StatisticalOutlierRemovalWindows.ui rename to src/PluginWBFZExchangePlugin/PointCloudProcess/StatisticalOutlierRemovalWindows.ui diff --git a/src/WBCLFZSystemModule/PointCloudProcess/Strips_FEKOSourceSettingPlaneWaveWIndows.ui b/src/PluginWBFZExchangePlugin/PointCloudProcess/Strips_FEKOSourceSettingPlaneWaveWIndows.ui similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/Strips_FEKOSourceSettingPlaneWaveWIndows.ui rename to src/PluginWBFZExchangePlugin/PointCloudProcess/Strips_FEKOSourceSettingPlaneWaveWIndows.ui diff --git a/src/WBCLFZSystemModule/PointCloudProcess/ToolDialog.cpp b/src/PluginWBFZExchangePlugin/PointCloudProcess/ToolDialog.cpp similarity index 50% rename from src/WBCLFZSystemModule/PointCloudProcess/ToolDialog.cpp rename to src/PluginWBFZExchangePlugin/PointCloudProcess/ToolDialog.cpp index f53c968..a08b9f0 100644 --- a/src/WBCLFZSystemModule/PointCloudProcess/ToolDialog.cpp +++ b/src/PluginWBFZExchangePlugin/PointCloudProcess/ToolDialog.cpp @@ -1,15 +1,23 @@ #include "ToolDialog.h" #include +#include +#include +#include +#include +#include +#include + BilateralFilterWindows::BilateralFilterWindows(QWidget* parent):ToolBaseFunClass(parent) { - this->ui.setupUi(this); - this->setComboBox(this->ui.comboBox_clouldName); - this->setLineEdit(this->ui.lineEdit_savePath); - this->setPushButton(this->ui.FileOpenpushButton); - QObject::connect(this->ui.FileOpenpushButton, SIGNAL(clicked()), this, SLOT(SaveFileButton())); - QObject::connect(this->ui.okButton, SIGNAL(clicked()), this, SLOT(OKpushButton())); - QObject::connect(this->ui.cancelButton, SIGNAL(clicked()), this, SLOT(CannelpushButton())); + this->ui=new Ui::BilateralFilterWindowsDialog ; + this->ui->setupUi(this); + this->setComboBox(this->ui->comboBox_clouldName); + this->setLineEdit(this->ui->lineEdit_savePath); + this->setPushButton(this->ui->FileOpenpushButton); + QObject::connect(this->ui->FileOpenpushButton, SIGNAL(clicked()), this, SLOT(SaveFileButton())); + QObject::connect(this->ui->okButton, SIGNAL(clicked()), this, SLOT(OKpushButton())); + QObject::connect(this->ui->cancelButton, SIGNAL(clicked()), this, SLOT(CannelpushButton())); } @@ -27,12 +35,12 @@ QString BilateralFilterWindows::ExcuteCmd(pcl::PointCloud::Pt // 计算点云滤波结果 pcl::PointCloud::Ptr output(new pcl::PointCloud); // 输出结果 - float sigma_s = this->ui.lineEdit_NearSearchNumber->text().toFloat(); // 窗口 - float sigma_r = this->ui.lineEdit_NearSearchDistance->text().toFloat(); // 标准差 + float sigma_s = this->ui->lineEdit_NearSearchNumber->text().toFloat(); // 窗口 + float sigma_r = this->ui->lineEdit_NearSearchDistance->text().toFloat(); // 标准差 //bilateralFilter(pointcloudPtr, output, sigma_s, sigma_r); // 执行滤波 // 保存滤波结果 - QString save_path = this->ui.lineEdit_savePath->text(); + QString save_path = this->ui->lineEdit_savePath->text(); save_path = save_path.trimmed(); int flag=pcl::io::savePLYFileBinary(save_path.toUtf8().constData(), *output); QString logstr = "[" + QString::number(flag) + "]"; @@ -45,13 +53,13 @@ QString BilateralFilterWindows::ExcuteCmd(pcl::PointCloud::Pt MedianFilterWindows::MedianFilterWindows(QWidget* parent) :ToolBaseFunClass(parent) { - this->ui.setupUi(this); - this->setComboBox(this->ui.comboBox_clouldName); - this->setLineEdit(this->ui.lineEdit_savePath); - this->setPushButton(this->ui.FileOpenpushButton); - QObject::connect(this->ui.FileOpenpushButton, SIGNAL(clicked()), this, SLOT(SaveFileButton())); - QObject::connect(this->ui.okButton, SIGNAL(clicked()), this, SLOT(OKpushButton())); - QObject::connect(this->ui.cancelButton, SIGNAL(clicked()), this, SLOT(CannelpushButton())); + this->ui=new Ui::MedianFilterWindowsDialog ;this->ui->setupUi(this); + this->setComboBox(this->ui->comboBox_clouldName); + this->setLineEdit(this->ui->lineEdit_savePath); + this->setPushButton(this->ui->FileOpenpushButton); + QObject::connect(this->ui->FileOpenpushButton, SIGNAL(clicked()), this, SLOT(SaveFileButton())); + QObject::connect(this->ui->okButton, SIGNAL(clicked()), this, SLOT(OKpushButton())); + QObject::connect(this->ui->cancelButton, SIGNAL(clicked()), this, SLOT(CannelpushButton())); } MedianFilterWindows::~MedianFilterWindows() @@ -62,13 +70,13 @@ MedianFilterWindows::~MedianFilterWindows() PoissonReSurfaceWindows::PoissonReSurfaceWindows(QWidget* parent) :ToolBaseFunClass(parent) { - this->ui.setupUi(this); - this->setComboBox(this->ui.comboBox_clouldName); - this->setLineEdit(this->ui.lineEdit_savePath); - this->setPushButton(this->ui.FileOpenpushButton); - QObject::connect(this->ui.FileOpenpushButton, SIGNAL(clicked()), this, SLOT(SaveFileButton())); - QObject::connect(this->ui.okButton, SIGNAL(clicked()), this, SLOT(OKpushButton())); - QObject::connect(this->ui.cancelButton, SIGNAL(clicked()), this, SLOT(CannelpushButton())); + this->ui=new Ui::PoissonReSurfaceWindowsDialog ;this->ui->setupUi(this); + this->setComboBox(this->ui->comboBox_clouldName); + this->setLineEdit(this->ui->lineEdit_savePath); + this->setPushButton(this->ui->FileOpenpushButton); + QObject::connect(this->ui->FileOpenpushButton, SIGNAL(clicked()), this, SLOT(SaveFileButton())); + QObject::connect(this->ui->okButton, SIGNAL(clicked()), this, SLOT(OKpushButton())); + QObject::connect(this->ui->cancelButton, SIGNAL(clicked()), this, SLOT(CannelpushButton())); } PoissonReSurfaceWindows::~PoissonReSurfaceWindows() @@ -80,13 +88,13 @@ PoissonReSurfaceWindows::~PoissonReSurfaceWindows() RadiusOutlierRemovalWindows::RadiusOutlierRemovalWindows(QWidget* parent) :ToolBaseFunClass(parent) { - this->ui.setupUi(this); - this->setComboBox(this->ui.comboBox_clouldName); - this->setLineEdit(this->ui.lineEdit_savePath); - this->setPushButton(this->ui.FileOpenpushButton); - QObject::connect(this->ui.FileOpenpushButton, SIGNAL(clicked()), this, SLOT(SaveFileButton())); - QObject::connect(this->ui.okButton, SIGNAL(clicked()), this, SLOT(OKpushButton())); - QObject::connect(this->ui.cancelButton, SIGNAL(clicked()), this, SLOT(CannelpushButton())); + this->ui=new Ui::RadiusOutlierRemovalWindowsDialog ;this->ui->setupUi(this); + this->setComboBox(this->ui->comboBox_clouldName); + this->setLineEdit(this->ui->lineEdit_savePath); + this->setPushButton(this->ui->FileOpenpushButton); + QObject::connect(this->ui->FileOpenpushButton, SIGNAL(clicked()), this, SLOT(SaveFileButton())); + QObject::connect(this->ui->okButton, SIGNAL(clicked()), this, SLOT(OKpushButton())); + QObject::connect(this->ui->cancelButton, SIGNAL(clicked()), this, SLOT(CannelpushButton())); } RadiusOutlierRemovalWindows::~RadiusOutlierRemovalWindows() @@ -98,13 +106,13 @@ RadiusOutlierRemovalWindows::~RadiusOutlierRemovalWindows() StatisticalOutlierRemovalWindows::StatisticalOutlierRemovalWindows(QWidget* parent) :ToolBaseFunClass(parent) { - this->ui.setupUi(this); - this->setComboBox(this->ui.comboBox_clouldName); - this->setLineEdit(this->ui.lineEdit_savePath); - this->setPushButton(this->ui.FileOpenpushButton); - QObject::connect(this->ui.FileOpenpushButton, SIGNAL(clicked()), this, SLOT(SaveFileButton())); - QObject::connect(this->ui.okButton, SIGNAL(clicked()), this, SLOT(OKpushButton())); - QObject::connect(this->ui.cancelButton, SIGNAL(clicked()), this, SLOT(CannelpushButton())); + this->ui=new Ui::StatisticalOutlierRemovalWindowsDialog ;this->ui->setupUi(this); + this->setComboBox(this->ui->comboBox_clouldName); + this->setLineEdit(this->ui->lineEdit_savePath); + this->setPushButton(this->ui->FileOpenpushButton); + QObject::connect(this->ui->FileOpenpushButton, SIGNAL(clicked()), this, SLOT(SaveFileButton())); + QObject::connect(this->ui->okButton, SIGNAL(clicked()), this, SLOT(OKpushButton())); + QObject::connect(this->ui->cancelButton, SIGNAL(clicked()), this, SLOT(CannelpushButton())); } StatisticalOutlierRemovalWindows::~StatisticalOutlierRemovalWindows() @@ -115,13 +123,13 @@ StatisticalOutlierRemovalWindows::~StatisticalOutlierRemovalWindows() DialogTriangulationSurfaceMesh::DialogTriangulationSurfaceMesh(QWidget* parent) :ToolBaseFunClass(parent) { - this->ui.setupUi(this); - this->setComboBox(this->ui.comboBox_clouldName); - this->setLineEdit(this->ui.lineEdit_savePath); - this->setPushButton(this->ui.FileOpenpushButton); - QObject::connect(this->ui.FileOpenpushButton, SIGNAL(clicked()), this, SLOT(SaveFileSTLButton())); - QObject::connect(this->ui.okButton, SIGNAL(clicked()), this, SLOT(OKpushButton())); - QObject::connect(this->ui.cancelButton, SIGNAL(clicked()), this, SLOT(CannelpushButton())); + this->ui=new Ui::DialogTriangulationSurfaceMeshDialog ;this->ui->setupUi(this); + this->setComboBox(this->ui->comboBox_clouldName); + this->setLineEdit(this->ui->lineEdit_savePath); + this->setPushButton(this->ui->FileOpenpushButton); + QObject::connect(this->ui->FileOpenpushButton, SIGNAL(clicked()), this, SLOT(SaveFileSTLButton())); + QObject::connect(this->ui->okButton, SIGNAL(clicked()), this, SLOT(OKpushButton())); + QObject::connect(this->ui->cancelButton, SIGNAL(clicked()), this, SLOT(CannelpushButton())); } DialogTriangulationSurfaceMesh::~DialogTriangulationSurfaceMesh() @@ -138,12 +146,12 @@ QString DialogTriangulationSurfaceMesh::ExcuteCmd(pcl::PointCloudui.lineEdit_maxTrangleEdge->text().toDouble(); - double Mu = this->ui.lineEdit_NearSearchDistance->text().toDouble(); - int MaximumNearestNeighbors = this->ui.lineEdit_NearSearchNumber->text().toInt(); - double MaximumSurfaceAngle = this->ui.lineEdit_SurfaceAngle->text().toDouble() / 180.0 * M_PI; - double MinimumAngle = this->ui.lineEdit_minTrangleAngle->text().toDouble() / 180.0 * M_PI; - double MaximumAngle = this->ui.lineEdit_MaxTrangleAngle->text().toDouble() / 180.0 * M_PI; + double SearchRadius = this->ui->lineEdit_maxTrangleEdge->text().toDouble(); + double Mu = this->ui->lineEdit_NearSearchDistance->text().toDouble(); + int MaximumNearestNeighbors = this->ui->lineEdit_NearSearchNumber->text().toInt(); + double MaximumSurfaceAngle = this->ui->lineEdit_SurfaceAngle->text().toDouble() / 180.0 * M_PI; + double MinimumAngle = this->ui->lineEdit_minTrangleAngle->text().toDouble() / 180.0 * M_PI; + double MaximumAngle = this->ui->lineEdit_MaxTrangleAngle->text().toDouble() / 180.0 * M_PI; GP(cloud_with_normals, mesh, @@ -155,7 +163,7 @@ QString DialogTriangulationSurfaceMesh::ExcuteCmd(pcl::PointCloudui.lineEdit_savePath->text(); + QString save_path = this->ui->lineEdit_savePath->text(); save_path = save_path.trimmed(); int flag = pcl::io::savePolygonFileSTL(save_path.toUtf8().constData(), mesh); diff --git a/src/WBCLFZSystemModule/PointCloudProcess/ToolDialog.h b/src/PluginWBFZExchangePlugin/PointCloudProcess/ToolDialog.h similarity index 91% rename from src/WBCLFZSystemModule/PointCloudProcess/ToolDialog.h rename to src/PluginWBFZExchangePlugin/PointCloudProcess/ToolDialog.h index f911cd3..97bc72f 100644 --- a/src/WBCLFZSystemModule/PointCloudProcess/ToolDialog.h +++ b/src/PluginWBFZExchangePlugin/PointCloudProcess/ToolDialog.h @@ -1,4 +1,7 @@ #pragma once +#ifndef TOOLDIALOG_H +#define TOOLDIALOG_H +#include "WBFZExchangePluginAPI.h" #include #include #include @@ -140,21 +143,21 @@ #include "BasePCL.h" #include "PointCloudAlg.h" -// 工具窗口 -#include "ui_BilateralFilterWindows.h" -#include "ui_MedianFilterWindows.h" -#include "ui_RadiusOutlierRemovalWindows.h" -#include "ui_StatisticalOutlierRemovalWindows.h" -#include "ui_DialogTriangulationSurfaceMesh.h" -#include "ui_PoissonReSurfaceWindows.h" - +namespace Ui{ + class BilateralFilterWindowsDialog; + class MedianFilterWindowsDialog; + class StatisticalOutlierRemovalWindowsDialog; + class DialogTriangulationSurfaceMeshDialog; + class PoissonReSurfaceWindowsDialog; + class RadiusOutlierRemovalWindowsDialog; +} ///////////////////////////////////////////////////////////////////////////////////// // 公用方法 /////////////////////////////////////////////////////////////////////////////////// -class ToolBaseFunClass:public QDialog +class ToolBaseFunClass:public QDialog { Q_OBJECT // 每个子类必须使用这个宏 public: @@ -199,7 +202,7 @@ public: QString ExcuteCmd(pcl::PointCloud::Ptr pointcloudPtr); private: - Ui::BilateralFilterWindowsDialog ui; + Ui::BilateralFilterWindowsDialog * ui; }; @@ -218,7 +221,7 @@ public: ~MedianFilterWindows(); private: - Ui::MedianFilterWindowsDialog ui; + Ui::MedianFilterWindowsDialog * ui; }; @@ -236,7 +239,7 @@ public: ~RadiusOutlierRemovalWindows(); private: - Ui::RadiusOutlierRemovalWindowsDialog ui; + Ui::RadiusOutlierRemovalWindowsDialog * ui; }; @@ -253,7 +256,7 @@ public: ~StatisticalOutlierRemovalWindows(); private: - Ui::StatisticalOutlierRemovalWindowsDialog ui; + Ui::StatisticalOutlierRemovalWindowsDialog * ui; }; @@ -272,7 +275,7 @@ public: // 执行操作 QString ExcuteCmd(pcl::PointCloud::Ptr pointcloudPtr); private: - Ui::DialogTriangulationSurfaceMeshDialog ui; + Ui::DialogTriangulationSurfaceMeshDialog * ui; public slots: void SaveFileSTLButton(); }; @@ -292,6 +295,7 @@ public: ~PoissonReSurfaceWindows(); private: - Ui::PoissonReSurfaceWindowsDialog ui; + Ui::PoissonReSurfaceWindowsDialog * ui; }; +#endif \ No newline at end of file diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/1.gif b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/1.gif similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/1.gif rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/1.gif diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/RGB.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/RGB.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/RGB.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/RGB.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/DASHBOARD.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/DASHBOARD.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/DASHBOARD.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/DASHBOARD.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/DBSCAN.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/DBSCAN.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/DBSCAN.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/DBSCAN.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/Histogram.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/Histogram.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/Histogram.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/Histogram.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/KMeans.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/KMeans.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/KMeans.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/KMeans.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/binary.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/binary.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/binary.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/binary.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/chooseMatrix.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/chooseMatrix.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/chooseMatrix.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/chooseMatrix.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/density.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/density.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/density.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/density.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/extract.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/extract.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/extract.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/extract.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/filter.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/filter.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/filter.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/filter.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/help.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/help.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/help.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/help.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/matrix.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/matrix.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/matrix.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/matrix.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/more.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/more.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/more.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/more.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/nihe.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/nihe.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/nihe.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/nihe.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/person.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/person.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/person.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/person.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/pingjie.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/pingjie.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/pingjie.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/pingjie.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/transform.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/transform.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/transform.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/transform.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/tree.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/tree.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/algorithm/tree.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/algorithm/tree.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/back.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/back.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/back.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/back.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/bottom.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/bottom.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/bottom.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/bottom.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/camera.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/camera.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/camera.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/camera.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/color.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/color.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/color.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/color.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/coodinate.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/coodinate.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/coodinate.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/coodinate.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/files/CSV.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/CSV.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/files/CSV.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/CSV.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/files/add.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/add.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/files/add.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/add.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/files/bgColor.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/bgColor.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/files/bgColor.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/bgColor.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/files/cloud.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/cloud.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/files/cloud.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/cloud.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/files/cloud2.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/cloud2.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/files/cloud2.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/cloud2.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/files/copy.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/copy.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/files/copy.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/copy.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/files/cut.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/cut.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/files/cut.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/cut.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/files/log.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/log.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/files/log.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/log.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/files/new1.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/new1.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/files/new1.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/new1.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/files/new2.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/new2.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/files/new2.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/new2.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/files/paste.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/paste.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/files/paste.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/paste.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/files/pointCloud.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/pointCloud.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/files/pointCloud.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/pointCloud.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/files/search.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/search.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/files/search.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/search.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/files/snapshot.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/snapshot.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/files/snapshot.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/snapshot.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/files/star.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/star.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/files/star.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/star.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/files/txt.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/txt.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/files/txt.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/files/txt.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/front.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/front.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/front.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/front.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/grey.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/grey.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/grey.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/grey.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/ic-redo.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/ic-redo.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/ic-redo.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/ic-redo.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/ic-undo.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/ic-undo.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/ic-undo.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/ic-undo.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/keda.ico b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/keda.ico similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/keda.ico rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/keda.ico diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/left.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/left.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/left.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/left.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/lock.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/lock.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/lock.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/lock.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/open.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/open.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/open.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/open.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/redo.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/redo.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/redo.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/redo.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/reset.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/reset.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/reset.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/reset.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/right.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/right.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/right.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/right.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/rotate0.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/rotate0.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/rotate0.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/rotate0.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/rotate180.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/rotate180.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/rotate180.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/rotate180.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/rotate270.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/rotate270.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/rotate270.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/rotate270.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/rotate90.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/rotate90.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/rotate90.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/rotate90.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/seting.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/seting.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/seting.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/seting.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/undo.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/undo.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/undo.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/undo.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/up.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/up.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/up.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/up.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/zoomin.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/zoomin.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/zoomin.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/zoomin.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/images/zoomout.png b/src/PluginWBFZExchangePlugin/PointCloudProcess/images/zoomout.png similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/images/zoomout.png rename to src/PluginWBFZExchangePlugin/PointCloudProcess/images/zoomout.png diff --git a/src/WBCLFZSystemModule/PointCloudProcess/inputdialog.cpp b/src/PluginWBFZExchangePlugin/PointCloudProcess/inputdialog.cpp similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/inputdialog.cpp rename to src/PluginWBFZExchangePlugin/PointCloudProcess/inputdialog.cpp diff --git a/src/WBCLFZSystemModule/PointCloudProcess/inputdialog.h b/src/PluginWBFZExchangePlugin/PointCloudProcess/inputdialog.h similarity index 78% rename from src/WBCLFZSystemModule/PointCloudProcess/inputdialog.h rename to src/PluginWBFZExchangePlugin/PointCloudProcess/inputdialog.h index ab13b6a..64d225d 100644 --- a/src/WBCLFZSystemModule/PointCloudProcess/inputdialog.h +++ b/src/PluginWBFZExchangePlugin/PointCloudProcess/inputdialog.h @@ -1,14 +1,14 @@ #pragma once #ifndef INPUTDIALOG_H #define INPUTDIALOG_H - +#include "WBFZExchangePluginAPI.h" #include namespace Ui { class inputDialog; } -class inputDialog : public QDialog +class inputDialog : public QDialog { Q_OBJECT diff --git a/src/WBCLFZSystemModule/PointCloudProcess/inputdialog.ui b/src/PluginWBFZExchangePlugin/PointCloudProcess/inputdialog.ui similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/inputdialog.ui rename to src/PluginWBFZExchangePlugin/PointCloudProcess/inputdialog.ui diff --git a/src/WBCLFZSystemModule/PointCloudProcess/pclvisualizer.cpp b/src/PluginWBFZExchangePlugin/PointCloudProcess/pclvisualizer.cpp similarity index 99% rename from src/WBCLFZSystemModule/PointCloudProcess/pclvisualizer.cpp rename to src/PluginWBFZExchangePlugin/PointCloudProcess/pclvisualizer.cpp index 2dad219..10f0da7 100644 --- a/src/WBCLFZSystemModule/PointCloudProcess/pclvisualizer.cpp +++ b/src/PluginWBFZExchangePlugin/PointCloudProcess/pclvisualizer.cpp @@ -24,6 +24,8 @@ #include "BasePCL.h" #include "PointCloudAlg.h" #include "ToolDialog.h" +#include "ui_pclvisualizer.h" + PCLVisualizer::PCLVisualizer(QWidget* parent) : QMainWindow(parent) diff --git a/src/WBCLFZSystemModule/PointCloudProcess/pclvisualizer.h b/src/PluginWBFZExchangePlugin/PointCloudProcess/pclvisualizer.h similarity index 99% rename from src/WBCLFZSystemModule/PointCloudProcess/pclvisualizer.h rename to src/PluginWBFZExchangePlugin/PointCloudProcess/pclvisualizer.h index adfbe79..b549688 100644 --- a/src/WBCLFZSystemModule/PointCloudProcess/pclvisualizer.h +++ b/src/PluginWBFZExchangePlugin/PointCloudProcess/pclvisualizer.h @@ -1,4 +1,7 @@ #pragma once +#ifndef PCLVISUALIZERCLASS_H +#define PCLVISUALIZERCLASS_H +#include "WBFZExchangePluginAPI.h" #include #include #include @@ -141,7 +144,7 @@ #include "BasePCL.h" #include "ToolDialog.h" #include "PointManagerClass.h" -#include "ui_pclvisualizer.h" + QT_BEGIN_NAMESPACE namespace Ui { @@ -395,3 +398,5 @@ private: int ShowPclvisualizer(QWidget* parent); + +#endif diff --git a/src/WBCLFZSystemModule/PointCloudProcess/pclvisualizer.ui b/src/PluginWBFZExchangePlugin/PointCloudProcess/pclvisualizer.ui similarity index 100% rename from src/WBCLFZSystemModule/PointCloudProcess/pclvisualizer.ui rename to src/PluginWBFZExchangePlugin/PointCloudProcess/pclvisualizer.ui diff --git a/src/PluginWBFZExchangePlugin/PointCloudThreadBase.cpp b/src/PluginWBFZExchangePlugin/PointCloudThreadBase.cpp index fd5cb29..609c8af 100644 --- a/src/PluginWBFZExchangePlugin/PointCloudThreadBase.cpp +++ b/src/PluginWBFZExchangePlugin/PointCloudThreadBase.cpp @@ -6,6 +6,16 @@ #include "MeshData/meshKernal.h" #include "Common/Types.h" #include "Common/DebugLogger.h" +#include +#include +#include +#include "MeshData/meshKernal.h" +#include "PointCloudOperator/PointCloudCommon.h" +#include "Settings/BusAPI.h" +#include "BaseTool.h" +#include "IO/IOConfig.h" +#include "MeshData/meshSingleton.h" +#include "MeshData/meshSet.h" namespace WBFZ { @@ -26,7 +36,7 @@ namespace WBFZ { QString information{}; ModuleBase::Message msg; - if (_operation == POINTCLOUD_FILTER) + if (_operation == POINTCLOUD_FILTER||_operation == POINTCLOUD_MESH) { if (_success) { @@ -54,24 +64,7 @@ namespace WBFZ msg.type = Common::Message::Error; msg.message = information; } - } - else if (_operation == POINTCLOUD_MESH) - { - if (_success) - { - information = QString("Successful resurface Mesh To \"%1\"").arg(_fileName); - msg.type = Common::Message::Normal; - msg.message = information; - } - else - { - information = QString("Failed resurface Mesh To \"%1\"").arg(_fileName); - msg.type = Common::Message::Error; - msg.message = information; - } - } - emit showInformation(information); - emit _mainwindow->printMessageToMessageWindow(msg); + }else{} } // emit showInformation(information); // emit _mainwindow->printMessageToMessageWindow(msg); @@ -82,5 +75,101 @@ namespace WBFZ _success= flag; } + void PointCloudThreadBase::run() { + + ModuleBase::ThreadTask::run(); + bool result = false; + switch (_operation) + { + case POINTCLOUD_FILTER: + emit showInformation(tr("POINTCLOUD_FILTER From \"%1\"").arg(_fileName)); + result = filtertaskProcess(); + setThreadRunState(result); + break; + case POINTCLOUD_MESH: + emit showInformation(tr("POINTCLOUD_MESH From \"%1\"").arg(_fileName)); + result = remeshtaskProcess(); + setThreadRunState(result); + break; + default: + break; + } + DebugInfo("run ok _success %d _threadRuning %d \n",_success ,_threadRuning); + defaultMeshFinished(); + + } + bool PointCloudThreadBase::filtertaskProcess() + { + vtkDataSet* dataset=filter(); + QFileInfo info(_fileName); + QString name = info.fileName(); + QString path = info.filePath(); + QString suffix = info.suffix().toLower(); + DebugInfo("dataset %d \n",dataset== nullptr); + // 保存流程文件 + if (dataset != nullptr) { + MeshData::MeshKernal* k = new MeshData::MeshKernal; + k->setName(name); + k->setPath(path); + auto meshData =MeshData::MeshData::getInstance(); + int nKernal = meshData->getKernalCount(); + for(int iKernal = 0; iKernal < nKernal; ++iKernal) { + MeshData::MeshKernal* temp = meshData->getKernalAt(iKernal); + if(temp->getPath() == path) { ///< MG same file update + meshData->removeKernalAt(iKernal); + break; + } + } + + k->setMeshData(dataset); + meshData->appendMeshKernal(k); + return true; + }else{ + return false; + } + + return false; + } + vtkDataSet* PointCloudThreadBase::filter() + { + return nullptr; + } + vtkDataSet* PointCloudThreadBase::remesh() + { + return nullptr; + } + bool PointCloudThreadBase::remeshtaskProcess() + { + vtkDataSet* dataset=remesh(); + DebugInfo("remeshtaskProcess !! %d \n",dataset== nullptr ); + QFileInfo info(_fileName); + QString name = info.fileName(); + QString path = info.filePath(); + QString suffix = info.suffix().toLower(); + DebugInfo("dataset %d _fileName \n",dataset== nullptr,_fileName.toStdString().c_str()); + // 保存流程文件 + if (dataset != nullptr) { + auto* k = new MeshData::MeshKernal; + k->setName(name); + k->setPath(path); + auto meshData =MeshData::MeshData::getInstance(); + int nKernal = meshData->getKernalCount(); + for(int iKernal = 0; iKernal < nKernal; ++iKernal) { + MeshData::MeshKernal* temp = meshData->getKernalAt(iKernal); + if(temp->getPath() == path) { ///< MG same file update + meshData->removeKernalAt(iKernal); + break; + } + } + + k->setMeshData(dataset); + meshData->appendMeshKernal(k); + return true; + }else{ + return false; + } + + return false; + } } \ No newline at end of file diff --git a/src/PluginWBFZExchangePlugin/PointCloudThreadBase.h b/src/PluginWBFZExchangePlugin/PointCloudThreadBase.h index 512dddf..978dc79 100644 --- a/src/PluginWBFZExchangePlugin/PointCloudThreadBase.h +++ b/src/PluginWBFZExchangePlugin/PointCloudThreadBase.h @@ -12,17 +12,31 @@ namespace GUI namespace WBFZ { - class WBFZAPI PointCloudThreadBase : public ModuleBase::ThreadTask + + enum PointCloudOperation + { + POINTCLOUD_NONE, + POINTCLOUD_FILTER, + POINTCLOUD_MESH + }; + + + class PointCloudThreadBase : public ModuleBase::ThreadTask { public: PointCloudThreadBase(const QString &fileName, PointCloudOperation operation, GUI::MainWindow *mw); virtual ~PointCloudThreadBase(); - virtual void run() = 0; + virtual void run(); void defaultMeshFinished(); void setThreadRunState(bool); + public: + virtual vtkDataSet* filter(); + virtual bool filtertaskProcess(); - + public: + virtual vtkDataSet* remesh(); + virtual bool remeshtaskProcess(); private: bool _success{false}; QString _fileName; diff --git a/src/WBCLFZSystemModule/ProgramParamLoadingClass.cpp b/src/PluginWBFZExchangePlugin/ProgramParamLoadingClass.cpp similarity index 100% rename from src/WBCLFZSystemModule/ProgramParamLoadingClass.cpp rename to src/PluginWBFZExchangePlugin/ProgramParamLoadingClass.cpp diff --git a/src/WBCLFZSystemModule/ProgramParamLoadingClass.h b/src/PluginWBFZExchangePlugin/ProgramParamLoadingClass.h similarity index 100% rename from src/WBCLFZSystemModule/ProgramParamLoadingClass.h rename to src/PluginWBFZExchangePlugin/ProgramParamLoadingClass.h diff --git a/src/WBCLFZSystemModule/QConsoleCommandAction.cpp b/src/PluginWBFZExchangePlugin/QConsoleCommandAction.cpp similarity index 100% rename from src/WBCLFZSystemModule/QConsoleCommandAction.cpp rename to src/PluginWBFZExchangePlugin/QConsoleCommandAction.cpp diff --git a/src/WBCLFZSystemModule/QConsoleCommandAction.h b/src/PluginWBFZExchangePlugin/QConsoleCommandAction.h similarity index 89% rename from src/WBCLFZSystemModule/QConsoleCommandAction.h rename to src/PluginWBFZExchangePlugin/QConsoleCommandAction.h index 0d87109..2024d01 100644 --- a/src/WBCLFZSystemModule/QConsoleCommandAction.h +++ b/src/PluginWBFZExchangePlugin/QConsoleCommandAction.h @@ -1,6 +1,7 @@ #pragma once #ifndef QCONSOLECOMMANDACTION_H #define QCONSOLECOMMANDACTION_H +#include "WBFZExchangePluginAPI.h" #include "AllHead.h" #include "OCCTBase.h" #include "QConsoleWidget.h" @@ -10,7 +11,7 @@ -class BandingModelPrcessAndQConsoleWidgetClass:public QObject +class BandingModelPrcessAndQConsoleWidgetClass:public QObject { Q_OBJECT public: diff --git a/src/WBCLFZSystemModule/QConsoleIODevice.cpp b/src/PluginWBFZExchangePlugin/QConsoleIODevice.cpp similarity index 100% rename from src/WBCLFZSystemModule/QConsoleIODevice.cpp rename to src/PluginWBFZExchangePlugin/QConsoleIODevice.cpp diff --git a/src/WBCLFZSystemModule/QConsoleIODevice.h b/src/PluginWBFZExchangePlugin/QConsoleIODevice.h similarity index 88% rename from src/WBCLFZSystemModule/QConsoleIODevice.h rename to src/PluginWBFZExchangePlugin/QConsoleIODevice.h index 3fbbeab..f2feb7c 100644 --- a/src/WBCLFZSystemModule/QConsoleIODevice.h +++ b/src/PluginWBFZExchangePlugin/QConsoleIODevice.h @@ -1,16 +1,16 @@ #ifndef QCONSOLEIODEVICE_H #define QCONSOLEIODEVICE_H - +#include "WBFZExchangePluginAPI.h" #include #include class QConsoleWidget; -class QConsoleIODevice : public QIODevice +class QConsoleIODevice : public QIODevice { - Q_OBJECT + Q_OBJECT public: diff --git a/src/WBCLFZSystemModule/QConsoleWidget.cpp b/src/PluginWBFZExchangePlugin/QConsoleWidget.cpp similarity index 100% rename from src/WBCLFZSystemModule/QConsoleWidget.cpp rename to src/PluginWBFZExchangePlugin/QConsoleWidget.cpp diff --git a/src/WBCLFZSystemModule/QConsoleWidget.h b/src/PluginWBFZExchangePlugin/QConsoleWidget.h similarity index 98% rename from src/WBCLFZSystemModule/QConsoleWidget.h rename to src/PluginWBFZExchangePlugin/QConsoleWidget.h index 71200a8..3fd543a 100644 --- a/src/WBCLFZSystemModule/QConsoleWidget.h +++ b/src/PluginWBFZExchangePlugin/QConsoleWidget.h @@ -1,5 +1,6 @@ #ifndef _QCONSOLEWIDGET_H_ #define _QCONSOLEWIDGET_H_ +#include "WBFZExchangePluginAPI.h" #include "AllHead.h" #include #include @@ -10,7 +11,7 @@ class QConsoleIODevice; class QConsoleWidgetCompleter; -class QConsoleWidget : public QPlainTextEdit +class QConsoleWidget : public QPlainTextEdit { Q_OBJECT diff --git a/src/WBCLFZSystemModule/QtEchoExportWindows.cpp b/src/PluginWBFZExchangePlugin/QtEchoExportWindows.cpp similarity index 74% rename from src/WBCLFZSystemModule/QtEchoExportWindows.cpp rename to src/PluginWBFZExchangePlugin/QtEchoExportWindows.cpp index f75b45e..3595d4e 100644 --- a/src/WBCLFZSystemModule/QtEchoExportWindows.cpp +++ b/src/PluginWBFZExchangePlugin/QtEchoExportWindows.cpp @@ -1,9 +1,9 @@ #include "QtEchoExportWindows.h" - +#include "ui_QtEchoExportWindows.h" QtEchoExportWindows::QtEchoExportWindows(QWidget *parent) : QMainWindow(parent) { - ui.setupUi(this); + ui->setupUi(this); } QtEchoExportWindows::~QtEchoExportWindows() diff --git a/src/PluginWBFZExchangePlugin/QtEchoExportWindows.h b/src/PluginWBFZExchangePlugin/QtEchoExportWindows.h new file mode 100644 index 0000000..86b6631 --- /dev/null +++ b/src/PluginWBFZExchangePlugin/QtEchoExportWindows.h @@ -0,0 +1,18 @@ +#pragma once +#include "WBFZExchangePluginAPI.h" +#include + +namespace Ui{ + class QtEchoExportWindowsClass; +} +class QtEchoExportWindows : public QMainWindow +{ + Q_OBJECT + +public: + QtEchoExportWindows(QWidget *parent = nullptr); + ~QtEchoExportWindows(); + +private: + Ui::QtEchoExportWindowsClass* ui; +}; diff --git a/src/WBCLFZSystemModule/QtEchoExportWindows.ui b/src/PluginWBFZExchangePlugin/QtEchoExportWindows.ui similarity index 100% rename from src/WBCLFZSystemModule/QtEchoExportWindows.ui rename to src/PluginWBFZExchangePlugin/QtEchoExportWindows.ui diff --git a/src/WBCLFZSystemModule/QtFreqParamsSetting.cpp b/src/PluginWBFZExchangePlugin/QtFreqParamsSetting.cpp similarity index 57% rename from src/WBCLFZSystemModule/QtFreqParamsSetting.cpp rename to src/PluginWBFZExchangePlugin/QtFreqParamsSetting.cpp index 0472996..dd65fdf 100644 --- a/src/WBCLFZSystemModule/QtFreqParamsSetting.cpp +++ b/src/PluginWBFZExchangePlugin/QtFreqParamsSetting.cpp @@ -1,21 +1,22 @@ #include "QtFreqParamsSetting.h" - +#include "ui_QtFreqParamsSetting.h" QtFreqParamsSetting::QtFreqParamsSetting(QWidget* parent) : QWidget(parent) { - ui.setupUi(this); + ui=new Ui::QtFreqParamsSettingClass; + ui->setupUi(this); QDoubleValidator* validator = new QDoubleValidator(); // 限制参数 - this->ui.lineEdit_centerfreq->setValidator(validator); - this->ui.lineEdit_bandwidth->setValidator(validator); - this->ui.lineEdit_Resolution->setValidator(validator); - this->ui.lineEdit_SenceRange->setValidator(validator); + this->ui->lineEdit_centerfreq->setValidator(validator); + this->ui->lineEdit_bandwidth->setValidator(validator); + this->ui->lineEdit_Resolution->setValidator(validator); + this->ui->lineEdit_SenceRange->setValidator(validator); // 初始化 - ui.lineEdit_centerfreq->setText(u8"9.6"); - ui.lineEdit_bandwidth->setText(u8"0.8"); - ui.lineEdit_Resolution->setText(u8"1.0"); - ui.lineEdit_SenceRange->setText(u8"10.0"); + ui->lineEdit_centerfreq->setText(u8"9.6"); + ui->lineEdit_bandwidth->setText(u8"0.8"); + ui->lineEdit_Resolution->setText(u8"1.0"); + ui->lineEdit_SenceRange->setText(u8"10.0"); } @@ -24,12 +25,12 @@ QtFreqParamsSetting::~QtFreqParamsSetting() void QtFreqParamsSetting::CalcFreqParams() { - bool resolutionRadio = this->ui.radioButton_Resolution->isChecked(); - bool bandwidthRadio = this->ui.radioButton_bandwidth->isChecked(); - QString centerfreq_str = this->ui.lineEdit_centerfreq->text(); - QString resolution_str = this->ui.lineEdit_Resolution->text(); - QString bandwidth_str = this->ui.lineEdit_bandwidth->text(); - QString senceRange_str = this->ui.lineEdit_SenceRange->text(); + bool resolutionRadio = this->ui->radioButton_Resolution->isChecked(); + bool bandwidthRadio = this->ui->radioButton_bandwidth->isChecked(); + QString centerfreq_str = this->ui->lineEdit_centerfreq->text(); + QString resolution_str = this->ui->lineEdit_Resolution->text(); + QString bandwidth_str = this->ui->lineEdit_bandwidth->text(); + QString senceRange_str = this->ui->lineEdit_SenceRange->text(); double centerfreq = 0; double resolution = 1; double bandwidth = 1; @@ -99,16 +100,16 @@ void QtFreqParamsSetting::CalcFreqParams() this->freqParams=FEKOBase::getFreqSetting(centerfreq, resolution, bandwidth, senceRange, resolutionRadio); // 显示 - this->ui.lineEdit_Startfreq->setText(QString::number(freqParams.startfreqs)); - this->ui.lineEdit_endFreq->setText(QString::number(freqParams.endfreqs)); - this->ui.lineEdit_PointNum->setText(QString::number(freqParams.freqpoint)); + this->ui->lineEdit_Startfreq->setText(QString::number(freqParams.startfreqs)); + this->ui->lineEdit_endFreq->setText(QString::number(freqParams.endfreqs)); + this->ui->lineEdit_PointNum->setText(QString::number(freqParams.freqpoint)); if (resolutionRadio) { - this->ui.lineEdit_bandwidth->setText(QString::number(this->freqParams.endfreqs - this->freqParams.startfreqs)); + this->ui->lineEdit_bandwidth->setText(QString::number(this->freqParams.endfreqs - this->freqParams.startfreqs)); } else { - //this->ui.lineEdit_Resolution->setText(QString::number(0.299792458 / bandwidthcal)); + //this->ui->lineEdit_Resolution->setText(QString::number(0.299792458 / bandwidthcal)); } double bandwidthcal = this->freqParams.endfreqs - this->freqParams.startfreqs; resolution = 0.299792458 / bandwidth / 2; @@ -119,7 +120,7 @@ void QtFreqParamsSetting::CalcFreqParams() this->simulationparams->setCenterFreq(centerfreq); this->simulationparams->setRangeResolution(resolution); this->simulationparams->setBandwidth(bandwidthcal); - this->ui.lineEdit_freqdelta->setText(QString::number(bandwidthcal / (freqParams.freqpoint - 1) * 1e3));// GHz --> MHz + this->ui->lineEdit_freqdelta->setText(QString::number(bandwidthcal / (freqParams.freqpoint - 1) * 1e3));// GHz --> MHz } @@ -150,21 +151,21 @@ void QtFreqParamsSetting::on_lineEdit_SenceRange_returnPressed() void QtFreqParamsSetting::FEKOSimulationDataparamsChanged_slots() { - this->ui.lineEdit_centerfreq->setText(QString::number(this->simulationparams->getCenterFreq())); - this->ui.lineEdit_bandwidth->setText(QString::number(this->simulationparams->getBandwidth())); - this->ui.lineEdit_Resolution->setText(QString::number(this->simulationparams->getRangeResolution())); - this->ui.lineEdit_SenceRange->setText(QString::number((this->simulationparams->freqpoints-1)*this->simulationparams->rangeResolution)); - this->ui.lineEdit_Startfreq->setText(QString::number(this->simulationparams->getStartfreq())); - this->ui.lineEdit_endFreq->setText(QString::number(this->simulationparams->getEndfreq())); - this->ui.lineEdit_PointNum->setText(QString::number(this->simulationparams->getFreqpoints())); + this->ui->lineEdit_centerfreq->setText(QString::number(this->simulationparams->getCenterFreq())); + this->ui->lineEdit_bandwidth->setText(QString::number(this->simulationparams->getBandwidth())); + this->ui->lineEdit_Resolution->setText(QString::number(this->simulationparams->getRangeResolution())); + this->ui->lineEdit_SenceRange->setText(QString::number((this->simulationparams->freqpoints-1)*this->simulationparams->rangeResolution)); + this->ui->lineEdit_Startfreq->setText(QString::number(this->simulationparams->getStartfreq())); + this->ui->lineEdit_endFreq->setText(QString::number(this->simulationparams->getEndfreq())); + this->ui->lineEdit_PointNum->setText(QString::number(this->simulationparams->getFreqpoints())); double bandwidthcal=this->simulationparams->getEndfreq() - this->simulationparams->getStartfreq(); size_t freqpoints = this->simulationparams->getFreqpoints(); - this->ui.lineEdit_freqdelta->setText(QString::number(bandwidthcal / (freqpoints - 1) * 1e3)); // GHz --> MHz + this->ui->lineEdit_freqdelta->setText(QString::number(bandwidthcal / (freqpoints - 1) * 1e3)); // GHz --> MHz } void QtFreqParamsSetting::bandingsetFEKOSimulationDataparams() { - QObject::connect(this->simulationparams.get(), SIGNAL(FEKOSimulationDataparamsChanged()), this, SLOT(FEKOSimulationDataparamsChanged_slots())); + QObject::connect(this->simulationparams, SIGNAL(FEKOSimulationDataparamsChanged()), this, SLOT(FEKOSimulationDataparamsChanged_slots())); } diff --git a/src/WBCLFZSystemModule/QtFreqParamsSetting.h b/src/PluginWBFZExchangePlugin/QtFreqParamsSetting.h similarity index 75% rename from src/WBCLFZSystemModule/QtFreqParamsSetting.h rename to src/PluginWBFZExchangePlugin/QtFreqParamsSetting.h index 9922831..cbb7519 100644 --- a/src/WBCLFZSystemModule/QtFreqParamsSetting.h +++ b/src/PluginWBFZExchangePlugin/QtFreqParamsSetting.h @@ -2,14 +2,16 @@ #include "AllHead.h" #include -#include "ui_QtFreqParamsSetting.h" -class QtFreqParamsSetting : public QWidget, public FEKOBase::FEKOSimulationDataparamsHandler +namespace Ui{ + class QtFreqParamsSettingClass; +} +class QtFreqParamsSetting : public QWidget, public FEKOBase::FEKOSimulationDataparamsHandler { Q_OBJECT public: - FEKOBase::freqParams freqParams; // ���Dz��� + FEKOBase::freqParams freqParams; public: QtFreqParamsSetting(QWidget*parent = nullptr); @@ -36,7 +38,7 @@ public: void bandingsetFEKOSimulationDataparams() override; private: - Ui::QtFreqParamsSettingClass ui; + Ui::QtFreqParamsSettingClass* ui; }; diff --git a/src/WBCLFZSystemModule/QtFreqParamsSetting.ui b/src/PluginWBFZExchangePlugin/QtFreqParamsSetting.ui similarity index 100% rename from src/WBCLFZSystemModule/QtFreqParamsSetting.ui rename to src/PluginWBFZExchangePlugin/QtFreqParamsSetting.ui diff --git a/src/PluginWBFZExchangePlugin/QtSARAntModelSetting.cpp b/src/PluginWBFZExchangePlugin/QtSARAntModelSetting.cpp new file mode 100644 index 0000000..9f8f764 --- /dev/null +++ b/src/PluginWBFZExchangePlugin/QtSARAntModelSetting.cpp @@ -0,0 +1,557 @@ +#include "QtSARAntModelSetting.h" +#include "AllHead.h" +#include +#include +#include +#include +#include "OCCTBase.h" +#include "ui_QtSARAntModelSetting.h" +#include "MainWindow/MainWindow.h" + +antModelClass::antModelClass(QString filpath) +{ + QMessageBox::information(nullptr, QString::fromUtf8(u8"模型坐标系提示"), + QString::fromUtf8(u8"模型的Y轴为飞行方向,Z轴为雷达指向")); + if(QFile::exists(filpath)) { + ReadTopoDs_Shape(filpath, this->antModel); + } else { + this->createDefaultAntModel(); + } + this->curset = new Geometry::GeometrySet(Geometry::STEP); +} + +antModelClass::antModelClass() +{ + this->curset = new Geometry::GeometrySet(Geometry::STEP); + QMessageBox::information(nullptr, QString::fromUtf8(u8"模型坐标系提示"), + QString::fromUtf8(u8"模型的Y轴为飞行方向,Z轴为雷达指向")); + this->createDefaultAntModel(); +} + +antModelClass::~antModelClass() +{ + this->antModelShow.Nullify(); + this->antModel.Nullify(); +} + +void antModelClass::initAxis() +{ + gp_Pnt rotationCenter(0, 0, 0); + gp_Ax1 rotationAxis_X(rotationCenter, gp_Dir(1.0, 0.0, 0.0)); + gp_Ax1 rotationAxis_Y(rotationCenter, gp_Dir(0.0, 1.0, 0.0)); + gp_Ax1 rotationAxis_Z(rotationCenter, gp_Dir(0.0, 0.0, 1.0)); +} + +// +// 根据侧视角摆动时,应该是在卫星飞行与雷达照射的平面上进行摆动 +// +void antModelClass::applyAntModel(double Sx, double Sy, double Sz, double Vx, double Vy, double Vz, + double incidenceAngle, double AzAngle, bool isRIGHT) +{ + FEKOBase::SatelliteState satepos{ + FEKOBase::SatellitePosition{ Sx, Sy, Sz }, + FEKOBase::SatelliteVelocity{ Vx, Vy, Vz }, + }; + + FEKOBase::FEKOantPitionDirect antposition_Direct; + TopoDS_Shape inDs = this->antModel; + TopoDS_Shape outDs = FEKOBase::SatellitePos2FEKOAntPos(satepos, incidenceAngle, AzAngle, + isRIGHT, &antposition_Direct, inDs); + Handle(AIS_Shape) aisShape = new AIS_Shape(outDs); + this->antModelShow = aisShape; + this->antposition_Direct = antposition_Direct; + + TopoDS_Shape* shape = new TopoDS_Shape; + *shape = outDs; + this->curset->setName("Sata_Ant_Position"); + this->curset->setShape(shape); + this->curantModel = outDs; + return; +} + +void antModelClass::createDefaultAntModel() +{ + // 创建三个方向的箭头 + // TopoDS_Shape arrow1 = CreateArrow(gp_Dir(1, 0, 0), 0.3, 0.1); // X方向 + TopoDS_Shape arrow2 = CreateArrow(gp_Dir(0, 1, 0), 1, 0.1); // Y方向 + TopoDS_Shape arrow3 = CreateArrow(gp_Dir(0, 0, 1), 1.5, 0.1); // Z方向 + + // 创建雷达模型 + + gp_Ax2 modelCoor = gp_Ax2(gp_Pnt(0, 0, 0), gp_Dir(0, 0, 1), gp_Dir(1, 0, 0)); + + // TopoDS_Shape ant_pyramid = BRepPrimAPI_MakeWedge(modelCoor, 0.1, + // 0.1, 1.0,-1.0,-1.0,1.0,1.0).Shape(); + + // 创建一个包含所有箭头的复合体 + TopoDS_Compound compound; + BRep_Builder builder; + + builder.MakeCompound(compound); + // builder.Add(compound, arrow1); + builder.Add(compound, arrow2); + builder.Add(compound, arrow3); + // builder.Add(compound, ant_pyramid); + this->antModel = compound; // 雷达三维模型 +} + +FEKOBase::FEKOantPitionDirect antModelClass::get_antposition_Direct() +{ + return this->antposition_Direct; +} + +Handle(AIS_InteractiveObject) antModelClass::get_antModelShow() +{ + return this->antModelShow; +} +Geometry::GeometrySet* antModelClass::get_antModelset() +{ + return this->curset; +} + +antModelClass antModelClassFactory() +{ + QString filepath = getOpenFilePath( + nullptr, QString::fromUtf8(u8"导入雷达模型"), + QString::fromUtf8(u8"STL Files (*.stl);;STL Files (*.stla);;step Files (*.stp);;step Files " + u8"(*.step);;IGES Files (*.iges);;IGES Files (*.igs)")); + antModelClass result(filepath); + return result; +} + +QtSARAntModelSettingClass::QtSARAntModelSettingClass(QWidget* parent) +{ + _geoData = Geometry::GeometryData::getInstance(); + DebugInfo(" FEKOImageSettingFun has init _geoData init \n"); + ui = new Ui::QtSARAntModelSettingClass; + DebugInfo(" FEKOImageSettingFun has init QtSARAntModelSettingClass init \n"); + ui->setupUi(this); + DebugInfo(" FEKOImageSettingFun has init ui init \n"); + this->simulationparams = new FEKOBase::FEKOSimulationDataparams; // std::make_shared(); + // // 参数初始化 + this->ui->lineEdit_TaskName->setText(this->simulationparams->taskName); + this->ui->lineEdit_farsourcePath->setText(this->simulationparams->AntennaRadiationFileName); + DebugInfo(" FEKOImageSettingFun has init lineEdit_farsourcePath init \n"); + this->Widgetfreqsetting = new QtFreqParamsSetting(); + this->WidgetImageSetting = new QtWidgetsClass_ImageSetting(); + DebugInfo(" FEKOImageSettingFun has init WidgetImageSetting init \n"); + // 添加成像模式 + this->WidgetISARMode = new QtWidgetsClass_ISAR(); + this->WidgetCirCleSARMode = new QtWidgetsClass_CircleSAR(); + this->WidgetScanMode = new QtWidgetsClass_Scan(); + this->WidgetstriMode = new QtWidgetsClass_Strip(); + DebugInfo(" FEKOImageSettingFun has init WidgetstriMode init \n"); + + DebugInfo(" FEKOImageSettingFun has init connect init \n"); + QObject::connect(this->WidgetISARMode, SIGNAL(OKClick()), this, SLOT(OKClickISAR())); + QObject::connect(this->WidgetstriMode, SIGNAL(OKClick()), this, SLOT(OKClickStrip())); + QObject::connect(this->WidgetCirCleSARMode, SIGNAL(OKClick()), this, SLOT(OKClickCircleSAR())); + QObject::connect(this->WidgetScanMode, SIGNAL(OKClick()), this, SLOT(OKClickScane())); + QObject::connect(this->Widgetfreqsetting, SIGNAL(OKClick()), this, SLOT(OKClickFreqSetting())); + QObject::connect(this->WidgetImageSetting, SIGNAL(OKClick()), this, + SLOT(OKClickImageSetting())); + // 添加频率 + // this->Widgetfreqsetting->freqParams = this->freqSetting; + this->ui->tabWidget->removeTab(0); + this->ui->tabWidget->insertTab(0, this->Widgetfreqsetting, u8"频率设置"); + this->ui->tabWidget->removeTab(2); + this->ui->tabWidget->insertTab(2, this->WidgetImageSetting, u8"成像设置"); + + this->ui->comboBox_ImageMode->addItem( + FEKOBase::FEKOImageModeenumToString(FEKOBase::FEKOImageMode::Strip)); + this->ui->comboBox_ImageMode->addItem( + FEKOBase::FEKOImageModeenumToString(FEKOBase::FEKOImageMode::Scane)); + this->ui->comboBox_ImageMode->addItem( + FEKOBase::FEKOImageModeenumToString(FEKOBase::FEKOImageMode::ISAR)); + this->ui->comboBox_ImageMode->addItem( + FEKOBase::FEKOImageModeenumToString(FEKOBase::FEKOImageMode::CircleSAR)); + + this->ui->comboBox_LookSide->addItem(u8"左视"); + this->ui->comboBox_LookSide->addItem(u8"右视"); + + DebugInfo(" FEKOImageSettingFun has init comboBox_LookSide init \n"); + // 绘制模型 + this->antModel = nullptr; + // this->myContext = nullptr; + this->ui->tabantModeMove->setEnabled(false); +} + +QtSARAntModelSettingClass::~QtSARAntModelSettingClass() {} + +void QtSARAntModelSettingClass::removeModeSettingWidget() +{ + this->ui->tabWidget->removeTab(1); + this->FEKOAntPoselist.clear(); +} + +void QtSARAntModelSettingClass::switchStripImageParamsWeight() +{ + this->removeModeSettingWidget(); + this->ui->tabWidget->insertTab(1, this->WidgetstriMode, u8"条带成像设置"); + this->ui->comboBox_LookSide->setEnabled(true); +} + +void QtSARAntModelSettingClass::switchScanImageParamsWeight() +{ + this->removeModeSettingWidget(); + this->ui->tabWidget->insertTab(1, this->WidgetScanMode, u8"扫描成像设置"); + this->ui->comboBox_LookSide->setEnabled(true); +} + +void QtSARAntModelSettingClass::switchISARImageParamsWeight() +{ + this->removeModeSettingWidget(); + this->ui->tabWidget->insertTab(1, this->WidgetISARMode, u8"ISAR成像设置"); + this->ui->comboBox_LookSide->setEnabled(false); +} + +void QtSARAntModelSettingClass::switchCircleSARImageParamsWeight() +{ + this->removeModeSettingWidget(); + this->ui->tabWidget->insertTab(1, this->WidgetCirCleSARMode, u8"圆迹SAR成像设置"); + this->ui->comboBox_LookSide->setEnabled(false); +} + +void QtSARAntModelSettingClass::ReferenceWindows() +{ + this->ui->lineEdit_TaskName->setText(this->simulationparams->getTaskName()); + // this->ui->comboBox_ImageMode->setCurrentText(FEKOBase::FEKOImageModeenumToString(this->simulationparams->imagemode)); + + switch(this->simulationparams->imagemode) { + case FEKOBase::FEKOImageMode::Strip: + this->ui->comboBox_ImageMode->setCurrentIndex(0); + break; + case FEKOBase::FEKOImageMode::Scane: + this->ui->comboBox_ImageMode->setCurrentIndex(1); + break; + case FEKOBase::FEKOImageMode::ISAR: + this->ui->comboBox_ImageMode->setCurrentIndex(2); + break; + case FEKOBase::FEKOImageMode::CircleSAR: + this->ui->comboBox_ImageMode->setCurrentIndex(3); + break; + } + + if(this->simulationparams->isRight) { + this->ui->comboBox_LookSide->setCurrentIndex(1); + } else { + this->ui->comboBox_LookSide->setCurrentIndex(0); + } + + this->ui->lineEdit_refRange->setText(QString::number(this->simulationparams->refRange)); + this->ui->lineEdit_incangle->setText(QString::number(this->simulationparams->incangle)); + + emit this->simulationparams->FEKOSimulationDataparamsChanged(); // 将参数修改发送到不同界面中 + + this->generator_FEKOSatelliteParams(); +} + +void QtSARAntModelSettingClass::refreshFEKOSimulationParams() +{ + this->simulationparams->taskName = this->ui->lineEdit_TaskName->text(); + this->simulationparams->AntennaRadiationFileName = this->ui->lineEdit_farsourcePath->text(); + this->simulationparams->isRight = this->ui->comboBox_LookSide->currentIndex() == 1; + this->simulationparams->imagemode = + FEKOBase::FEKOImageModeString2Enum(this->ui->comboBox_ImageMode->currentText().trimmed()); + this->simulationparams->refRange = this->ui->lineEdit_refRange->text().toDouble(); + this->simulationparams->incangle = this->ui->lineEdit_incangle->text().toDouble(); +} + +void QtSARAntModelSettingClass::setOCCTDocument(GUI::MainWindow* m) +{ + this->m = m; + + QString antFilePath = getOpenFilePath( + nullptr, QString::fromUtf8(u8"导入雷达模型"), + QString::fromUtf8(u8"STL Files (*.stl);;STL Files (*.stla);;step Files (*.stp);;step Files " + u8"(*.step);;IGES Files (*.iges);;IGES Files (*.igs)")); + + if(isExists(antFilePath)) { + this->antModel = new antModelClass(antFilePath); + } else { + this->antModel = new antModelClass(); + } + this->ui->tabantModeMove->setEnabled(true); +} + +void QtSARAntModelSettingClass::OKClickISAR() +{ + this->refreshFEKOSimulationParams(); + this->generator_FEKOSatelliteParams(); + // 绘制展示模型 + if(this->m == nullptr) { + this->ui->horizontalSlider_PRF->setValue(0); + // this->on_horizontalSlider_PRF_valueChanged(0); + } + emit this->simulationparams->FEKOSimulationDataparamsChanged(); +} +void QtSARAntModelSettingClass::OKClickStrip() +{ + qDebug() << u8"计算 Strip..."; + this->refreshFEKOSimulationParams(); + this->generator_FEKOSatelliteParams(); + if(this->m == nullptr) { + this->ui->horizontalSlider_PRF->setValue(0); + } + emit this->simulationparams->FEKOSimulationDataparamsChanged(); +} +void QtSARAntModelSettingClass::OKClickCircleSAR() +{ + this->refreshFEKOSimulationParams(); + this->generator_FEKOSatelliteParams(); + // 绘制展示模型 + if(this->m == nullptr) { + this->ui->horizontalSlider_PRF->setValue(0); + // this->on_horizontalSlider_PRF_valueChanged(0); + } + emit this->simulationparams->FEKOSimulationDataparamsChanged(); +} +void QtSARAntModelSettingClass::OKClickScane() +{ + this->refreshFEKOSimulationParams(); + this->generator_FEKOSatelliteParams(); + if(this->m == nullptr) { + this->ui->horizontalSlider_PRF->setValue(0); + } + emit this->simulationparams->FEKOSimulationDataparamsChanged(); +} + +void QtSARAntModelSettingClass::OKClickFreqSetting() +{ + this->refreshFEKOSimulationParams(); + emit this->simulationparams->FEKOSimulationDataparamsChanged(); +} + +void QtSARAntModelSettingClass::OKClickImageSetting() +{ + this->refreshFEKOSimulationParams(); + emit this->simulationparams->FEKOSimulationDataparamsChanged(); +} + +void QtSARAntModelSettingClass::on_comboBox_ImageMode_currentIndexChanged(int index) +{ + QString text = this->ui->comboBox_ImageMode->currentText(); + this->simulationparams->imagemode = FEKOBase::FEKOImageModeString2Enum(text.trimmed()); + if(this->simulationparams->imagemode == FEKOBase::FEKOImageMode::UNKNOW) { + QMessageBox::information(nullptr, QString::fromUtf8(u8"错误"), + QString::fromUtf8(u8"未知的成像模式")); + return; + } else if(this->simulationparams->imagemode == FEKOBase::FEKOImageMode::Strip) { + this->switchStripImageParamsWeight(); + } else if(this->simulationparams->imagemode == FEKOBase::FEKOImageMode::Scane) { + this->switchScanImageParamsWeight(); + } else if(this->simulationparams->imagemode == FEKOBase::FEKOImageMode::ISAR) { + this->switchISARImageParamsWeight(); + } else if(this->simulationparams->imagemode == FEKOBase::FEKOImageMode::CircleSAR) { + this->switchCircleSARImageParamsWeight(); + } else { + QMessageBox::information(nullptr, QString::fromUtf8(u8"错误"), + QString::fromUtf8(u8"未知的成像模式")); + } +} + +void QtSARAntModelSettingClass::on_pushButton_ffe_clicked() +{ + QtWidgetsClass_FarSourceSetting* ffeselectwindows = new QtWidgetsClass_FarSourceSetting(this); + QObject::connect(ffeselectwindows, SIGNAL(setResultSelected(size_t, size_t, QString)), this, + SLOT(SelectFFESourcePath(size_t, size_t, QString))); + ffeselectwindows->show(); +} + +void QtSARAntModelSettingClass::on_comboBox_LookSide_currentIndexChanged(int index) +{ + QString lookside = this->ui->comboBox_LookSide->currentText(); + if(lookside == u8"左视") { + this->simulationparams->isRight = false; + } else { + this->simulationparams->isRight = true; + } +} + +void QtSARAntModelSettingClass::on_horizontalSlider_PRF_valueChanged(int value) +{ + if(this->FEKOAntPoselist.size() == 0) { + return; + } + if(m==nullptr){ + return; + } + this->ui->horizontalSlider_PRF->setMinimum(0); + this->ui->horizontalSlider_PRF->setMaximum(this->FEKOAntPoselist.size() - 1); + + // 移除旧 + // Handle(AIS_InteractiveObject) moveShapeold = this->antModel->get_antModelShow(); + // this->myContext->Remove(moveShapeold,Standard_False); + // TopoDS_Shape *shape = new TopoDS_Shape; + int removeid = _geoData->getIndexByGeoometrySet(this->antModel->get_antModelset()); + if(removeid == -1) { + return; + } + _geoData->removeGeometrySet(removeid); + // 增加新 + FEKOBase::FEKOSatelliteParams temp = this->FEKOAntPoselist[value]; + this->antModel->applyAntModel( + temp.pose.pos.Px, temp.pose.pos.Py, temp.pose.pos.Pz, temp.pose.vel.Vx, temp.pose.vel.Vy, + temp.pose.vel.Vz, temp.incidenceAngle, temp.AzAngle, this->simulationparams->isRight); + // Handle(AIS_InteractiveObject) moveShape = this->antModel->get_antModelShow(); + // this->myContext->Display(moveShape, Standard_True); + + _geoData->appendGeometrySet(this->antModel->get_antModelset()); + + + emit m->updateGeometryTreeSig(); + emit m->getSubWindowManager()->getPreWindow()->showGeoSet(this->antModel->get_antModelset(), + true); + + if(this->simulationparams->imagemode == FEKOBase::FEKOImageMode::ISAR + || this->simulationparams->imagemode == FEKOBase::FEKOImageMode::CircleSAR) { + this->ui->label_AZ_Angle->setText(u8"方位角:"); + } else { + this->ui->label_AZ_Angle->setText(u8"侧摆角:"); + } + this->ui->lineEdit_PRF_Show->setText(QString::number(temp.PRFidx)); + this->ui->lineEdit_X_Show->setText(QString::number(temp.pose.pos.Px)); + this->ui->lineEdit_Y_Show->setText(QString::number(temp.pose.pos.Py)); + this->ui->lineEdit_Z_Show->setText(QString::number(temp.pose.pos.Pz)); + this->ui->lineEdit_Az_Show->setText(QString::number(temp.AzAngle)); + this->ui->lineEdit_incangle_Show->setText(QString::number(temp.incidenceAngle)); + + this->ui->lineEdit_X_Show->setReadOnly(true); + this->ui->lineEdit_Y_Show->setReadOnly(true); + this->ui->lineEdit_Z_Show->setReadOnly(true); + this->ui->lineEdit_Az_Show->setReadOnly(true); + this->ui->lineEdit_incangle_Show->setReadOnly(true); +} + +void QtSARAntModelSettingClass::on_pushButton_OK_clicked() +{ + this->refreshFEKOSimulationParams(); // 最后更新下参数 + this->saveFEKOImageSettingXML(); + + QString luatext = this->createLuaSciptString(0, this->FEKOAntPoselist.size()); + + // 写入文件 + QString filePath = + this->workSpace + QDir::separator() + this->simulationparams->taskName + + QString(u8"_%1.lua") + .arg(FEKOBase::FEKOImageModeenumToString(this->simulationparams->imagemode)); + // 创建文件对象 + QFile file(filePath); + + // 打开文件以供写入,如果文件不存在将创建新文件 + if(file.open(QIODevice::WriteOnly | QIODevice::Text)) { + // 创建文本流,并设置编码为UTF-8 + QTextStream stream(&file); + stream.setCodec("UTF-8"); + stream << luatext; + // 关闭文件 + file.close(); + // 提示文件写入成功 + QMessageBox::information(nullptr, QString::fromUtf8(u8"提示"), + QString::fromUtf8(u8"文件写入成功!\n%1").arg(filePath)); + qDebug() << "File written successfully."; + } else { + qDebug() << "Could not open file for writing."; + QMessageBox::information(nullptr, QString::fromUtf8(u8"提示"), + QString::fromUtf8(u8"文件写入失败")); + } + // 询问用户是否关闭窗口 + QMessageBox::StandardButton reply; + reply = QMessageBox::question(this, QString::fromUtf8(u8"提示"), + QString::fromUtf8(u8"是否关闭窗口?"), + QMessageBox::Yes | QMessageBox::No); + if(reply == QMessageBox::Yes) { + this->close(); + } else { + return; + } +} + +void QtSARAntModelSettingClass::on_pushButton_Cancel_clicked() +{ + // 询问用户是否关闭窗口 + QMessageBox::StandardButton reply; + reply = QMessageBox::question(this, QString::fromUtf8(u8"提示"), + QString::fromUtf8(u8"是否关闭窗口?"), + QMessageBox::Yes | QMessageBox::No); + if(reply == QMessageBox::Yes) { + this->close(); + } else { + return; + } +} + +void QtSARAntModelSettingClass::on_lineEdit_refRange_editingFinished() +{ + // 传播计算 + this->simulationparams->setRefRange(this->ui->lineEdit_refRange->text().toDouble()); + QMessageBox::StandardButton reply = QMessageBox::question(this, u8"提示", u8"是否重新计算姿态", + QMessageBox::Yes | QMessageBox::No); + if(reply == QMessageBox::Yes) { + this->generator_FEKOSatelliteParams(); + } else { + return; + } +} + +void QtSARAntModelSettingClass::SelectFFESourcePath(size_t thetaPoints, size_t phiPoints, + QString ffePath) +{ + if(!isExists(ffePath)) { + // 警告文件不存在 + QMessageBox::information(nullptr, QString::fromUtf8(u8"错误"), + QString::fromUtf8(u8"文件不存在")); + return; + } + QString filename = getFileNameFromPath(ffePath); + { + QFile sourceFile(ffePath); + + QString fullpath = QDir::cleanPath(this->workSpace + QDir::separator() + filename); + QFile destinationFile(fullpath); + + // 打开源文件以供读取 + if(sourceFile.open(QIODevice::ReadOnly)) { + // 打开目标文件以供写入 + if(destinationFile.open(QIODevice::WriteOnly)) { + // 将源文件内容复制到目标文件 + QByteArray data = sourceFile.readAll(); + destinationFile.write(data); + // 关闭文件 + destinationFile.close(); + } else { + qDebug() << "Could not open destination file for writing."; + } + + // 关闭源文件 + sourceFile.close(); + } else { + qDebug() << "Could not open source file for reading."; + } + } + + this->ui->lineEdit_farsourcePath->setText(filename); + this->simulationparams->setAntennaRadiationFileName(filename); + this->simulationparams->setFarsourceThetaPoints(thetaPoints); + this->simulationparams->setFarsourcePhiPoints(phiPoints); +} + +void QtSARAntModelSettingClass::FEKOSimulationDataparamsChanged_slots() +{ + qDebug() << u8"QtSARAntModelSettingClass::bandingsetFEKOSimulationDataparams()"; +} + +void QtSARAntModelSettingClass::bandingsetFEKOSimulationDataparams() +{ + QObject::connect(this->simulationparams, SIGNAL(FEKOSimulationDataparamsChanged()), this, + SLOT(FEKOSimulationDataparamsChanged_slots())); + + this->Widgetfreqsetting->setFEKOSimulationDataparams(this->simulationparams); + this->WidgetImageSetting->setFEKOSimulationDataparams(this->simulationparams); + // 添加成像模式 + this->WidgetISARMode->setFEKOSimulationDataparams(this->simulationparams); + this->WidgetCirCleSARMode->setFEKOSimulationDataparams(this->simulationparams); + this->WidgetScanMode->setFEKOSimulationDataparams(this->simulationparams); + this->WidgetstriMode->setFEKOSimulationDataparams(this->simulationparams); + emit this->simulationparams->FEKOSimulationDataparamsChanged(); +} diff --git a/src/WBCLFZSystemModule/QtSARAntModelSetting.h b/src/PluginWBFZExchangePlugin/QtSARAntModelSetting.h similarity index 84% rename from src/WBCLFZSystemModule/QtSARAntModelSetting.h rename to src/PluginWBFZExchangePlugin/QtSARAntModelSetting.h index f9f3158..9e76e88 100644 --- a/src/WBCLFZSystemModule/QtSARAntModelSetting.h +++ b/src/PluginWBFZExchangePlugin/QtSARAntModelSetting.h @@ -2,7 +2,7 @@ #include "AllHead.h" #include "OCCTBaseOperaorClass.h" #include -#include "ui_QtSARAntModelSetting.h" + #include #include "QtWidgetsClass_Strip.h" #include "QtWidgetsClass_Scan.h" @@ -10,8 +10,12 @@ #include "QtWidgetsClass_CircleSAR.h" #include "QtWidgetsClass_FarSourceSetting.h" #include "QtWidgetsClass_ImageSetting.h" +#include "MainWindow/MainWindow.h" +namespace Ui{ + class QtSARAntModelSettingClass; +} /////////////////////////////////////////////////// // 卫星雷达模型 // 默认雷达中心 @@ -44,10 +48,14 @@ public: FEKOBase::FEKOantPitionDirect get_antposition_Direct(); // 3. 获取雷达天线计算结果 Handle(AIS_InteractiveObject) get_antModelShow(); // 4. 渲染模型 - + Geometry::GeometrySet * get_antModelset(); private: Handle(AIS_InteractiveObject) antModelShow; // 用于展示的雷达模型, - TopoDS_Shape antModel; // 原始雷达模型 + TopoDS_Shape antModel; // 原始雷达模型 + TopoDS_Shape curantModel; // 原始雷达模型 + Geometry::GeometrySet *curset; + + FEKOBase::FEKOantPitionDirect antposition_Direct; // 雷达天线的坐标与指向 }; @@ -58,7 +66,7 @@ private: /////////////////////////////////////////////////// // 雷达指向模型设置类 ////////////////////////////////////////////////// -class QtSARAntModelSettingClass : public QDialog, public FEKOBase::FEKOSimulationSARClass +class QtSARAntModelSettingClass : public QDialog, public FEKOBase::FEKOSimulationSARClass { Q_OBJECT public: @@ -66,8 +74,10 @@ public: ~QtSARAntModelSettingClass(); private: - Ui::QtSARAntModelSettingClass ui; + Ui::QtSARAntModelSettingClass* ui; QtFreqParamsSetting* Widgetfreqsetting; // 频率设置窗口 + GUI::MainWindow* m; + Geometry::GeometryData * _geoData; QtWidgetsClass_Strip* WidgetstriMode;// 成像参数设置 QtWidgetsClass_Scan* WidgetScanMode; @@ -77,11 +87,11 @@ private: QtWidgetsClass_ImageSetting* WidgetImageSetting; antModelClass* antModel; // 模型 //DocumentCommon* occtdocument; // 文档 - Handle(AIS_InteractiveContext) myContext; // 窗口交互 + //Handle(AIS_InteractiveContext) myContext; // 窗口交互 public: void removeModeSettingWidget(); // 移除模式设置窗口 - void setOCCTDocument(Handle(AIS_InteractiveContext) myContext); + void setOCCTDocument(GUI::MainWindow* m); // 切换 条带图像、扫描图像、ISAR、圆迹SAR void switchStripImageParamsWeight(); // 切换条带图像参数权重 void switchScanImageParamsWeight(); // 切换扫描图像参数权重 @@ -109,7 +119,7 @@ public slots: void on_horizontalSlider_PRF_valueChanged(int value); void on_pushButton_OK_clicked(); void on_pushButton_Cancel_clicked(); - void on_lineEdit_Range_editingFinished(); + void on_lineEdit_refRange_editingFinished(); void SelectFFESourcePath(size_t thetaPoints, size_t phiPoints, QString ffePath); public slots: diff --git a/src/WBCLFZSystemModule/QtSARAntModelSetting.ui b/src/PluginWBFZExchangePlugin/QtSARAntModelSetting.ui similarity index 100% rename from src/WBCLFZSystemModule/QtSARAntModelSetting.ui rename to src/PluginWBFZExchangePlugin/QtSARAntModelSetting.ui diff --git a/src/WBCLFZSystemModule/QtStripImageSettingClass.cpp b/src/PluginWBFZExchangePlugin/QtStripImageSettingClass.cpp similarity index 75% rename from src/WBCLFZSystemModule/QtStripImageSettingClass.cpp rename to src/PluginWBFZExchangePlugin/QtStripImageSettingClass.cpp index 8e7d8d9..2fb84b8 100644 --- a/src/WBCLFZSystemModule/QtStripImageSettingClass.cpp +++ b/src/PluginWBFZExchangePlugin/QtStripImageSettingClass.cpp @@ -1,9 +1,10 @@ #include "QtStripImageSettingClass.h" +#include "ui_QtStripImageSettingClass.h" QtStripImageSettingClass::QtStripImageSettingClass(QWidget *parent) : QWidget(parent) { - ui.setupUi(this); + ui->setupUi(this); } QtStripImageSettingClass::~QtStripImageSettingClass() diff --git a/src/PluginWBFZExchangePlugin/QtStripImageSettingClass.h b/src/PluginWBFZExchangePlugin/QtStripImageSettingClass.h new file mode 100644 index 0000000..ce5a206 --- /dev/null +++ b/src/PluginWBFZExchangePlugin/QtStripImageSettingClass.h @@ -0,0 +1,21 @@ +#pragma once + + +#include "WBFZExchangePluginAPI.h" +#include "AllHead.h" +#include + +namespace Ui{ + class QtStripImageSettingClassClass; +} +class QtStripImageSettingClass : public QWidget +{ + Q_OBJECT + +public: + QtStripImageSettingClass(QWidget *parent = nullptr); + ~QtStripImageSettingClass(); + +private: + Ui::QtStripImageSettingClassClass* ui; +}; diff --git a/src/WBCLFZSystemModule/QtStripImageSettingClass.ui b/src/PluginWBFZExchangePlugin/QtStripImageSettingClass.ui similarity index 100% rename from src/WBCLFZSystemModule/QtStripImageSettingClass.ui rename to src/PluginWBFZExchangePlugin/QtStripImageSettingClass.ui diff --git a/src/WBCLFZSystemModule/QtWidgetsClass_CircleSAR.cpp b/src/PluginWBFZExchangePlugin/QtWidgetsClass_CircleSAR.cpp similarity index 56% rename from src/WBCLFZSystemModule/QtWidgetsClass_CircleSAR.cpp rename to src/PluginWBFZExchangePlugin/QtWidgetsClass_CircleSAR.cpp index 7214d5d..963ae87 100644 --- a/src/WBCLFZSystemModule/QtWidgetsClass_CircleSAR.cpp +++ b/src/PluginWBFZExchangePlugin/QtWidgetsClass_CircleSAR.cpp @@ -1,11 +1,12 @@ #include "QtWidgetsClass_CircleSAR.h" - +#include "ui_QtWidgetsClass_CircleSAR.h" QtWidgetsClass_CircleSAR::QtWidgetsClass_CircleSAR(QWidget *parent) : QWidget(parent) { - ui.setupUi(this); + ui=new Ui::QtWidgetsClass_CircleSARClass; + ui->setupUi(this); } QtWidgetsClass_CircleSAR::~QtWidgetsClass_CircleSAR() @@ -14,10 +15,10 @@ QtWidgetsClass_CircleSAR::~QtWidgetsClass_CircleSAR() void QtWidgetsClass_CircleSAR::FEKOSimulationDataparamsChanged_slots() { if (this->simulationparams->imagemode == FEKOBase::FEKOImageMode::CircleSAR) { - this->ui.lineEdit_deltaAzAngle->setText(QString::number(this->simulationparams->delta_angle)); + this->ui->lineEdit_deltaAzAngle->setText(QString::number(this->simulationparams->delta_angle)); } else if (this->simulationparams->imagemode == FEKOBase::FEKOImageMode::ISAR) { - this->ui.lineEdit_deltaAzAngle->setText(QString::number(this->simulationparams->delta_angle)); + this->ui->lineEdit_deltaAzAngle->setText(QString::number(this->simulationparams->delta_angle)); } else { return; @@ -26,15 +27,14 @@ void QtWidgetsClass_CircleSAR::FEKOSimulationDataparamsChanged_slots() void QtWidgetsClass_CircleSAR::bandingsetFEKOSimulationDataparams() { - QObject::connect(this->simulationparams.get(), SIGNAL(FEKOSimulationDataparamsChanged()), this, SLOT(FEKOSimulationDataparamsChanged_slots())); - + QObject::connect(this->simulationparams, SIGNAL(FEKOSimulationDataparamsChanged()), this, SLOT(FEKOSimulationDataparamsChanged_slots())); } void QtWidgetsClass_CircleSAR::on_pushButton_OK_clicked() { - this->simulationparams->setDelta_angle(ui.lineEdit_deltaAzAngle->text().toDouble()); + this->simulationparams->setDelta_angle(ui->lineEdit_deltaAzAngle->text().toDouble()); this->simulationparams->setImagemode(FEKOBase::FEKOImageMode::CircleSAR); emit this->OKClick(); diff --git a/src/WBCLFZSystemModule/QtWidgetsClass_CircleSAR.h b/src/PluginWBFZExchangePlugin/QtWidgetsClass_CircleSAR.h similarity index 64% rename from src/WBCLFZSystemModule/QtWidgetsClass_CircleSAR.h rename to src/PluginWBFZExchangePlugin/QtWidgetsClass_CircleSAR.h index cfdbf70..b024371 100644 --- a/src/WBCLFZSystemModule/QtWidgetsClass_CircleSAR.h +++ b/src/PluginWBFZExchangePlugin/QtWidgetsClass_CircleSAR.h @@ -1,11 +1,14 @@ #pragma once #ifndef QTWIDGETSCLASS_CIRCLESAR_H #define QTWIDGETSCLASS_CIRCLESAR_H +#include "WBFZExchangePluginAPI.h" #include "AllHead.h" #include -#include "ui_QtWidgetsClass_CircleSAR.h" -class QtWidgetsClass_CircleSAR : public QWidget, public FEKOBase::FEKOSimulationDataparamsHandler +namespace Ui{ + class QtWidgetsClass_CircleSARClass; +} +class QtWidgetsClass_CircleSAR : public QWidget, public FEKOBase::FEKOSimulationDataparamsHandler { Q_OBJECT @@ -23,7 +26,7 @@ signals: public slots: void on_pushButton_OK_clicked(); private: - Ui::QtWidgetsClass_CircleSARClass ui; + Ui::QtWidgetsClass_CircleSARClass* ui; }; diff --git a/src/WBCLFZSystemModule/QtWidgetsClass_CircleSAR.ui b/src/PluginWBFZExchangePlugin/QtWidgetsClass_CircleSAR.ui similarity index 100% rename from src/WBCLFZSystemModule/QtWidgetsClass_CircleSAR.ui rename to src/PluginWBFZExchangePlugin/QtWidgetsClass_CircleSAR.ui diff --git a/src/WBCLFZSystemModule/QtWidgetsClass_FarSourceSetting.cpp b/src/PluginWBFZExchangePlugin/QtWidgetsClass_FarSourceSetting.cpp similarity index 68% rename from src/WBCLFZSystemModule/QtWidgetsClass_FarSourceSetting.cpp rename to src/PluginWBFZExchangePlugin/QtWidgetsClass_FarSourceSetting.cpp index 072c018..9e39afb 100644 --- a/src/WBCLFZSystemModule/QtWidgetsClass_FarSourceSetting.cpp +++ b/src/PluginWBFZExchangePlugin/QtWidgetsClass_FarSourceSetting.cpp @@ -1,9 +1,11 @@ #include "QtWidgetsClass_FarSourceSetting.h" +#include "ui_QtWidgetsClass_FarSourceSetting.h" QtWidgetsClass_FarSourceSetting::QtWidgetsClass_FarSourceSetting(QWidget *parent) : QDialog(parent) { - ui.setupUi(this); + ui=new Ui::QtWidgetsClass_FarSourceSettingClass; + ui->setupUi(this); } QtWidgetsClass_FarSourceSetting::~QtWidgetsClass_FarSourceSetting() @@ -11,17 +13,17 @@ QtWidgetsClass_FarSourceSetting::~QtWidgetsClass_FarSourceSetting() size_t QtWidgetsClass_FarSourceSetting::getThetaPoints() { - return this->ui.lineEdit_thetaPoints->text().toInt(); + return this->ui->lineEdit_thetaPoints->text().toInt(); } size_t QtWidgetsClass_FarSourceSetting::getPhiPoints() { - return this->ui.lineEdit_phiPoints->text().toInt(); + return this->ui->lineEdit_phiPoints->text().toInt(); } QString QtWidgetsClass_FarSourceSetting::getFFEPath() { - return this->ui.lineEdit_filepath->text().trimmed(); + return this->ui->lineEdit_filepath->text().trimmed(); } void QtWidgetsClass_FarSourceSetting::on_pushButton_Cancel_clicked() @@ -32,15 +34,15 @@ void QtWidgetsClass_FarSourceSetting::on_pushButton_select_clicked() { QString fileName = getOpenFilePath(this, u8"Open File", u8"FFE Files (*.ffe)"); if (!fileName.isEmpty()) { - this->ui.lineEdit_filepath->setText(fileName); + this->ui->lineEdit_filepath->setText(fileName); // 打开文件 FEKOBase::FEKOFarFieldFileClass* farfieldfile = new FEKOBase::FEKOFarFieldFileClass(); farfieldfile->parseFarFieldFile(fileName); if (farfieldfile->dataBlockList.count() == 0) { QMessageBox::warning(nullptr, u8"警告", u8"ffe文件解析失败,请检查文件格式是否正确!"); } - this->ui.lineEdit_thetaPoints->setText(QString::number( farfieldfile->dataBlockList[0].thetaSamples)); - this->ui.lineEdit_phiPoints->setText(QString::number(farfieldfile->dataBlockList[0].phiSamples)); + this->ui->lineEdit_thetaPoints->setText(QString::number( farfieldfile->dataBlockList[0].thetaSamples)); + this->ui->lineEdit_phiPoints->setText(QString::number(farfieldfile->dataBlockList[0].phiSamples)); } } void QtWidgetsClass_FarSourceSetting::on_pushButton_OK_clicked() { diff --git a/src/WBCLFZSystemModule/QtWidgetsClass_FarSourceSetting.h b/src/PluginWBFZExchangePlugin/QtWidgetsClass_FarSourceSetting.h similarity index 73% rename from src/WBCLFZSystemModule/QtWidgetsClass_FarSourceSetting.h rename to src/PluginWBFZExchangePlugin/QtWidgetsClass_FarSourceSetting.h index 3fb562a..4dffcc7 100644 --- a/src/WBCLFZSystemModule/QtWidgetsClass_FarSourceSetting.h +++ b/src/PluginWBFZExchangePlugin/QtWidgetsClass_FarSourceSetting.h @@ -1,12 +1,14 @@ #pragma once #ifndef QTWIDGETSCLASS_FARSOURCESETTING_H #define QTWIDGETSCLASS_FARSOURCESETTING_H - +#include "WBFZExchangePluginAPI.h" #include "AllHead.h" #include -#include "ui_QtWidgetsClass_FarSourceSetting.h" -class QtWidgetsClass_FarSourceSetting : public QDialog +namespace Ui{ + class QtWidgetsClass_FarSourceSettingClass; +} +class QtWidgetsClass_FarSourceSetting : public QDialog { Q_OBJECT public: @@ -27,7 +29,7 @@ signals: void setResultSelected(size_t thetaPoints, size_t phiPoints, QString ffePath); private: - Ui::QtWidgetsClass_FarSourceSettingClass ui; + Ui::QtWidgetsClass_FarSourceSettingClass* ui; }; diff --git a/src/WBCLFZSystemModule/QtWidgetsClass_FarSourceSetting.ui b/src/PluginWBFZExchangePlugin/QtWidgetsClass_FarSourceSetting.ui similarity index 100% rename from src/WBCLFZSystemModule/QtWidgetsClass_FarSourceSetting.ui rename to src/PluginWBFZExchangePlugin/QtWidgetsClass_FarSourceSetting.ui diff --git a/src/WBCLFZSystemModule/QtWidgetsClass_ISAR.cpp b/src/PluginWBFZExchangePlugin/QtWidgetsClass_ISAR.cpp similarity index 50% rename from src/WBCLFZSystemModule/QtWidgetsClass_ISAR.cpp rename to src/PluginWBFZExchangePlugin/QtWidgetsClass_ISAR.cpp index d4ebfd7..46912e2 100644 --- a/src/WBCLFZSystemModule/QtWidgetsClass_ISAR.cpp +++ b/src/PluginWBFZExchangePlugin/QtWidgetsClass_ISAR.cpp @@ -1,16 +1,16 @@ #include "QtWidgetsClass_ISAR.h" - +#include "ui_QtWidgetsClass_ISAR.h" void QtWidgetsClass_ISAR::FEKOSimulationDataparamsChanged_slots() { if (this->simulationparams->imagemode == FEKOBase::FEKOImageMode::ISAR) { - this->ui.lineEdit_deltaAngle->setText(QString::number(this->simulationparams->delta_angle)); - this->ui.lineEdit_startAzAngle->setText(QString::number(this->simulationparams->start_circle_angle)); - this->ui.lineEdit_EndAzAngle->setText(QString::number(this->simulationparams->end_circle_angle)); + this->ui->lineEdit_deltaAngle->setText(QString::number(this->simulationparams->delta_angle)); + this->ui->lineEdit_startAzAngle->setText(QString::number(this->simulationparams->start_circle_angle)); + this->ui->lineEdit_EndAzAngle->setText(QString::number(this->simulationparams->end_circle_angle)); } else if (this->simulationparams->imagemode == FEKOBase::FEKOImageMode::CircleSAR) { - this->ui.lineEdit_deltaAngle->setText(QString::number(this->simulationparams->delta_angle)); + this->ui->lineEdit_deltaAngle->setText(QString::number(this->simulationparams->delta_angle)); } else { return; @@ -20,14 +20,15 @@ void QtWidgetsClass_ISAR::FEKOSimulationDataparamsChanged_slots() void QtWidgetsClass_ISAR::bandingsetFEKOSimulationDataparams() { - QObject::connect(this->simulationparams.get(), SIGNAL(FEKOSimulationDataparamsChanged()), this, SLOT(FEKOSimulationDataparamsChanged_slots())); + QObject::connect(this->simulationparams, SIGNAL(FEKOSimulationDataparamsChanged()), this, SLOT(FEKOSimulationDataparamsChanged_slots())); } QtWidgetsClass_ISAR::QtWidgetsClass_ISAR(QWidget* parent) : QWidget(parent) { - ui.setupUi(this); + ui=new Ui::QtWidgetsClass_ISARClass; + ui->setupUi(this); } QtWidgetsClass_ISAR::~QtWidgetsClass_ISAR() @@ -38,9 +39,9 @@ void QtWidgetsClass_ISAR::on_pushButton_OK_clicked() { //根据OKClick参数,结合控件,获取参数 - double startAngle = this->ui.lineEdit_startAzAngle->text().toDouble(); - double endAngle = this->ui.lineEdit_EndAzAngle->text().toDouble(); - double deltaAngle = this->ui.lineEdit_deltaAngle->text().toDouble(); + double startAngle = this->ui->lineEdit_startAzAngle->text().toDouble(); + double endAngle = this->ui->lineEdit_EndAzAngle->text().toDouble(); + double deltaAngle = this->ui->lineEdit_deltaAngle->text().toDouble(); this->simulationparams->setStart_circle_angle(startAngle); this->simulationparams->setEnd_circle_angle(endAngle); this->simulationparams->setDelta_angle(deltaAngle); diff --git a/src/WBCLFZSystemModule/QtWidgetsClass_ISAR.h b/src/PluginWBFZExchangePlugin/QtWidgetsClass_ISAR.h similarity index 65% rename from src/WBCLFZSystemModule/QtWidgetsClass_ISAR.h rename to src/PluginWBFZExchangePlugin/QtWidgetsClass_ISAR.h index e0272c7..b55d516 100644 --- a/src/WBCLFZSystemModule/QtWidgetsClass_ISAR.h +++ b/src/PluginWBFZExchangePlugin/QtWidgetsClass_ISAR.h @@ -1,12 +1,14 @@ #pragma once #ifndef QTWIDGETSCLASS_ISAR_H #define QTWIDGETSCLASS_ISAR_H - +#include "WBFZExchangePluginAPI.h" #include "AllHead.h" #include -#include "ui_QtWidgetsClass_ISAR.h" -class QtWidgetsClass_ISAR : public QWidget, public FEKOBase::FEKOSimulationDataparamsHandler +namespace Ui{ + class QtWidgetsClass_ISARClass; +} +class QtWidgetsClass_ISAR : public QWidget, public FEKOBase::FEKOSimulationDataparamsHandler { Q_OBJECT @@ -24,7 +26,7 @@ signals: public slots: void on_pushButton_OK_clicked(); private: - Ui::QtWidgetsClass_ISARClass ui; + Ui::QtWidgetsClass_ISARClass* ui; }; diff --git a/src/WBCLFZSystemModule/QtWidgetsClass_ISAR.ui b/src/PluginWBFZExchangePlugin/QtWidgetsClass_ISAR.ui similarity index 100% rename from src/WBCLFZSystemModule/QtWidgetsClass_ISAR.ui rename to src/PluginWBFZExchangePlugin/QtWidgetsClass_ISAR.ui diff --git a/src/PluginWBFZExchangePlugin/QtWidgetsClass_ImageSetting.cpp b/src/PluginWBFZExchangePlugin/QtWidgetsClass_ImageSetting.cpp new file mode 100644 index 0000000..4ec65d1 --- /dev/null +++ b/src/PluginWBFZExchangePlugin/QtWidgetsClass_ImageSetting.cpp @@ -0,0 +1,46 @@ +#include "QtWidgetsClass_ImageSetting.h" +#include "ui_QtWidgetsClass_ImageSetting.h" + + +void QtWidgetsClass_ImageSetting::FEKOSimulationDataparamsChanged_slots() +{ + this->ui->lineEdit_minX->setText(QString::number(this->simulationparams->getX_min())); + this->ui->lineEdit__maxX->setText(QString::number(this->simulationparams->getX_max())); + this->ui->lineEdit__minY->setText(QString::number(this->simulationparams->getY_min())); + this->ui->lineEdit__maxY->setText(QString::number(this->simulationparams->getY_max())); + this->ui->lineEdit_planeZ->setText(QString::number(this->simulationparams->getZ_plane())); + this->ui->lineEdit_height->setText(QString::number(this->simulationparams->getImageheight())); + this->ui->lineEdit_width->setText(QString::number(this->simulationparams->getImagewidth())); +} + +void QtWidgetsClass_ImageSetting::bandingsetFEKOSimulationDataparams() +{ + QObject::connect(this->simulationparams, SIGNAL(FEKOSimulationDataparamsChanged()), this, SLOT(FEKOSimulationDataparamsChanged_slots())); + +} + +QtWidgetsClass_ImageSetting::QtWidgetsClass_ImageSetting(QWidget *parent) + : QWidget(parent) +{ + ui=new Ui::QtWidgetsClass_ImageSettingClass; + ui->setupUi(this); +} + +QtWidgetsClass_ImageSetting::~QtWidgetsClass_ImageSetting() +{} + + + +void QtWidgetsClass_ImageSetting::on_pushButton_OK_clicked() { + + this->simulationparams->setX_min(this->ui->lineEdit_minX->text().toDouble()); + this->simulationparams->setX_max(this->ui->lineEdit__maxX->text().toDouble()); + this->simulationparams->setY_min(this->ui->lineEdit__minY->text().toDouble()); + this->simulationparams->setY_max(this->ui->lineEdit__maxY->text().toDouble()); + this->simulationparams->setZ_plane(this->ui->lineEdit_planeZ->text().toDouble()); + this->simulationparams->setImageheight(this->ui->lineEdit_height->text().toInt()); + this->simulationparams->setImagewidth(this->ui->lineEdit_width->text().toInt()); + + + emit this->OKClick(); +} \ No newline at end of file diff --git a/src/WBCLFZSystemModule/QtWidgetsClass_ImageSetting.h b/src/PluginWBFZExchangePlugin/QtWidgetsClass_ImageSetting.h similarity index 65% rename from src/WBCLFZSystemModule/QtWidgetsClass_ImageSetting.h rename to src/PluginWBFZExchangePlugin/QtWidgetsClass_ImageSetting.h index ae94a2e..05b5c2a 100644 --- a/src/WBCLFZSystemModule/QtWidgetsClass_ImageSetting.h +++ b/src/PluginWBFZExchangePlugin/QtWidgetsClass_ImageSetting.h @@ -2,12 +2,14 @@ #ifndef QTWIDGETSCLASS_IMAGESETTING_H #define QTWIDGETSCLASS_IMAGESETTING_H - +#include "WBFZExchangePluginAPI.h" #include "AllHead.h" #include -#include "ui_QtWidgetsClass_ImageSetting.h" -class QtWidgetsClass_ImageSetting : public QWidget, public FEKOBase::FEKOSimulationDataparamsHandler +namespace Ui{ + class QtWidgetsClass_ImageSettingClass; +} +class QtWidgetsClass_ImageSetting : public QWidget, public FEKOBase::FEKOSimulationDataparamsHandler { Q_OBJECT @@ -28,7 +30,7 @@ public slots: void on_pushButton_OK_clicked(); private: - Ui::QtWidgetsClass_ImageSettingClass ui; + Ui::QtWidgetsClass_ImageSettingClass* ui; }; diff --git a/src/WBCLFZSystemModule/QtWidgetsClass_ImageSetting.ui b/src/PluginWBFZExchangePlugin/QtWidgetsClass_ImageSetting.ui similarity index 100% rename from src/WBCLFZSystemModule/QtWidgetsClass_ImageSetting.ui rename to src/PluginWBFZExchangePlugin/QtWidgetsClass_ImageSetting.ui diff --git a/src/PluginWBFZExchangePlugin/QtWidgetsClass_Scan.cpp b/src/PluginWBFZExchangePlugin/QtWidgetsClass_Scan.cpp new file mode 100644 index 0000000..d623744 --- /dev/null +++ b/src/PluginWBFZExchangePlugin/QtWidgetsClass_Scan.cpp @@ -0,0 +1,75 @@ +#include "QtWidgetsClass_Scan.h" +#include "ui_QtWidgetsClass_Scan.h" + +void QtWidgetsClass_Scan::FEKOSimulationDataparamsChanged_slots() +{ + if (this->simulationparams->imagemode == FEKOBase::FEKOImageMode::Scane) { + this->ui->lineEdit_PRF->setText(QString::number(this->simulationparams->getPRFCount())); + this->ui->lineEdit_Start_x->setText(QString::number(this->simulationparams->start_x)); + this->ui->lineEdit_start_y->setText(QString::number(this->simulationparams->start_y)); + this->ui->lineEdit_start_z->setText(QString::number(this->simulationparams->start_z)); + this->ui->lineEdit_end_x->setText(QString::number(this->simulationparams->end_x)); + this->ui->lineEdit_end_y->setText(QString::number(this->simulationparams->end_y)); + this->ui->lineEdit_end_z->setText(QString::number(this->simulationparams->end_z)); + this->ui->lineEdit_startAzAngle->setText(QString::number(this->simulationparams->start_az_angle)); + this->ui->lineEdit_EndAzAngle->setText(QString::number(this->simulationparams->end_az_angle)); + } + else if (this->simulationparams->imagemode == FEKOBase::FEKOImageMode::Strip) { + this->ui->lineEdit_PRF->setText(QString::number(this->simulationparams->getPRFCount())); + this->ui->lineEdit_Start_x->setText(QString::number(this->simulationparams->start_x)); + this->ui->lineEdit_start_y->setText(QString::number(this->simulationparams->start_y)); + this->ui->lineEdit_start_z->setText(QString::number(this->simulationparams->start_z)); + this->ui->lineEdit_end_x->setText(QString::number(this->simulationparams->end_x)); + this->ui->lineEdit_end_y->setText(QString::number(this->simulationparams->end_y)); + this->ui->lineEdit_end_z->setText(QString::number(this->simulationparams->end_z)); + } + + else { + return; + } +} + +void QtWidgetsClass_Scan::bandingsetFEKOSimulationDataparams() +{ + QObject::connect(this->simulationparams, SIGNAL(FEKOSimulationDataparamsChanged()), this, SLOT(FEKOSimulationDataparamsChanged_slots())); + +} + +QtWidgetsClass_Scan::QtWidgetsClass_Scan(QWidget *parent) + : QWidget(parent) +{ + ui=new Ui::QtWidgetsClass_ScanClass; + ui->setupUi(this); + + + +} + +QtWidgetsClass_Scan::~QtWidgetsClass_Scan() +{ + + +} + + +void QtWidgetsClass_Scan::on_pushButton_OK_clicked() { + //参考void QtWidgetsClass_ISAR::on_pushButton_OK_clicked() 逻辑生成代码 + + //void OKClick(double incAngle, double refRange, double startAzAngle, double endAzAngle, double start_x, double start_y, double start_z, double end_x, double end_y, double end_z, size_t prfcount); + + this->simulationparams->setStart_az_angle(ui->lineEdit_startAzAngle->text().toDouble()); + this->simulationparams->setEnd_az_angle(ui->lineEdit_EndAzAngle->text().toDouble()); + this->simulationparams->setPRFCount(this->ui->lineEdit_PRF->text().toInt()); + this->simulationparams->setStart_x(this->ui->lineEdit_Start_x->text().toDouble()); + this->simulationparams->setStart_y(this->ui->lineEdit_start_y->text().toDouble()); + this->simulationparams->setStart_z(this->ui->lineEdit_start_z->text().toDouble()); + this->simulationparams->setEnd_x(this->ui->lineEdit_end_x->text().toDouble()); + this->simulationparams->setEnd_y(this->ui->lineEdit_end_y->text().toDouble()); + this->simulationparams->setEnd_z(this->ui->lineEdit_end_z->text().toDouble()); + this->simulationparams->setImagemode(FEKOBase::FEKOImageMode::Scane); + + + + emit this->OKClick(); + +} \ No newline at end of file diff --git a/src/WBCLFZSystemModule/QtWidgetsClass_Scan.h b/src/PluginWBFZExchangePlugin/QtWidgetsClass_Scan.h similarity index 65% rename from src/WBCLFZSystemModule/QtWidgetsClass_Scan.h rename to src/PluginWBFZExchangePlugin/QtWidgetsClass_Scan.h index e93bd43..16ee292 100644 --- a/src/WBCLFZSystemModule/QtWidgetsClass_Scan.h +++ b/src/PluginWBFZExchangePlugin/QtWidgetsClass_Scan.h @@ -1,12 +1,14 @@ #pragma once #ifndef QTWIDGETSCLASS_SCAN_H #define QTWIDGETSCLASS_SCAN_H - +#include "WBFZExchangePluginAPI.h" #include "AllHead.h" #include -#include "ui_QtWidgetsClass_Scan.h" -class QtWidgetsClass_Scan : public QWidget, public FEKOBase::FEKOSimulationDataparamsHandler +namespace Ui{ + class QtWidgetsClass_ScanClass; +} +class QtWidgetsClass_Scan : public QWidget, public FEKOBase::FEKOSimulationDataparamsHandler { Q_OBJECT @@ -23,7 +25,7 @@ signals: public slots: void on_pushButton_OK_clicked(); private: - Ui::QtWidgetsClass_ScanClass ui; + Ui::QtWidgetsClass_ScanClass* ui; }; diff --git a/src/WBCLFZSystemModule/QtWidgetsClass_Scan.ui b/src/PluginWBFZExchangePlugin/QtWidgetsClass_Scan.ui similarity index 100% rename from src/WBCLFZSystemModule/QtWidgetsClass_Scan.ui rename to src/PluginWBFZExchangePlugin/QtWidgetsClass_Scan.ui diff --git a/src/PluginWBFZExchangePlugin/QtWidgetsClass_Strip.cpp b/src/PluginWBFZExchangePlugin/QtWidgetsClass_Strip.cpp new file mode 100644 index 0000000..a16d1a1 --- /dev/null +++ b/src/PluginWBFZExchangePlugin/QtWidgetsClass_Strip.cpp @@ -0,0 +1,65 @@ +#include "QtWidgetsClass_Strip.h" +#include "ui_QtWidgetsClass_Strip.h" + + +void QtWidgetsClass_Strip::FEKOSimulationDataparamsChanged_slots() +{ + if (this->simulationparams->imagemode == FEKOBase::FEKOImageMode::Strip) { + this->ui->lineEdit_PRF->setText(QString::number(this->simulationparams->getPRFCount())); + this->ui->lineEdit_Start_x->setText(QString::number(this->simulationparams->start_x)); + this->ui->lineEdit_start_y->setText(QString::number(this->simulationparams->start_y)); + this->ui->lineEdit_start_z->setText(QString::number(this->simulationparams->start_z)); + this->ui->lineEdit_end_x->setText(QString::number(this->simulationparams->end_x)); + this->ui->lineEdit_end_y->setText(QString::number(this->simulationparams->end_y)); + this->ui->lineEdit_end_z->setText(QString::number(this->simulationparams->end_z)); + } + else if (this->simulationparams->imagemode == FEKOBase::FEKOImageMode::Scane) { + this->ui->lineEdit_PRF->setText(QString::number(this->simulationparams->getPRFCount())); + this->ui->lineEdit_Start_x->setText(QString::number(this->simulationparams->start_x)); + this->ui->lineEdit_start_y->setText(QString::number(this->simulationparams->start_y)); + this->ui->lineEdit_start_z->setText(QString::number(this->simulationparams->start_z)); + this->ui->lineEdit_end_x->setText(QString::number(this->simulationparams->end_x)); + this->ui->lineEdit_end_y->setText(QString::number(this->simulationparams->end_y)); + this->ui->lineEdit_end_z->setText(QString::number(this->simulationparams->end_z)); + } + else { + return; + } + +} + +void QtWidgetsClass_Strip::bandingsetFEKOSimulationDataparams() +{ + QObject::connect(this->simulationparams, SIGNAL(FEKOSimulationDataparamsChanged()), this, SLOT(FEKOSimulationDataparamsChanged_slots())); +} + +QtWidgetsClass_Strip::QtWidgetsClass_Strip(QWidget *parent) + : QWidget(parent) +{ + ui=new Ui::QtWidgetsClass_StripClass; + ui->setupUi(this); +} + +QtWidgetsClass_Strip::~QtWidgetsClass_Strip() +{ + + + +} + + +void QtWidgetsClass_Strip::on_pushButton_OK_clicked() { + + + //void OKClick(double incAngle, double refRange, double start_x, double start_y, double start_z, double end_x, double end_y, double end_z, size_t prfcount); + this->simulationparams->setPRFCount(this->ui->lineEdit_PRF->text().toInt()); + this->simulationparams->setStart_x(this->ui->lineEdit_Start_x->text().toDouble()); + this->simulationparams->setStart_y(this->ui->lineEdit_start_y->text().toDouble()); + this->simulationparams->setStart_z(this->ui->lineEdit_start_z->text().toDouble()); + this->simulationparams->setEnd_x(this->ui->lineEdit_end_x->text().toDouble()); + this->simulationparams->setEnd_y(this->ui->lineEdit_end_y->text().toDouble()); + this->simulationparams->setEnd_z(this->ui->lineEdit_end_z->text().toDouble()); + this->simulationparams->setImagemode(FEKOBase::FEKOImageMode::Strip); + emit this->OKClick(); + +} \ No newline at end of file diff --git a/src/WBCLFZSystemModule/QtWidgetsClass_Strip.h b/src/PluginWBFZExchangePlugin/QtWidgetsClass_Strip.h similarity index 65% rename from src/WBCLFZSystemModule/QtWidgetsClass_Strip.h rename to src/PluginWBFZExchangePlugin/QtWidgetsClass_Strip.h index 5a91dd2..847a591 100644 --- a/src/WBCLFZSystemModule/QtWidgetsClass_Strip.h +++ b/src/PluginWBFZExchangePlugin/QtWidgetsClass_Strip.h @@ -2,12 +2,16 @@ #ifndef QTWIDGETSCLASS_STRIP_H #define QTWIDGETSCLASS_STRIP_H - +#include "WBFZExchangePluginAPI.h" #include "AllHead.h" #include -#include "ui_QtWidgetsClass_Strip.h" -class QtWidgetsClass_Strip : public QWidget, public FEKOBase::FEKOSimulationDataparamsHandler + +namespace Ui{ + class QtWidgetsClass_StripClass; +} + +class QtWidgetsClass_Strip : public QWidget, public FEKOBase::FEKOSimulationDataparamsHandler { Q_OBJECT @@ -26,7 +30,7 @@ public slots: void on_pushButton_OK_clicked(); private: - Ui::QtWidgetsClass_StripClass ui; + Ui::QtWidgetsClass_StripClass* ui; }; diff --git a/src/WBCLFZSystemModule/QtWidgetsClass_Strip.ui b/src/PluginWBFZExchangePlugin/QtWidgetsClass_Strip.ui similarity index 100% rename from src/WBCLFZSystemModule/QtWidgetsClass_Strip.ui rename to src/PluginWBFZExchangePlugin/QtWidgetsClass_Strip.ui diff --git a/src/LAMPTool/SARBaseTool.cpp b/src/PluginWBFZExchangePlugin/SARBaseTool.cpp similarity index 94% rename from src/LAMPTool/SARBaseTool.cpp rename to src/PluginWBFZExchangePlugin/SARBaseTool.cpp index d8b8e32..9332dff 100644 --- a/src/LAMPTool/SARBaseTool.cpp +++ b/src/PluginWBFZExchangePlugin/SARBaseTool.cpp @@ -21,7 +21,7 @@ -int LAMPTOOLAPI Complex2dB(QString in_tiff, QString out_dB_path) +int Complex2dB(QString in_tiff, QString out_dB_path) { GDALAllRegister(); std::shared_ptr rasterDataset = OpenDataset(in_tiff); @@ -170,7 +170,7 @@ int LAMPTOOLAPI Complex2dB(QString in_tiff, QString out_dB_path) return 0; } -int LAMPTOOLAPI Amplitude2dB(QString in_tiff, QString out_dB_path) +int Amplitude2dB(QString in_tiff, QString out_dB_path) { GDALAllRegister(); @@ -223,22 +223,22 @@ int LAMPTOOLAPI Amplitude2dB(QString in_tiff, QString out_dB_path) return 0; } -Eigen::MatrixXd LAMPTOOLAPI Complex2dB(Eigen::MatrixXcd in_matrix) +Eigen::MatrixXd Complex2dB(Eigen::MatrixXcd in_matrix) { return Complex2dB(in_matrix.real().array(), in_matrix.imag().array()); } -Eigen::MatrixXd LAMPTOOLAPI Complex2dB(Eigen::MatrixXd in_matrix_real, Eigen::MatrixXd in_matrix_imag) +Eigen::MatrixXd Complex2dB(Eigen::MatrixXd in_matrix_real, Eigen::MatrixXd in_matrix_imag) { return (in_matrix_real.array().pow(2) + in_matrix_imag.array().pow(2)).log10() * 10; } -double LAMPTOOLAPI Complex2Amplitude(std::complex sign) +double Complex2Amplitude(std::complex sign) { return sqrt(pow(sign.real(),2)+pow(sign.imag(),2)); } -double LAMPTOOLAPI Complex2phase(std::complex sign) +double Complex2phase(std::complex sign) { //return (sign.real() == 0)*((sign.imag() < 0) * PI / 2)+ (sign.real() != 0)*(atan(sign.imag() / sign.real()) + (sign.real() < 0) * ((sign.imag() <= 0) * PI)); if (sign.real() != 0) { @@ -249,12 +249,12 @@ double LAMPTOOLAPI Complex2phase(std::complex sign) } } -Eigen::MatrixXd LAMPTOOLAPI Complex2Amplitude(Eigen::MatrixXcd in_matrix) +Eigen::MatrixXd Complex2Amplitude(Eigen::MatrixXcd in_matrix) { return in_matrix.array().abs().cast().array(); } -Eigen::MatrixXd LAMPTOOLAPI Complex2phase(Eigen::MatrixXcd in_matrix) +Eigen::MatrixXd Complex2phase(Eigen::MatrixXcd in_matrix) { // 复数转相位 Eigen::MatrixXd result = in_matrix.real().array(); @@ -270,12 +270,12 @@ Eigen::MatrixXd LAMPTOOLAPI Complex2phase(Eigen::MatrixXcd in_matrix) return result; } -int LAMPTOOLAPI Complex2dB_DLL(QString out_path, QString in_sar_path) +int Complex2dB_DLL(QString out_path, QString in_sar_path) { return Complex2dB(in_sar_path, out_path); } -int LAMPTOOLAPI Amplitude2dB_DLL(QString in_tiff, QString out_dB_path) +int Amplitude2dB_DLL(QString in_tiff, QString out_dB_path) { return Amplitude2dB(in_tiff, out_dB_path); } diff --git a/src/LAMPTool/SARBaseTool.h b/src/PluginWBFZExchangePlugin/SARBaseTool.h similarity index 65% rename from src/LAMPTool/SARBaseTool.h rename to src/PluginWBFZExchangePlugin/SARBaseTool.h index 930c49d..b8c9a23 100644 --- a/src/LAMPTool/SARBaseTool.h +++ b/src/PluginWBFZExchangePlugin/SARBaseTool.h @@ -3,7 +3,7 @@ * 基础SARBaseTool 操作 * */ -#include "LAMPToolAPI.h" +#include "WBFZExchangePluginAPI.h" #include #include #include @@ -33,18 +33,18 @@ // 判断是否需要输出为DLL #define DLLOUT -int LAMPTOOLAPI Complex2dB(QString in_tiff, QString out_dB_path); -int LAMPTOOLAPI Amplitude2dB(QString in_tiff, QString out_dB_path); -Eigen::MatrixXd LAMPTOOLAPI Complex2dB(Eigen::MatrixXcd in_matrix); -Eigen::MatrixXd LAMPTOOLAPI Complex2dB(Eigen::MatrixXd in_matrix_real, Eigen::MatrixXd in_matrix_imag ); +int Complex2dB(QString in_tiff, QString out_dB_path); +int Amplitude2dB(QString in_tiff, QString out_dB_path); +Eigen::MatrixXd Complex2dB(Eigen::MatrixXcd in_matrix); +Eigen::MatrixXd Complex2dB(Eigen::MatrixXd in_matrix_real, Eigen::MatrixXd in_matrix_imag ); -double LAMPTOOLAPI Complex2Amplitude(std::complex sign); -double LAMPTOOLAPI Complex2phase(std::complex sign);// 返回弧度制相位 +double Complex2Amplitude(std::complex sign); +double Complex2phase(std::complex sign);// 返回弧度制相位 -Eigen::MatrixXd LAMPTOOLAPI Complex2Amplitude(Eigen::MatrixXcd in_matrix); -Eigen::MatrixXd LAMPTOOLAPI Complex2phase(Eigen::MatrixXcd in_matrix); +Eigen::MatrixXd Complex2Amplitude(Eigen::MatrixXcd in_matrix); +Eigen::MatrixXd Complex2phase(Eigen::MatrixXcd in_matrix); // ---------------------------------------------------------------------------------------------------------- // 后向散射系数系统仿真模型 diff --git a/src/LAMPTool/SARCalibration.cpp b/src/PluginWBFZExchangePlugin/SARCalibration.cpp similarity index 96% rename from src/LAMPTool/SARCalibration.cpp rename to src/PluginWBFZExchangePlugin/SARCalibration.cpp index 92c0ade..49054bf 100644 --- a/src/LAMPTool/SARCalibration.cpp +++ b/src/PluginWBFZExchangePlugin/SARCalibration.cpp @@ -29,17 +29,17 @@ using namespace Eigen; -Eigen::Matrix2cd LAMPTOOLAPI CalibrationMatrix(Eigen::MatrixXcd in_matrix, double calibrationValue) +Eigen::Matrix2cd CalibrationMatrix(Eigen::MatrixXcd in_matrix, double calibrationValue) { return in_matrix.array() * calibrationValue; } -int LAMPTOOLAPI CalibrationSiglePolarSAR(QString out_path, QString in_sar_path, double calibrationValue) +int CalibrationSiglePolarSAR(QString out_path, QString in_sar_path, double calibrationValue) { return CalibrationComplex(out_path, in_sar_path, calibrationValue); } -int LAMPTOOLAPI CalibrationComplex(const QString& out_path, const QString& in_sar_path, double calibrationValue) +int CalibrationComplex(const QString& out_path, const QString& in_sar_path, double calibrationValue) { GDALAllRegister(); std::shared_ptr rasterDataset = OpenDataset(in_sar_path); @@ -202,7 +202,7 @@ int LAMPTOOLAPI CalibrationComplex(const QString& out_path, const QString& in_s return -1; } -int LAMPTOOLAPI CalibrationComplex2dB(const QString& out_path, const QString& in_sar_path, double calibrationValue) +int CalibrationComplex2dB(const QString& out_path, const QString& in_sar_path, double calibrationValue) { GDALAllRegister(); std::shared_ptr rasterDataset = OpenDataset(in_sar_path); @@ -373,12 +373,12 @@ int LAMPTOOLAPI CalibrationComplex2dB(const QString& out_path, const QString& i return 0; } -int LAMPTOOLAPI CalibrationComplex_DLL(const QString& out_path, const QString& in_sar_path, double calibrationValue) +int CalibrationComplex_DLL(const QString& out_path, const QString& in_sar_path, double calibrationValue) { return 0; } -int LAMPTOOLAPI CalibrationComplex2dB_DLL(const QString& out_path, const QString& in_sar_path, double calibrationValue) +int CalibrationComplex2dB_DLL(const QString& out_path, const QString& in_sar_path, double calibrationValue) { return 0; } diff --git a/src/LAMPTool/SARCalibration.h b/src/PluginWBFZExchangePlugin/SARCalibration.h similarity index 71% rename from src/LAMPTool/SARCalibration.h rename to src/PluginWBFZExchangePlugin/SARCalibration.h index d51e273..a51d233 100644 --- a/src/LAMPTool/SARCalibration.h +++ b/src/PluginWBFZExchangePlugin/SARCalibration.h @@ -28,9 +28,9 @@ using namespace Eigen; // 定标计算 // 输入定标系统,保证数据能够正常定标 -Eigen::Matrix2cd LAMPTOOLAPI CalibrationMatrix(Eigen::MatrixXcd in_matrix, double calibrationValue); -int LAMPTOOLAPI CalibrationComplex(const QString& out_path, const QString& in_sar_path, double calibrationValue); -int LAMPTOOLAPI CalibrationComplex2dB(const QString& out_path, const QString& in_sar_path, double calibrationValue); +Eigen::Matrix2cd CalibrationMatrix(Eigen::MatrixXcd in_matrix, double calibrationValue); +int CalibrationComplex(const QString& out_path, const QString& in_sar_path, double calibrationValue); +int CalibrationComplex2dB(const QString& out_path, const QString& in_sar_path, double calibrationValue); #ifndef DLLOUT #else diff --git a/src/LAMPTool/SARCalibrationTool.cpp b/src/PluginWBFZExchangePlugin/SARCalibrationTool.cpp similarity index 91% rename from src/LAMPTool/SARCalibrationTool.cpp rename to src/PluginWBFZExchangePlugin/SARCalibrationTool.cpp index 508e974..4638667 100644 --- a/src/LAMPTool/SARCalibrationTool.cpp +++ b/src/PluginWBFZExchangePlugin/SARCalibrationTool.cpp @@ -1,6 +1,6 @@ // SARCalibrationTool.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。 // -#include "LAMPToolAPI.h" +#include "WBFZExchangePluginAPI.h" #include "SARCalibration.h" #include "SARBaseTool.h" #include @@ -9,7 +9,7 @@ -int LAMPTOOLAPI SiglePolarCalibration(int argc, char* argv[]) { +int SiglePolarCalibration(int argc, char* argv[]) { qDebug() << "mode : 1 "<< "\n"; QString in_tiff_path = ""; QString out_path = ""; @@ -36,7 +36,7 @@ int LAMPTOOLAPI SiglePolarCalibration(int argc, char* argv[]) { } -int LAMPTOOLAPI RasterComplex2dB(int argc, char* argv[]) { +int RasterComplex2dB(int argc, char* argv[]) { qDebug() << "mode : 1 " << "\n"; QString in_tiff_path = ""; QString out_path = ""; @@ -58,7 +58,7 @@ int LAMPTOOLAPI RasterComplex2dB(int argc, char* argv[]) { } -int LAMPTOOLAPI Test_SARCalibrationTool(int argc, char* argv[]) +int Test_SARCalibrationTool(int argc, char* argv[]) { qDebug() << "calibration tool " << "\n"; qDebug() << "sigle polsar Amg: SARCalibrationTool.exe 1 -in filepath -out filepath -calibrationConst 43" << "\n"; diff --git a/src/LAMPTool/SARImageBase.cpp b/src/PluginWBFZExchangePlugin/SARImageBase.cpp similarity index 90% rename from src/LAMPTool/SARImageBase.cpp rename to src/PluginWBFZExchangePlugin/SARImageBase.cpp index 865c351..a48aa55 100644 --- a/src/LAMPTool/SARImageBase.cpp +++ b/src/PluginWBFZExchangePlugin/SARImageBase.cpp @@ -1,4 +1,4 @@ -#include "LAMPToolAPI.h" +#include "WBFZExchangePluginAPI.h" #include "ImageOperatorBase.h" #include "SARBaseTool.h" #include "SARImageBase.h" @@ -28,17 +28,17 @@ -double LAMPTOOLAPI getRangeResolution(double startfreq, double endfreq) +double getRangeResolution(double startfreq, double endfreq) { return LIGHTSPEED / 2 / std::abs(endfreq - startfreq); } -double LAMPTOOLAPI getAzimuthResolution(double AzAngleRange, double startFreq) +double getAzimuthResolution(double AzAngleRange, double startFreq) { return LIGHTSPEED / 2 / (AzAngleRange * startFreq); } -Eigen::MatrixXd LAMPTOOLAPI hammingWindows(size_t num) +Eigen::MatrixXd hammingWindows(size_t num) { double alpha = 25. / 46; double beta = 1 - alpha; @@ -53,7 +53,7 @@ Eigen::MatrixXd LAMPTOOLAPI hammingWindows(size_t num) } -Eigen::MatrixXd LAMPTOOLAPI Hanning(size_t Nf, size_t Nxa, double alpha) +Eigen::MatrixXd Hanning(size_t Nf, size_t Nxa, double alpha) { // n1 = double ? DOUBLE(n1In[0]) : FLOAT(n1In[0]) double a = 2 * PI / Nf; // a = 2 * pi / N1 ;scale factor @@ -76,7 +76,7 @@ Eigen::MatrixXd LAMPTOOLAPI Hanning(size_t Nf, size_t Nxa, double alpha) } -Eigen::MatrixXcd LAMPTOOLAPI HammingWindows(Eigen::MatrixXcd FreqEcho) +Eigen::MatrixXcd HammingWindows(Eigen::MatrixXcd FreqEcho) { size_t data_cols = FreqEcho.cols(); size_t data_rows = FreqEcho.rows(); @@ -92,7 +92,7 @@ Eigen::MatrixXcd LAMPTOOLAPI HammingWindows(Eigen::MatrixXcd FreqEcho) return FreqEcho; } -Eigen::MatrixXcd LAMPTOOLAPI InterpFreqEcho(Eigen::MatrixXcd freqEcho, Eigen::VectorXd SourceFreqlist, Eigen::VectorXd interpFreqlist) +Eigen::MatrixXcd InterpFreqEcho(Eigen::MatrixXcd freqEcho, Eigen::VectorXd SourceFreqlist, Eigen::VectorXd interpFreqlist) { assert(freqEcho.cols() == SourceFreqlist.rows()); @@ -144,7 +144,7 @@ Eigen::MatrixXcd LAMPTOOLAPI InterpFreqEcho(Eigen::MatrixXcd freqEcho, Eigen::V return resultECHO; } -int LAMPTOOLAPI WriteComplexData2Amp_Arg(QString out_tiff_path, Eigen::MatrixXcd data) +int WriteComplexData2Amp_Arg(QString out_tiff_path, Eigen::MatrixXcd data) { Eigen::MatrixXd amp_data = Eigen::MatrixXd::Zero(data.rows(), data.cols()); Eigen::MatrixXd arg_data = Eigen::MatrixXd::Zero(data.rows(), data.cols()); @@ -168,7 +168,7 @@ int LAMPTOOLAPI WriteComplexData2Amp_Arg(QString out_tiff_path, Eigen::MatrixXc return 0; } -int LAMPTOOLAPI WriteComplexData2AmpdB_Arg(QString out_tiff_path, Eigen::MatrixXcd data) +int WriteComplexData2AmpdB_Arg(QString out_tiff_path, Eigen::MatrixXcd data) { Eigen::MatrixXd amp_data = Eigen::MatrixXd::Zero(data.rows(), data.cols()); Eigen::MatrixXd arg_data = Eigen::MatrixXd::Zero(data.rows(), data.cols()); @@ -192,14 +192,14 @@ int LAMPTOOLAPI WriteComplexData2AmpdB_Arg(QString out_tiff_path, Eigen::Matrix return 0; } -size_t LAMPTOOLAPI nextpow2(size_t num) +size_t nextpow2(size_t num) { double n = std::round(std::log10(num * 1.0) / std::log10(2.0)); return pow(2, (size_t)std::ceil(n) + 1); } -Eigen::MatrixXcd LAMPTOOLAPI IFFTW1D(Eigen::MatrixXcd ECHOdata) +Eigen::MatrixXcd IFFTW1D(Eigen::MatrixXcd ECHOdata) { size_t data_rows = ECHOdata.rows(); size_t data_cols = ECHOdata.cols(); @@ -245,7 +245,7 @@ Eigen::MatrixXcd LAMPTOOLAPI IFFTW1D(Eigen::MatrixXcd ECHOdata) return echoTime; } -Eigen::MatrixXcd LAMPTOOLAPI FFTW1D(Eigen::MatrixXcd ECHO) +Eigen::MatrixXcd FFTW1D(Eigen::MatrixXcd ECHO) { size_t data_rows = ECHO.rows(); size_t data_cols = ECHO.cols(); @@ -289,7 +289,7 @@ Eigen::MatrixXcd LAMPTOOLAPI FFTW1D(Eigen::MatrixXcd ECHO) -Eigen::MatrixXcd LAMPTOOLAPI FFTW2D(Eigen::MatrixXcd ECHO) +Eigen::MatrixXcd FFTW2D(Eigen::MatrixXcd ECHO) { // 获取数据的尺寸 int rows = ECHO.rows(); @@ -317,7 +317,7 @@ Eigen::MatrixXcd LAMPTOOLAPI FFTW2D(Eigen::MatrixXcd ECHO) } -Eigen::MatrixXcd LAMPTOOLAPI fftshift(Eigen::MatrixXcd X) { +Eigen::MatrixXcd fftshift(Eigen::MatrixXcd X) { int rows = X.rows(); int cols = X.cols(); int rows_half = rows / 2; diff --git a/src/LAMPTool/SARImageBase.h b/src/PluginWBFZExchangePlugin/SARImageBase.h similarity index 70% rename from src/LAMPTool/SARImageBase.h rename to src/PluginWBFZExchangePlugin/SARImageBase.h index 2cbb298..0f1b4e8 100644 --- a/src/LAMPTool/SARImageBase.h +++ b/src/PluginWBFZExchangePlugin/SARImageBase.h @@ -8,7 +8,7 @@ #include "SARBaseTool.h" // ------------------------------------------- 成像 公用库---------------------------------------------------------- // SAR 常用计算的方法 -double LAMPTOOLAPI getRangeResolution(double startfreq, double endfreq); +double getRangeResolution(double startfreq, double endfreq); /// /// 方位向分辨率计算 @@ -16,9 +16,9 @@ double LAMPTOOLAPI getRangeResolution(double startfreq, double endfreq); /// 弧度制,方位角变化范围(>=0) /// 起始频率 /// -double LAMPTOOLAPI getAzimuthResolution(double AzAngleRange, double startFreq); +double getAzimuthResolution(double AzAngleRange, double startFreq); // 根据输入数量构建汉明窗 -Eigen::MatrixXd LAMPTOOLAPI hammingWindows(size_t num); +Eigen::MatrixXd hammingWindows(size_t num); // 频率域汉明窗口 @@ -30,21 +30,21 @@ Eigen::MatrixXd LAMPTOOLAPI hammingWindows(size_t num); /// 脉冲数量 /// 权重 /// 汉明窗权重 -Eigen::MatrixXd LAMPTOOLAPI Hanning(size_t Nf, size_t Nxa, double alpha = 0.54); +Eigen::MatrixXd Hanning(size_t Nf, size_t Nxa, double alpha = 0.54); /// /// 获取2的平方数,大于2 /// /// /// -size_t LAMPTOOLAPI nextpow2(size_t num); +size_t nextpow2(size_t num); /// /// 对回波沿着行进行一维傅里叶逆变换 /// /// /// -Eigen::MatrixXcd LAMPTOOLAPI IFFTW1D(Eigen::MatrixXcd ECHO); +Eigen::MatrixXcd IFFTW1D(Eigen::MatrixXcd ECHO); /// @@ -52,16 +52,16 @@ Eigen::MatrixXcd LAMPTOOLAPI IFFTW1D(Eigen::MatrixXcd ECHO); /// /// /// -Eigen::MatrixXcd LAMPTOOLAPI FFTW1D(Eigen::MatrixXcd echo); -Eigen::MatrixXcd LAMPTOOLAPI FFTW2D(Eigen::MatrixXcd ECHO); +Eigen::MatrixXcd FFTW1D(Eigen::MatrixXcd echo); +Eigen::MatrixXcd FFTW2D(Eigen::MatrixXcd ECHO); -Eigen::MatrixXcd LAMPTOOLAPI fftshift(Eigen::MatrixXcd X); +Eigen::MatrixXcd fftshift(Eigen::MatrixXcd X); /// /// 对回波 加 hamming 窗 /// /// 频域的回波数据(PRFnum,Freqnum) /// -Eigen::MatrixXcd LAMPTOOLAPI HammingWindows(Eigen::MatrixXcd FreqEcho); +Eigen::MatrixXcd HammingWindows(Eigen::MatrixXcd FreqEcho); /// @@ -72,7 +72,7 @@ Eigen::MatrixXcd LAMPTOOLAPI HammingWindows(Eigen::MatrixXcd FreqEcho); /// 回波的 原始频率列表 /// 回波的 插值频率列表 /// -Eigen::MatrixXcd LAMPTOOLAPI InterpFreqEcho(Eigen::MatrixXcd freqEcho, Eigen::VectorXd SourceFreqlist, Eigen::VectorXd interpFreqlist); +Eigen::MatrixXcd InterpFreqEcho(Eigen::MatrixXcd freqEcho, Eigen::VectorXd SourceFreqlist, Eigen::VectorXd interpFreqlist); /// @@ -81,7 +81,7 @@ Eigen::MatrixXcd LAMPTOOLAPI InterpFreqEcho(Eigen::MatrixXcd freqEcho, Eigen::Ve /// /// /// -int LAMPTOOLAPI WriteComplexData2Amp_Arg(QString out_tiff_path, Eigen::MatrixXcd data); +int WriteComplexData2Amp_Arg(QString out_tiff_path, Eigen::MatrixXcd data); /// @@ -90,6 +90,6 @@ int LAMPTOOLAPI WriteComplexData2Amp_Arg(QString out_tiff_path, Eigen::MatrixXcd /// /// /// -int LAMPTOOLAPI WriteComplexData2AmpdB_Arg(QString out_tiff_path, Eigen::MatrixXcd data); +int WriteComplexData2AmpdB_Arg(QString out_tiff_path, Eigen::MatrixXcd data); // ---------------------------------------------------------------------------------------------------------- #endif diff --git a/src/WBCLFZSystemModule/SharedModuleLib/BaseUiTool.cpp b/src/PluginWBFZExchangePlugin/SharedModuleLib/BaseUiTool.cpp similarity index 100% rename from src/WBCLFZSystemModule/SharedModuleLib/BaseUiTool.cpp rename to src/PluginWBFZExchangePlugin/SharedModuleLib/BaseUiTool.cpp diff --git a/src/WBCLFZSystemModule/SharedModuleLib/BaseUiTool.h b/src/PluginWBFZExchangePlugin/SharedModuleLib/BaseUiTool.h similarity index 100% rename from src/WBCLFZSystemModule/SharedModuleLib/BaseUiTool.h rename to src/PluginWBFZExchangePlugin/SharedModuleLib/BaseUiTool.h diff --git a/src/WBCLFZSystemModule/EchoShowProcess/CMDExcuteApp.ui b/src/PluginWBFZExchangePlugin/SharedModuleLib/CMDExcuteApp.ui similarity index 100% rename from src/WBCLFZSystemModule/EchoShowProcess/CMDExcuteApp.ui rename to src/PluginWBFZExchangePlugin/SharedModuleLib/CMDExcuteApp.ui diff --git a/src/WBCLFZSystemModule/SharedModuleLib/ProcessOn.cpp b/src/PluginWBFZExchangePlugin/SharedModuleLib/ProcessOn.cpp similarity index 72% rename from src/WBCLFZSystemModule/SharedModuleLib/ProcessOn.cpp rename to src/PluginWBFZExchangePlugin/SharedModuleLib/ProcessOn.cpp index 735b846..ff70084 100644 --- a/src/WBCLFZSystemModule/SharedModuleLib/ProcessOn.cpp +++ b/src/PluginWBFZExchangePlugin/SharedModuleLib/ProcessOn.cpp @@ -6,11 +6,11 @@ #include #include #include - +#include "ui_ProcessOn.h" ProcessOn::ProcessOn(QWidget* parent) { this->setAttribute(Qt::WA_DeleteOnClose); - this->ui.setupUi(this); + this->ui=new Ui::ProcessOnMainWindow ;this->ui->setupUi(this); } ProcessOn::~ProcessOn() @@ -19,12 +19,12 @@ ProcessOn::~ProcessOn() void ProcessOn::setRange(size_t start, size_t end) { - this->ui.progressBar->setRange(start, end); + this->ui->progressBar->setRange(start, end); } void ProcessOn::setValue(size_t v) { - this->ui.progressBar->setValue(v); + this->ui->progressBar->setValue(v); QCoreApplication::processEvents(QEventLoop::AllEvents); this->show(); } diff --git a/src/WBCLFZSystemModule/SharedModuleLib/ProcessOn.h b/src/PluginWBFZExchangePlugin/SharedModuleLib/ProcessOn.h similarity index 70% rename from src/WBCLFZSystemModule/SharedModuleLib/ProcessOn.h rename to src/PluginWBFZExchangePlugin/SharedModuleLib/ProcessOn.h index dcd3dbd..6bdf84b 100644 --- a/src/WBCLFZSystemModule/SharedModuleLib/ProcessOn.h +++ b/src/PluginWBFZExchangePlugin/SharedModuleLib/ProcessOn.h @@ -1,19 +1,23 @@ #pragma once #ifndef PROCESSON_H #define PROCESSON_H +#include "WBFZExchangePluginAPI.h" #include #include #include #include #include #include -#include "ui_ProcessOn.h" -class ProcessOn : public QMainWindow +namespace Ui{ + class ProcessOnMainWindow; +} + +class ProcessOn : public QMainWindow { Q_OBJECT private: - Ui::ProcessOnMainWindow ui; + Ui::ProcessOnMainWindow* ui; public: ProcessOn(QWidget* parent = nullptr); diff --git a/src/WBCLFZSystemModule/SharedModuleLib/ProcessOn.ui b/src/PluginWBFZExchangePlugin/SharedModuleLib/ProcessOn.ui similarity index 100% rename from src/WBCLFZSystemModule/SharedModuleLib/ProcessOn.ui rename to src/PluginWBFZExchangePlugin/SharedModuleLib/ProcessOn.ui diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/images/logo.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/images/logo.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/images/logo.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/images/logo.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/images/logo.svg b/src/PluginWBFZExchangePlugin/SqliteDBProcess/images/logo.svg similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/images/logo.svg rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/images/logo.svg diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/images/sqlitebrowser.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/images/sqlitebrowser.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/images/sqlitebrowser.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/images/sqlitebrowser.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/AboutDialog.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/AboutDialog.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/AboutDialog.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/AboutDialog.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/AboutDialog.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/AboutDialog.h similarity index 76% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/AboutDialog.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/AboutDialog.h index 3eb5aee..7b7cfb4 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/AboutDialog.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/AboutDialog.h @@ -1,13 +1,13 @@ #ifndef ABOUTDIALOG_H #define ABOUTDIALOG_H - +#include "WBFZExchangePluginAPI.h" #include namespace Ui { class AboutDialog; } -class AboutDialog : public QDialog +class AboutDialog : public QDialog { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/AboutDialog.ui b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/AboutDialog.ui similarity index 97% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/AboutDialog.ui rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/AboutDialog.ui index e284480..4710a93 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/AboutDialog.ui +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/AboutDialog.ui @@ -14,7 +14,7 @@ About DB Browser for SQLite - + :/icons/appicon:/icons/appicon @@ -87,7 +87,7 @@ - :/icons/appicon + :/icons/appicon true @@ -125,7 +125,7 @@ - + diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/AddRecordDialog.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/AddRecordDialog.cpp similarity index 99% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/AddRecordDialog.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/AddRecordDialog.cpp index 1f86b6c..20449f6 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/AddRecordDialog.cpp +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/AddRecordDialog.cpp @@ -11,7 +11,7 @@ #include #include -class NullLineEdit: public QLineEdit { +class NullLineEdit: public QLineEdit { Q_OBJECT private: bool m_isNull; @@ -364,4 +364,4 @@ void AddRecordDialog::on_buttonBox_clicked(QAbstractButton* button) } } -#include "AddRecordDialog.moc" +#include diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/AddRecordDialog.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/AddRecordDialog.h similarity index 92% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/AddRecordDialog.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/AddRecordDialog.h index cc9767b..801fee8 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/AddRecordDialog.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/AddRecordDialog.h @@ -1,6 +1,6 @@ #ifndef ADDRECORDDIALOG_H #define ADDRECORDDIALOG_H - +#include "WBFZExchangePluginAPI.h" #include "sql/ObjectIdentifier.h" #include @@ -14,7 +14,7 @@ class AddRecordDialog; class QAbstractButton; -class AddRecordDialog : public QDialog +class AddRecordDialog : public QDialog { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/AddRecordDialog.ui b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/AddRecordDialog.ui similarity index 98% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/AddRecordDialog.ui rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/AddRecordDialog.ui index 74d1fe9..66ddbd7 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/AddRecordDialog.ui +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/AddRecordDialog.ui @@ -14,7 +14,7 @@ Add New Record - + :/icons/table:/icons/table @@ -132,7 +132,7 @@ sqlTextEdit - + diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/Application.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/Application.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/Application.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/Application.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/Application.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/Application.h similarity index 91% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/Application.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/Application.h index 7c40b26..05450b4 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/Application.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/Application.h @@ -1,6 +1,6 @@ #ifndef APPLICATION_H #define APPLICATION_H - +#include "WBFZExchangePluginAPI.h" #include #include @@ -9,7 +9,7 @@ class QTranslator; class SqliteDBMainWindow; -class Application : public QApplication +class Application : public QApplication { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/CipherDialog.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/CipherDialog.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/CipherDialog.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/CipherDialog.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/CipherDialog.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/CipherDialog.h similarity index 90% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/CipherDialog.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/CipherDialog.h index ac7adc9..75a7c12 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/CipherDialog.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/CipherDialog.h @@ -1,6 +1,6 @@ #ifndef CIPHERDIALOG_H #define CIPHERDIALOG_H - +#include "WBFZExchangePluginAPI.h" #include #include "CipherSettings.h" @@ -11,7 +11,7 @@ namespace Ui { class CipherDialog; } -class CipherDialog : public QDialog +class CipherDialog : public QDialog { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/CipherDialog.ui b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/CipherDialog.ui similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/CipherDialog.ui rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/CipherDialog.ui diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/CipherSettings.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/CipherSettings.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/CipherSettings.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/CipherSettings.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/CipherSettings.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/CipherSettings.h similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/CipherSettings.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/CipherSettings.h diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/ColumnDisplayFormatDialog.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ColumnDisplayFormatDialog.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/ColumnDisplayFormatDialog.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ColumnDisplayFormatDialog.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/ColumnDisplayFormatDialog.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ColumnDisplayFormatDialog.h similarity index 90% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/ColumnDisplayFormatDialog.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ColumnDisplayFormatDialog.h index 1360612..4342e37 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/ColumnDisplayFormatDialog.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ColumnDisplayFormatDialog.h @@ -1,6 +1,6 @@ #ifndef COLUMNDISPLAYFORMATDIALOG_H #define COLUMNDISPLAYFORMATDIALOG_H - +#include "WBFZExchangePluginAPI.h" #include #include @@ -15,7 +15,7 @@ namespace Ui { class ColumnDisplayFormatDialog; } -class ColumnDisplayFormatDialog : public QDialog +class ColumnDisplayFormatDialog : public QDialog { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/ColumnDisplayFormatDialog.ui b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ColumnDisplayFormatDialog.ui similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/ColumnDisplayFormatDialog.ui rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ColumnDisplayFormatDialog.ui diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/CondFormat.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/CondFormat.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/CondFormat.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/CondFormat.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/CondFormat.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/CondFormat.h similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/CondFormat.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/CondFormat.h diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/CondFormatManager.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/CondFormatManager.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/CondFormatManager.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/CondFormatManager.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/CondFormatManager.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/CondFormatManager.h similarity index 93% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/CondFormatManager.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/CondFormatManager.h index bf0e284..317ac55 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/CondFormatManager.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/CondFormatManager.h @@ -1,6 +1,6 @@ #ifndef CONDFORMATMANAGER_H #define CONDFORMATMANAGER_H - +#include "WBFZExchangePluginAPI.h" #include #include @@ -14,7 +14,7 @@ class CondFormat; class QTreeWidgetItem; class QAbstractButton; -class CondFormatManager : public QDialog +class CondFormatManager : public QDialog { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/CondFormatManager.ui b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/CondFormatManager.ui similarity index 94% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/CondFormatManager.ui rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/CondFormatManager.ui index 41ead4d..563b296 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/CondFormatManager.ui +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/CondFormatManager.ui @@ -35,7 +35,7 @@ &Add - + :/icons/field_add:/icons/field_add @@ -55,7 +55,7 @@ &Remove - + :/icons/field_delete:/icons/field_delete @@ -75,7 +75,7 @@ Move &up - + :/icons/up:/icons/up @@ -95,7 +95,7 @@ Move &down - + :/icons/down:/icons/down @@ -187,7 +187,7 @@ Bold - + :/icons/text_bold.png:/icons/text_bold.png @@ -199,7 +199,7 @@ Italic - + :/icons/text_italic.png:/icons/text_italic.png @@ -211,7 +211,7 @@ Underline - + :/icons/text_underline.png:/icons/text_underline.png @@ -240,7 +240,7 @@ - + diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/DBsqliconwin.ico b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/DBsqliconwin.ico similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/DBsqliconwin.ico rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/DBsqliconwin.ico diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/DBsqliconwin.jpg b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/DBsqliconwin.jpg similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/DBsqliconwin.jpg rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/DBsqliconwin.jpg diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/Data.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/Data.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/Data.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/Data.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/Data.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/Data.h similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/Data.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/Data.h diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/DbStructureModel.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/DbStructureModel.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/DbStructureModel.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/DbStructureModel.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/DbStructureModel.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/DbStructureModel.h similarity index 95% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/DbStructureModel.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/DbStructureModel.h index 73e1a93..7347a5d 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/DbStructureModel.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/DbStructureModel.h @@ -1,6 +1,6 @@ #ifndef DBSTRUCTUREMODEL_H #define DBSTRUCTUREMODEL_H - +#include "WBFZExchangePluginAPI.h" #include #include @@ -8,7 +8,7 @@ class DBBrowserDB; class QTreeWidgetItem; namespace sqlb { class Object; using ObjectPtr = std::shared_ptr; } -class DbStructureModel : public QAbstractItemModel +class DbStructureModel : public QAbstractItemModel { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/DotenvFormat.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/DotenvFormat.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/DotenvFormat.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/DotenvFormat.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/DotenvFormat.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/DotenvFormat.h similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/DotenvFormat.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/DotenvFormat.h diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/EditDialog.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/EditDialog.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/EditDialog.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/EditDialog.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/EditDialog.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/EditDialog.h similarity index 97% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/EditDialog.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/EditDialog.h index 7144a6f..32e9703 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/EditDialog.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/EditDialog.h @@ -1,6 +1,6 @@ #ifndef EDITDIALOG_H #define EDITDIALOG_H - +#include "WBFZExchangePluginAPI.h" #include #include @@ -11,7 +11,7 @@ namespace Ui { class EditDialog; } -class EditDialog : public QDialog +class EditDialog : public QDialog { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/EditDialog.ui b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/EditDialog.ui similarity index 96% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/EditDialog.ui rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/EditDialog.ui index a1aab0f..06feed5 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/EditDialog.ui +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/EditDialog.ui @@ -93,7 +93,7 @@ Auto-switch - + :/icons/keyword :/icons/cog_go.png:/icons/keyword @@ -277,7 +277,7 @@ Errors are indicated with a red squiggle underline. - + :/icons/print:/icons/print @@ -292,7 +292,7 @@ Errors are indicated with a red squiggle underline. - + :/icons/print:/icons/print @@ -313,7 +313,7 @@ Errors are indicated with a red squiggle underline. - + :/icons/special_copy:/icons/special_copy @@ -331,7 +331,7 @@ Errors are indicated with a red squiggle underline. true - + :/icons/text_indent:/icons/text_indent @@ -346,7 +346,7 @@ Errors are indicated with a red squiggle underline. - + :/icons/save_sql:/icons/save_sql @@ -361,7 +361,7 @@ Errors are indicated with a red squiggle underline. - + :/icons/document_open:/icons/document_open @@ -376,7 +376,7 @@ Errors are indicated with a red squiggle underline. - + :/icons/set_to_null:/icons/set_to_null @@ -394,7 +394,7 @@ Errors are indicated with a red squiggle underline. true - + :/icons/word_wrap:/icons/word_wrap @@ -406,7 +406,7 @@ Errors are indicated with a red squiggle underline. - + :/icons/open_in_app:/icons/open_in_app @@ -424,7 +424,7 @@ Errors are indicated with a red squiggle underline. - + :/icons/document_link:/icons/document_link @@ -436,7 +436,7 @@ Errors are indicated with a red squiggle underline. - + :/icons/document_open:/icons/document_open @@ -451,7 +451,7 @@ Errors are indicated with a red squiggle underline. - + :/icons/open_data_in_app:/icons/open_data_in_app @@ -468,7 +468,7 @@ Errors are indicated with a red squiggle underline. buttonApply - + diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/EditIndexDialog.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/EditIndexDialog.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/EditIndexDialog.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/EditIndexDialog.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/EditIndexDialog.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/EditIndexDialog.h similarity index 93% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/EditIndexDialog.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/EditIndexDialog.h index 79fa2ae..993321c 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/EditIndexDialog.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/EditIndexDialog.h @@ -1,6 +1,6 @@ #ifndef EDITINDEXDIALOG_H #define EDITINDEXDIALOG_H - +#include "WBFZExchangePluginAPI.h" #include "sql/ObjectIdentifier.h" #include "sql/sqlitetypes.h" @@ -13,7 +13,7 @@ namespace Ui { class EditIndexDialog; } -class EditIndexDialog : public QDialog +class EditIndexDialog : public QDialog { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/EditIndexDialog.ui b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/EditIndexDialog.ui similarity index 99% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/EditIndexDialog.ui rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/EditIndexDialog.ui index 4477fbc..06b29ca 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/EditIndexDialog.ui +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/EditIndexDialog.ui @@ -14,7 +14,7 @@ Edit Index Schema - + :/icons/index_create:/icons/index_create @@ -172,7 +172,7 @@ Add a new expression column to the index. Expression columns contain SQL expression rather than column names. - + :/icons/cog_go.png:/icons/cog_go.png @@ -331,7 +331,7 @@ buttonFromIndex - + diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/EditTableDialog.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/EditTableDialog.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/EditTableDialog.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/EditTableDialog.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/EditTableDialog.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/EditTableDialog.h similarity index 96% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/EditTableDialog.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/EditTableDialog.h index 7c7191a..3ad43a3 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/EditTableDialog.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/EditTableDialog.h @@ -1,6 +1,6 @@ #ifndef EDITTABLEDIALOG_H #define EDITTABLEDIALOG_H - +#include "WBFZExchangePluginAPI.h" #include "sql/ObjectIdentifier.h" #include "sql/sqlitetypes.h" @@ -18,7 +18,7 @@ namespace Ui { class EditTableDialog; } -class EditTableDialog : public QDialog +class EditTableDialog : public QDialog { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/EditTableDialog.ui b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/EditTableDialog.ui similarity index 97% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/EditTableDialog.ui rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/EditTableDialog.ui index a4cf505..64679d1 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/EditTableDialog.ui +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/EditTableDialog.ui @@ -14,7 +14,7 @@ Edit table definition - + :/icons/table:/icons/table @@ -114,7 +114,7 @@ Add - + :/icons/field_add:/icons/field_add @@ -134,7 +134,7 @@ Remove - + :/icons/field_delete:/icons/field_delete @@ -154,7 +154,7 @@ Move to top - + :/icons/arrow_top:/icons/arrow_top @@ -177,7 +177,7 @@ Move up - + :/icons/up:/icons/up @@ -197,7 +197,7 @@ Move down - + :/icons/down:/icons/down @@ -217,7 +217,7 @@ Move to bottom - + :/icons/arrow_bottom:/icons/arrow_bottom @@ -345,7 +345,7 @@ Add constraint - + :/icons/field_add:/icons/field_add @@ -368,7 +368,7 @@ Remove constraint - + :/icons/field_delete:/icons/field_delete @@ -454,7 +454,7 @@ - + :/icons/field_key:/icons/field_key @@ -466,7 +466,7 @@ - + :/icons/field_fk:/icons/field_fk @@ -520,7 +520,7 @@ tableConstraints - + diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/ExportDataDialog.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ExportDataDialog.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/ExportDataDialog.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ExportDataDialog.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/ExportDataDialog.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ExportDataDialog.h similarity index 93% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/ExportDataDialog.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ExportDataDialog.h index 3b697a7..25bb814 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/ExportDataDialog.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ExportDataDialog.h @@ -1,6 +1,6 @@ #ifndef ExportDataDialog_H #define ExportDataDialog_H - +#include "WBFZExchangePluginAPI.h" #include #include "sql/ObjectIdentifier.h" @@ -11,7 +11,7 @@ namespace Ui { class ExportDataDialog; } -class ExportDataDialog : public QDialog +class ExportDataDialog : public QDialog { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/ExportDataDialog.ui b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ExportDataDialog.ui similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/ExportDataDialog.ui rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ExportDataDialog.ui diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/ExportSqlDialog.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ExportSqlDialog.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/ExportSqlDialog.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ExportSqlDialog.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/ExportSqlDialog.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ExportSqlDialog.h similarity index 86% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/ExportSqlDialog.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ExportSqlDialog.h index 1e585b2..23bf2a3 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/ExportSqlDialog.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ExportSqlDialog.h @@ -1,6 +1,6 @@ #ifndef ExportSqlDialog_H #define ExportSqlDialog_H - +#include "WBFZExchangePluginAPI.h" #include class DBBrowserDB; @@ -9,7 +9,7 @@ namespace Ui { class ExportSqlDialog; } -class ExportSqlDialog : public QDialog +class ExportSqlDialog : public QDialog { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/ExportSqlDialog.ui b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ExportSqlDialog.ui similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/ExportSqlDialog.ui rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ExportSqlDialog.ui diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/ExtendedScintilla.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ExtendedScintilla.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/ExtendedScintilla.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ExtendedScintilla.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/ExtendedScintilla.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ExtendedScintilla.h similarity index 94% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/ExtendedScintilla.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ExtendedScintilla.h index 6eca7de..c6869c5 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/ExtendedScintilla.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ExtendedScintilla.h @@ -1,6 +1,6 @@ #ifndef EXTENDEDSCINTILLA_H #define EXTENDEDSCINTILLA_H - +#include "WBFZExchangePluginAPI.h" #include "Qsci/qsciscintilla.h" class FindReplaceDialog; @@ -10,7 +10,7 @@ class QShortcut; * @brief The ExtendedScintilla class * This class extends the QScintilla widget for the application */ -class ExtendedScintilla : public QsciScintilla +class ExtendedScintilla : public QsciScintilla { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/ExtendedTableWidget.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ExtendedTableWidget.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/ExtendedTableWidget.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ExtendedTableWidget.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/ExtendedTableWidget.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ExtendedTableWidget.h similarity index 94% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/ExtendedTableWidget.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ExtendedTableWidget.h index f97bc78..ea576a9 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/ExtendedTableWidget.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ExtendedTableWidget.h @@ -1,6 +1,6 @@ #ifndef EXTENDEDTABLEWIDGET_H #define EXTENDEDTABLEWIDGET_H - +#include "WBFZExchangePluginAPI.h" #include #include #include @@ -17,7 +17,7 @@ class FilterTableHeader; namespace sqlb { class ObjectIdentifier; } // Filter proxy model that only accepts distinct non-empty values. -class UniqueFilterModel : public QSortFilterProxyModel +class UniqueFilterModel : public QSortFilterProxyModel { Q_OBJECT @@ -29,7 +29,7 @@ public: }; // We use this class to provide editor widgets for the ExtendedTableWidget. It's used for every cell in the table view. -class ExtendedTableWidgetEditorDelegate : public QStyledItemDelegate +class ExtendedTableWidgetEditorDelegate : public QStyledItemDelegate { Q_OBJECT @@ -42,9 +42,9 @@ public: void updateEditorGeometry(QWidget* editor, const QStyleOptionViewItem& option, const QModelIndex& index) const override; }; -class ExtendedTableWidget : public QTableView +class ExtendedTableWidget : public QTableView { - Q_OBJECT + Q_OBJECT public: explicit ExtendedTableWidget(QWidget* parent = nullptr); diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/FileDialog.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/FileDialog.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/FileDialog.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/FileDialog.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/FileDialog.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/FileDialog.h similarity index 57% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/FileDialog.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/FileDialog.h index 6b4999f..81f885a 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/FileDialog.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/FileDialog.h @@ -1,6 +1,6 @@ #ifndef FILEDIALOG_H #define FILEDIALOG_H - +#include "WBFZExchangePluginAPI.h" #include // @@ -10,51 +10,51 @@ // - passed to QFileDialog to filter files shown based on extension // // SQLite DB File Extensions -static const QString FILE_FILTER_SQLDB(QObject::tr("SQLite Database Files (*.db *.sqlite *.sqlite3 *.db3)")); +static const QString FILE_FILTER_SQLDB(QObject::tr("SQLite Database Files (*.db *.sqlite *.sqlite3 *.db3)")); // SQLite DB Project File Extensions -static const QString FILE_FILTER_SQLPRJ(QObject::tr("DB Browser for SQLite Project Files (*.sqbpro)")); -static const QString FILE_EXT_SQLPRJ_DEFAULT(".sqbpro"); +static const QString FILE_FILTER_SQLPRJ(QObject::tr("DB Browser for SQLite Project Files (*.sqbpro)")); +static const QString FILE_EXT_SQLPRJ_DEFAULT(".sqbpro"); // SQL File Extensions Filter -static const QString FILE_FILTER_SQL(QObject::tr("SQL Files (*.sql)")); -static const QString FILE_EXT_SQL_DEFAULT(".sql"); +static const QString FILE_FILTER_SQL(QObject::tr("SQL Files (*.sql)")); +static const QString FILE_EXT_SQL_DEFAULT(".sql"); // All Files Extensions Filter -static const QString FILE_FILTER_ALL(QObject::tr("All Files (*)")); +static const QString FILE_FILTER_ALL(QObject::tr("All Files (*)")); // Text Files Extensions Filter -static const QString FILE_FILTER_TXT(QObject::tr("Text Files (*.txt)")); -static const QString FILE_EXT_TXT_DEFAULT(".txt"); +static const QString FILE_FILTER_TXT(QObject::tr("Text Files (*.txt)")); +static const QString FILE_EXT_TXT_DEFAULT(".txt"); // Comma,Tab,or Delimiter-Separated Values File Extensions Filter -static const QString FILE_FILTER_CSV(QObject::tr("Comma-Separated Values Files (*.csv)")); -static const QString FILE_EXT_CSV_DEFAULT(".csv"); -static const QString FILE_FILTER_TSV(QObject::tr("Tab-Separated Values Files (*.tsv)")); -static const QString FILE_FILTER_DSV(QObject::tr("Delimiter-Separated Values Files (*.dsv)")); -static const QString FILE_FILTER_DAT(QObject::tr("Concordance DAT files (*.dat)")); +static const QString FILE_FILTER_CSV(QObject::tr("Comma-Separated Values Files (*.csv)")); +static const QString FILE_EXT_CSV_DEFAULT(".csv"); +static const QString FILE_FILTER_TSV(QObject::tr("Tab-Separated Values Files (*.tsv)")); +static const QString FILE_FILTER_DSV(QObject::tr("Delimiter-Separated Values Files (*.dsv)")); +static const QString FILE_FILTER_DAT(QObject::tr("Concordance DAT files (*.dat)")); // JSON File Extensions Filter -static const QString FILE_FILTER_JSON(QObject::tr("JSON Files (*.json *.js)")); -static const QString FILE_EXT_JSON_DEFAULT(".json"); +static const QString FILE_FILTER_JSON(QObject::tr("JSON Files (*.json *.js)")); +static const QString FILE_EXT_JSON_DEFAULT(".json"); // XML File Extensions Filter -static const QString FILE_FILTER_XML(QObject::tr("XML Files (*.xml)")); -static const QString FILE_EXT_XML_DEFAULT(".xml"); +static const QString FILE_FILTER_XML(QObject::tr("XML Files (*.xml)")); +static const QString FILE_EXT_XML_DEFAULT(".xml"); // Binary File Extensions Filter -static const QString FILE_FILTER_BIN(QObject::tr("Binary Files (*.bin *.dat)")); -static const QString FILE_EXT_BIN_DEFAULT(".bin"); +static const QString FILE_FILTER_BIN(QObject::tr("Binary Files (*.bin *.dat)")); +static const QString FILE_EXT_BIN_DEFAULT(".bin"); // Scalar Vector Graphics File Extensions Filter -static const QString FILE_FILTER_SVG(QObject::tr("SVG Files (*.svg)")); -static const QString FILE_EXT_SVG_DEFAULT(".svg"); +static const QString FILE_FILTER_SVG(QObject::tr("SVG Files (*.svg)")); +static const QString FILE_EXT_SVG_DEFAULT(".svg"); // Hex-Dump File Extension Filter -static const QString FILE_FILTER_HEX(QObject::tr("Hex Dump Files (*.dat *.bin)")); +static const QString FILE_FILTER_HEX(QObject::tr("Hex Dump Files (*.dat *.bin)")); // Dynamic/Shared Objects File Extension Filter -static const QString FILE_FILTER_DYN(QObject::tr("Extensions (*.so *.dylib *.dll)")); +static const QString FILE_FILTER_DYN(QObject::tr("Extensions (*.so *.dylib *.dll)")); enum FileDialogTypes { NoSpecificType, @@ -77,7 +77,7 @@ enum FileDialogTypes { OpenCertificateFile }; -class FileDialog : public QFileDialog +class FileDialog : public QFileDialog { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/FileExtensionManager.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/FileExtensionManager.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/FileExtensionManager.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/FileExtensionManager.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/FileExtensionManager.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/FileExtensionManager.h similarity index 85% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/FileExtensionManager.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/FileExtensionManager.h index 7e0156e..0e1bd21 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/FileExtensionManager.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/FileExtensionManager.h @@ -1,13 +1,13 @@ #ifndef FILEEXTENSIONMANAGER_H #define FILEEXTENSIONMANAGER_H - +#include "WBFZExchangePluginAPI.h" #include namespace Ui { class FileExtensionManager; } -class FileExtensionManager : public QDialog +class FileExtensionManager : public QDialog { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/FileExtensionManager.ui b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/FileExtensionManager.ui similarity index 93% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/FileExtensionManager.ui rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/FileExtensionManager.ui index 691d5b5..cff4281 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/FileExtensionManager.ui +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/FileExtensionManager.ui @@ -22,7 +22,7 @@ &Up - + :/icons/up:/icons/up @@ -33,7 +33,7 @@ &Down - + :/icons/down:/icons/down @@ -57,7 +57,7 @@ &Add - + :/icons/field_add:/icons/field_add @@ -68,7 +68,7 @@ &Remove - + :/icons/field_delete:/icons/field_delete @@ -114,7 +114,7 @@ - + diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/FilterLineEdit.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/FilterLineEdit.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/FilterLineEdit.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/FilterLineEdit.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/FilterLineEdit.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/FilterLineEdit.h similarity index 93% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/FilterLineEdit.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/FilterLineEdit.h index 5a7c16d..945a5c9 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/FilterLineEdit.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/FilterLineEdit.h @@ -1,13 +1,13 @@ #ifndef FILTERLINEEDIT_H #define FILTERLINEEDIT_H - +#include "WBFZExchangePluginAPI.h" #include #include class QTimer; class QKeyEvent; -class FilterLineEdit : public QLineEdit +class FilterLineEdit : public QLineEdit { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/FilterTableHeader.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/FilterTableHeader.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/FilterTableHeader.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/FilterTableHeader.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/FilterTableHeader.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/FilterTableHeader.h similarity index 96% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/FilterTableHeader.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/FilterTableHeader.h index ef64eaf..6b8c363 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/FilterTableHeader.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/FilterTableHeader.h @@ -1,6 +1,6 @@ #ifndef FILTERTABLEHEADER_H #define FILTERTABLEHEADER_H - +#include "WBFZExchangePluginAPI.h" #include #include diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/FindReplaceDialog.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/FindReplaceDialog.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/FindReplaceDialog.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/FindReplaceDialog.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/FindReplaceDialog.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/FindReplaceDialog.h similarity index 92% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/FindReplaceDialog.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/FindReplaceDialog.h index b4865d6..ee32beb 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/FindReplaceDialog.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/FindReplaceDialog.h @@ -1,6 +1,6 @@ #ifndef FindReplaceDialog_H #define FindReplaceDialog_H - +#include "WBFZExchangePluginAPI.h" #include class QAbstractButton; @@ -11,7 +11,7 @@ namespace Ui { class FindReplaceDialog; } -class FindReplaceDialog : public QDialog +class FindReplaceDialog : public QDialog { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/FindReplaceDialog.ui b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/FindReplaceDialog.ui similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/FindReplaceDialog.ui rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/FindReplaceDialog.ui diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/ForeignKeyEditorDelegate.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ForeignKeyEditorDelegate.cpp similarity index 98% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/ForeignKeyEditorDelegate.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ForeignKeyEditorDelegate.cpp index dd8bfc4..d467b9b 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/ForeignKeyEditorDelegate.cpp +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ForeignKeyEditorDelegate.cpp @@ -1,3 +1,4 @@ +#include "WBFZExchangePluginAPI.h" #include "sqlitedb.h" #include "ForeignKeyEditorDelegate.h" @@ -6,7 +7,7 @@ #include #include -class ForeignKeyEditor : public QWidget +class ForeignKeyEditor : public QWidget { Q_OBJECT @@ -187,4 +188,4 @@ void ForeignKeyEditorDelegate::updateEditorGeometry(QWidget* editor, const QStyl editor->setGeometry(option.rect); } -#include "ForeignKeyEditorDelegate.moc" +#include diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/ForeignKeyEditorDelegate.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ForeignKeyEditorDelegate.h similarity index 90% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/ForeignKeyEditorDelegate.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ForeignKeyEditorDelegate.h index 076706a..98e4fcd 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/ForeignKeyEditorDelegate.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ForeignKeyEditorDelegate.h @@ -1,6 +1,6 @@ #ifndef FOREIGNKEYDELEGATE_H #define FOREIGNKEYDELEGATE_H - +#include "WBFZExchangePluginAPI.h" #include #include #include @@ -13,7 +13,7 @@ namespace sqlb class Table; } -class ForeignKeyEditorDelegate : public QStyledItemDelegate +class ForeignKeyEditorDelegate : public QStyledItemDelegate { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/IconCache.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/IconCache.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/IconCache.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/IconCache.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/IconCache.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/IconCache.h similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/IconCache.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/IconCache.h diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/ImportCsvDialog.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ImportCsvDialog.cpp similarity index 99% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/ImportCsvDialog.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ImportCsvDialog.cpp index eb50838..4ff98f4 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/ImportCsvDialog.cpp +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ImportCsvDialog.cpp @@ -265,7 +265,7 @@ void ImportCsvDialog::updatePreview() if(i == 0) ui->tablePreview->setVerticalHeaderItem(static_cast(rowNum), new QTableWidgetItem(QString::number(rowNum + 1))); - // Add table item. Limit data length to a maximum character count to avoid a sluggish UI. And it's very unlikely that this + // Add table item. Limit data length to a maximum character count to avoid a sluggish ui-> And it's very unlikely that this // many characters are going to be needed anyway for a preview. uint64_t data_length = rowData.fields[i].data_length; if(data_length > 1024) diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/ImportCsvDialog.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ImportCsvDialog.h similarity index 95% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/ImportCsvDialog.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ImportCsvDialog.h index 6e7f92e..22e9edc 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/ImportCsvDialog.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ImportCsvDialog.h @@ -1,6 +1,6 @@ #ifndef IMPORTCSVDIALOG_H #define IMPORTCSVDIALOG_H - +#include "WBFZExchangePluginAPI.h" #include "csvparser.h" #include "sql/sqlitetypes.h" @@ -14,7 +14,7 @@ namespace Ui { class ImportCsvDialog; } -class ImportCsvDialog : public QDialog +class ImportCsvDialog : public QDialog { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/ImportCsvDialog.ui b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ImportCsvDialog.ui similarity index 99% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/ImportCsvDialog.ui rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ImportCsvDialog.ui index c470c8d..39817e5 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/ImportCsvDialog.ui +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ImportCsvDialog.ui @@ -291,7 +291,7 @@ Advanced - + :/icons/down:/icons/down @@ -500,7 +500,7 @@ tablePreview - + diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/Palette.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/Palette.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/Palette.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/Palette.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/Palette.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/Palette.h similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/Palette.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/Palette.h diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/PlotDock.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/PlotDock.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/PlotDock.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/PlotDock.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/PlotDock.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/PlotDock.h similarity index 97% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/PlotDock.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/PlotDock.h index 3ea88f6..f039998 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/PlotDock.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/PlotDock.h @@ -1,6 +1,6 @@ #ifndef PLOTDOCK_H #define PLOTDOCK_H - +#include "WBFZExchangePluginAPI.h" #include "Palette.h" #include @@ -18,7 +18,7 @@ namespace Ui { class PlotDock; } -class PlotDock : public QDialog +class PlotDock : public QDialog { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/PlotDock.ui b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/PlotDock.ui similarity index 98% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/PlotDock.ui rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/PlotDock.ui index 9a391bf..6d486cc 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/PlotDock.ui +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/PlotDock.ui @@ -291,7 +291,7 @@ Select the axes or axes labels to drag and zoom only in that orientation. - + :/icons/image_save:/icons/image_save @@ -314,7 +314,7 @@ Select the axes or axes labels to drag and zoom only in that orientation.Load all data and redraw plot - + :/icons/refresh:/icons/refresh @@ -335,7 +335,7 @@ Select the axes or axes labels to drag and zoom only in that orientation. - + diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/PreferencesDialog.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/PreferencesDialog.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/PreferencesDialog.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/PreferencesDialog.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/PreferencesDialog.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/PreferencesDialog.h similarity index 95% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/PreferencesDialog.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/PreferencesDialog.h index cb6defd..1c31e4d 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/PreferencesDialog.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/PreferencesDialog.h @@ -1,6 +1,6 @@ #ifndef PREFERENCESDIALOG_H #define PREFERENCESDIALOG_H - +#include "WBFZExchangePluginAPI.h" #include class QTreeWidgetItem; @@ -14,7 +14,7 @@ namespace Ui { class PreferencesDialog; } -class PreferencesDialog : public QDialog +class PreferencesDialog : public QDialog { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/PreferencesDialog.ui b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/PreferencesDialog.ui similarity index 99% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/PreferencesDialog.ui rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/PreferencesDialog.ui index 7c8b405..5d71b8b 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/PreferencesDialog.ui +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/PreferencesDialog.ui @@ -1605,7 +1605,7 @@ Can be set to 0 for disabling completion. Add extension - + :/icons/load_extension:/icons/load_extension @@ -1616,7 +1616,7 @@ Can be set to 0 for disabling completion. Remove extension - + :/icons/remove_extension:/icons/remove_extension @@ -1738,7 +1738,7 @@ Can be set to 0 for disabling completion. - + :/icons/trigger_create:/icons/trigger_create @@ -1749,7 +1749,7 @@ Can be set to 0 for disabling completion. ... - + :/icons/trigger_delete:/icons/trigger_delete @@ -1977,7 +1977,7 @@ Can be set to 0 for disabling completion. tableCaCerts - + diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/ProxyDialog.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ProxyDialog.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/ProxyDialog.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ProxyDialog.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/ProxyDialog.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ProxyDialog.h similarity index 83% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/ProxyDialog.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ProxyDialog.h index bdc5c03..4a85fd7 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/ProxyDialog.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ProxyDialog.h @@ -1,13 +1,13 @@ #ifndef PROXYDIALOG_H #define PROXYDIALOG_H - +#include "WBFZExchangePluginAPI.h" #include namespace Ui { class ProxyDialog; } -class ProxyDialog : public QDialog +class ProxyDialog : public QDialog { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/ProxyDialog.ui b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ProxyDialog.ui similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/ProxyDialog.ui rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/ProxyDialog.ui diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteCommitsModel.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteCommitsModel.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteCommitsModel.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteCommitsModel.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteCommitsModel.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteCommitsModel.h similarity index 92% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteCommitsModel.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteCommitsModel.h index d2b540c..c70baaf 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteCommitsModel.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteCommitsModel.h @@ -1,13 +1,13 @@ #ifndef REMOTECOMMITSMODEL_H #define REMOTECOMMITSMODEL_H - +#include "WBFZExchangePluginAPI.h" #include #include class QTreeWidgetItem; -class RemoteCommitsModel : public QAbstractItemModel +class RemoteCommitsModel : public QAbstractItemModel { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteDatabase.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteDatabase.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteDatabase.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteDatabase.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteDatabase.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteDatabase.h similarity index 97% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteDatabase.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteDatabase.h index c60f454..4ac1fbe 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteDatabase.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteDatabase.h @@ -1,6 +1,6 @@ #ifndef REMOTEDATABASE_H #define REMOTEDATABASE_H - +#include "WBFZExchangePluginAPI.h" #include #include @@ -8,7 +8,7 @@ struct sqlite3; -class RemoteDatabase : public QObject +class RemoteDatabase : public QObject { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteDock.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteDock.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteDock.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteDock.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteDock.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteDock.h similarity index 97% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteDock.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteDock.h index 199a28f..f22164c 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteDock.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteDock.h @@ -1,6 +1,6 @@ #ifndef REMOTEDOCK_H #define REMOTEDOCK_H - +#include "WBFZExchangePluginAPI.h" #include #include "RemoteDatabase.h" @@ -15,7 +15,7 @@ namespace Ui { class RemoteDock; } -class RemoteDock : public QDialog +class RemoteDock : public QDialog { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteDock.ui b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteDock.ui similarity index 97% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteDock.ui rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteDock.ui index e0e03c5..c7825ae 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteDock.ui +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteDock.ui @@ -59,7 +59,7 @@ Push currently opened database to server - + :/icons/push_database:/icons/push_database @@ -365,7 +365,7 @@ - + :/icons/close:/icons/close @@ -377,7 +377,7 @@ - + :/icons/browser_open:/icons/browser_open @@ -389,7 +389,7 @@ - + :/icons/clone_database:/icons/clone_database @@ -401,7 +401,7 @@ - + :/icons/refresh:/icons/refresh @@ -416,7 +416,7 @@ - + :/icons/clone_database:/icons/clone_database @@ -431,7 +431,7 @@ - + :/icons/db_open:/icons/db_open @@ -463,7 +463,7 @@ - + :/icons/db_revert:/icons/db_revert @@ -483,7 +483,7 @@ - + :/icons/push_database:/icons/push_database @@ -505,7 +505,7 @@ buttonNoCertBack - + diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteLocalFilesModel.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteLocalFilesModel.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteLocalFilesModel.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteLocalFilesModel.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteLocalFilesModel.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteLocalFilesModel.h similarity index 94% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteLocalFilesModel.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteLocalFilesModel.h index ee6e478..4f60b22 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteLocalFilesModel.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteLocalFilesModel.h @@ -1,6 +1,6 @@ #ifndef REMOTELOCALFILESMODEL_H #define REMOTELOCALFILESMODEL_H - +#include "WBFZExchangePluginAPI.h" #include #include @@ -9,7 +9,7 @@ class RemoteDatabase; class QTreeWidgetItem; -class RemoteLocalFilesModel : public QAbstractItemModel +class RemoteLocalFilesModel : public QAbstractItemModel { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteModel.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteModel.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteModel.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteModel.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteModel.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteModel.h similarity index 97% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteModel.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteModel.h index dacabeb..7bf82c0 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteModel.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteModel.h @@ -1,6 +1,6 @@ #ifndef REMOTEMODEL_H #define REMOTEMODEL_H - +#include "WBFZExchangePluginAPI.h" #include #include @@ -61,9 +61,9 @@ private: bool m_fetchedDirectoryList; }; -class RemoteModel : public QAbstractItemModel +class RemoteModel : public QAbstractItemModel { - Q_OBJECT + Q_OBJECT public: explicit RemoteModel(QObject* parent); diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteNetwork.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteNetwork.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteNetwork.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteNetwork.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteNetwork.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteNetwork.h similarity index 97% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteNetwork.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteNetwork.h index 1a8265a..1d3871c 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/RemoteNetwork.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemoteNetwork.h @@ -1,6 +1,6 @@ #ifndef REMOTENETWORK_H #define REMOTENETWORK_H - +#include "WBFZExchangePluginAPI.h" #include #include @@ -15,9 +15,9 @@ class QNetworkRequest; class QHttpMultiPart; class QFile; -class RemoteNetwork : public QObject +class RemoteNetwork : public QObject { - Q_OBJECT + Q_OBJECT public: static RemoteNetwork& get() diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/RemotePushDialog.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemotePushDialog.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/RemotePushDialog.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemotePushDialog.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/RemotePushDialog.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemotePushDialog.h similarity index 92% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/RemotePushDialog.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemotePushDialog.h index e2c6b36..d12d4d8 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/RemotePushDialog.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemotePushDialog.h @@ -1,6 +1,6 @@ #ifndef REMOTEPUSHDIALOG_H #define REMOTEPUSHDIALOG_H - +#include "WBFZExchangePluginAPI.h" #include class QRegExpValidator; @@ -9,7 +9,7 @@ namespace Ui { class RemotePushDialog; } -class RemotePushDialog : public QDialog +class RemotePushDialog : public QDialog { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/RemotePushDialog.ui b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemotePushDialog.ui similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/RemotePushDialog.ui rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RemotePushDialog.ui diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/RowCache.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RowCache.h similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/RowCache.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RowCache.h diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/RowLoader.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RowLoader.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/RowLoader.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RowLoader.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/RowLoader.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RowLoader.h similarity index 97% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/RowLoader.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RowLoader.h index 772834e..d7298f7 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/RowLoader.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RowLoader.h @@ -1,6 +1,6 @@ #ifndef ROW_LOADER_H #define ROW_LOADER_H - +#include "WBFZExchangePluginAPI.h" #include #include #include @@ -16,7 +16,7 @@ struct sqlite3; -class RowLoader : public QThread +class RowLoader : public QThread { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/RunSql.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RunSql.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/RunSql.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RunSql.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/RunSql.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RunSql.h similarity index 97% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/RunSql.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RunSql.h index 15eb615..4b1570f 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/RunSql.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/RunSql.h @@ -1,6 +1,6 @@ #ifndef RUNSQL_H #define RUNSQL_H - +#include "WBFZExchangePluginAPI.h" #include #include #include @@ -9,7 +9,7 @@ class DBBrowserDB; struct sqlite3; -class RunSql : public QThread +class RunSql : public QThread { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/SelectItemsPopup.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/SelectItemsPopup.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/SelectItemsPopup.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/SelectItemsPopup.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/SelectItemsPopup.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/SelectItemsPopup.h similarity index 91% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/SelectItemsPopup.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/SelectItemsPopup.h index e7fb9e9..6b39056 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/SelectItemsPopup.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/SelectItemsPopup.h @@ -1,6 +1,6 @@ #ifndef SELECTITEMS_H #define SELECTITEMS_H - +#include "WBFZExchangePluginAPI.h" #include #include @@ -13,7 +13,7 @@ namespace Ui { class SelectItemsPopup; } -class SelectItemsPopup : public QDialog +class SelectItemsPopup : public QDialog { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/SelectItemsPopup.ui b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/SelectItemsPopup.ui similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/SelectItemsPopup.ui rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/SelectItemsPopup.ui diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/Settings.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/Settings.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/Settings.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/Settings.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/Settings.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/Settings.h similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/Settings.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/Settings.h diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/SqlExecutionArea.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/SqlExecutionArea.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/SqlExecutionArea.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/SqlExecutionArea.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/SqlExecutionArea.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/SqlExecutionArea.h similarity index 95% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/SqlExecutionArea.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/SqlExecutionArea.h index fa67cf9..0907cbc 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/SqlExecutionArea.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/SqlExecutionArea.h @@ -1,6 +1,6 @@ #ifndef SQLEXECUTIONAREA_H #define SQLEXECUTIONAREA_H - +#include "WBFZExchangePluginAPI.h" #include #include @@ -15,9 +15,9 @@ namespace Ui { class SqlExecutionArea; } -class SqlExecutionArea : public QWidget +class SqlExecutionArea : public QWidget { - Q_OBJECT + Q_OBJECT public: explicit SqlExecutionArea(DBBrowserDB& _db, QWidget* parent = nullptr); diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/SqlExecutionArea.ui b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/SqlExecutionArea.ui similarity index 97% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/SqlExecutionArea.ui rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/SqlExecutionArea.ui index 1a187da..ec913d5 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/SqlExecutionArea.ui +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/SqlExecutionArea.ui @@ -84,7 +84,7 @@ Find previous match with wrapping - + :/icons/up:/icons/up @@ -144,7 +144,7 @@ Find next match with wrapping - + :/icons/down:/icons/down @@ -187,7 +187,7 @@ Close Find Bar - + :/icons/close:/icons/close @@ -286,7 +286,7 @@ wholeWordsCheckBox - + diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/SqlUiLexer.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/SqlUiLexer.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/SqlUiLexer.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/SqlUiLexer.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/SqlUiLexer.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/SqlUiLexer.h similarity index 92% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/SqlUiLexer.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/SqlUiLexer.h index 6cda07e..0ca7ef7 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/SqlUiLexer.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/SqlUiLexer.h @@ -1,13 +1,13 @@ #ifndef SQLUILEXER_H #define SQLUILEXER_H - +#include "WBFZExchangePluginAPI.h" #include "Qsci/qscilexersql.h" #include class QsciAPIs; -class SqlUiLexer : public QsciLexerSQL +class SqlUiLexer : public QsciLexerSQL { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/SqliteDBMainWindow.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/SqliteDBMainWindow.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/SqliteDBMainWindow.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/SqliteDBMainWindow.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/SqliteDBMainWindow.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/SqliteDBMainWindow.h similarity index 98% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/SqliteDBMainWindow.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/SqliteDBMainWindow.h index 5bcae4f..6ca3dc4 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/SqliteDBMainWindow.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/SqliteDBMainWindow.h @@ -1,6 +1,6 @@ #ifndef MAINWINDOW_H #define MAINWINDOW_H - +#include "WBFZExchangePluginAPI.h" #include "sqlitedb.h" #include @@ -26,7 +26,7 @@ namespace Ui { class SqliteDBMainWindow; } -class SqliteDBMainWindow : public QMainWindow +class SqliteDBMainWindow : public QMainWindow { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/SqliteDBMainWindow.ui b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/SqliteDBMainWindow.ui similarity index 97% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/SqliteDBMainWindow.ui rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/SqliteDBMainWindow.ui index 49a4af5..a2df529 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/SqliteDBMainWindow.ui +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/SqliteDBMainWindow.ui @@ -14,7 +14,7 @@ DB Browser for SQLite - + :/icons/appicon:/icons/appicon @@ -37,7 +37,7 @@ - 3 + 1 true @@ -174,8 +174,8 @@ You can drag SQL statements from an object row and drop them into other applicat 0 0 - 739 - 489 + 688 + 501 @@ -744,7 +744,7 @@ You can drag SQL statements from an object row and drop them into other applicat 0 0 1037 - 22 + 26 @@ -1097,7 +1097,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed - + :/icons/db_new:/icons/db_new @@ -1121,7 +1121,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed - + :/icons/db_open:/icons/db_open @@ -1148,7 +1148,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed false - + :/icons/close:/icons/close @@ -1175,7 +1175,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed false - + :/icons/db_revert:/icons/db_revert @@ -1199,7 +1199,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed false - + :/icons/db_save:/icons/db_save @@ -1313,7 +1313,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed false - + :/icons/table_create:/icons/table_create @@ -1331,7 +1331,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed false - + :/icons/table_delete:/icons/table_delete @@ -1352,7 +1352,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed false - + :/icons/table_modify:/icons/table_modify @@ -1370,7 +1370,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed false - + :/icons/index_create:/icons/index_create @@ -1385,7 +1385,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed - + :/icons/settings:/icons/settings @@ -1406,7 +1406,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed true - + :/icons/toolbar:/icons/toolbar @@ -1421,7 +1421,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed - + :/icons/whatis:/icons/whatis @@ -1449,7 +1449,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed - + :/icons/open_tab:/icons/open_tab @@ -1464,7 +1464,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed - + :/icons/run:/icons/run @@ -1482,7 +1482,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed - + :/icons/document_open:/icons/document_open @@ -1494,7 +1494,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed - + :/icons/save_sql:/icons/save_sql @@ -1506,7 +1506,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed false - + :/icons/load_extension:/icons/load_extension @@ -1521,7 +1521,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed - + :/icons/run_line:/icons/run_line @@ -1553,7 +1553,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed - + :/icons/browser_open:/icons/browser_open @@ -1568,7 +1568,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed - + :/icons/browser_open:/icons/browser_open @@ -1580,7 +1580,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed - + :/icons/browser_open:/icons/browser_open @@ -1592,7 +1592,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed - + :/icons/browser_open:/icons/browser_open @@ -1604,7 +1604,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed - + :/icons/browser_open:/icons/browser_open @@ -1616,7 +1616,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed - + :/icons/project_save:/icons/project_save @@ -1637,7 +1637,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed - + :/icons/project_open:/icons/project_open @@ -1661,7 +1661,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed false - + :/icons/db_attach:/icons/db_attach @@ -1685,7 +1685,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed - + :/icons/encryption:/icons/encryption @@ -1697,7 +1697,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed - + :/icons/save_sql:/icons/save_sql @@ -1709,7 +1709,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed - + :/icons/save_sql:/icons/save_sql @@ -1724,7 +1724,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed - + :/icons/table:/icons/table @@ -1733,7 +1733,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed - + :/icons/copy:/icons/copy @@ -1745,7 +1745,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed - + :/icons/browser_open:/icons/browser_open @@ -1768,7 +1768,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed - + :/icons/db_open:/icons/db_open @@ -1795,7 +1795,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed - + :/icons/save_table:/icons/save_table @@ -1813,7 +1813,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed true - + :/icons/find:/icons/find @@ -1840,7 +1840,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed false - + :/icons/text_replace:/icons/text_replace @@ -1883,7 +1883,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed false - + :/icons/toolbar:/icons/toolbar @@ -1901,7 +1901,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed true - + :/icons/toolbar:/icons/toolbar @@ -1910,7 +1910,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed - + :/icons/db_open:/icons/db_open @@ -2008,7 +2008,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed - + :/icons/print:/icons/print @@ -2035,7 +2035,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed false - + :/icons/print:/icons/print @@ -2062,7 +2062,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed - + :/icons/comment_block:/icons/comment_block @@ -2086,7 +2086,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed - + :/icons/cancel:/icons/cancel @@ -2101,7 +2101,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed - + :/icons/project_save_as:/icons/project_save_as @@ -2119,7 +2119,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed - + :/icons/save_all:/icons/save_all @@ -2140,7 +2140,7 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed - + :/icons/table:/icons/table @@ -2196,7 +2196,8 @@ You can drag SQL statements from the Schema column and drop them into the SQL ed tabSqlAreas - + + diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/SqliteDBProcessmain.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/SqliteDBProcessmain.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/SqliteDBProcessmain.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/SqliteDBProcessmain.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/TableBrowser.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/TableBrowser.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/TableBrowser.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/TableBrowser.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/TableBrowser.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/TableBrowser.h similarity index 98% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/TableBrowser.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/TableBrowser.h index 9d94aa6..9925132 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/TableBrowser.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/TableBrowser.h @@ -1,6 +1,6 @@ #ifndef TABLEBROWSER_H #define TABLEBROWSER_H - +#include "WBFZExchangePluginAPI.h" #include "CondFormat.h" #include "PlotDock.h" #include "sql/Query.h" @@ -77,7 +77,7 @@ struct BrowseDataTableSettings } }; -class TableBrowser : public QWidget +class TableBrowser : public QWidget { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/TableBrowser.ui b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/TableBrowser.ui similarity index 96% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/TableBrowser.ui rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/TableBrowser.ui index ea82b1f..e354710 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/TableBrowser.ui +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/TableBrowser.ui @@ -269,7 +269,7 @@ Find previous match with wrapping - + :/icons/up:/icons/up @@ -286,7 +286,7 @@ Find next match with wrapping - + :/icons/down:/icons/down @@ -349,7 +349,7 @@ Close Find Bar - + :/icons/close:/icons/close @@ -462,7 +462,7 @@ |< - + :/icons/resultset_first.png:/icons/resultset_first.png @@ -482,7 +482,7 @@ < - + :/icons/resultset_previous.png:/icons/resultset_previous.png @@ -509,7 +509,7 @@ > - + :/icons/run:/icons/run @@ -529,7 +529,7 @@ >| - + :/icons/run_line:/icons/run_line @@ -608,7 +608,7 @@ - + :/icons/add_record:/icons/add_record @@ -626,7 +626,7 @@ - + :/icons/delete_record:/icons/delete_record @@ -644,7 +644,7 @@ - + :/icons/add_record:/icons/add_record @@ -698,7 +698,7 @@ - + :/icons/save_table:/icons/save_table @@ -748,7 +748,7 @@ - + :/icons/clear_filters:/icons/clear_filters @@ -766,7 +766,7 @@ - + :/icons/clear_sorting:/icons/clear_sorting @@ -784,7 +784,7 @@ - + :/icons/print:/icons/print @@ -808,7 +808,7 @@ - + :/icons/refresh:/icons/refresh @@ -832,7 +832,7 @@ true - + :/icons/find:/icons/find @@ -847,7 +847,7 @@ true - + :/icons/text_bold.png:/icons/text_bold.png @@ -865,7 +865,7 @@ true - + :/icons/text_italic.png:/icons/text_italic.png @@ -880,7 +880,7 @@ true - + :/icons/text_underline.png:/icons/text_underline.png @@ -898,7 +898,7 @@ true - + :/icons/text_align_right.png:/icons/text_align_right.png @@ -913,7 +913,7 @@ true - + :/icons/text_align_left.png:/icons/text_align_left.png @@ -928,7 +928,7 @@ true - + :/icons/text_align_center.png:/icons/text_align_center.png @@ -943,7 +943,7 @@ true - + :/icons/text_align_justify.png:/icons/text_align_justify.png @@ -955,7 +955,7 @@ - + :/icons/edit_cond_formats:/icons/edit_cond_formats @@ -970,7 +970,7 @@ - + :/icons/clear_cond_formats:/icons/clear_cond_formats @@ -988,7 +988,7 @@ - + :/icons/foreground_color:/icons/foreground_color @@ -1000,7 +1000,7 @@ - + :/icons/background_color:/icons/background_color @@ -1015,7 +1015,7 @@ true - + :/icons/cond_formats:/icons/cond_formats @@ -1044,7 +1044,7 @@ true - + :/icons/text_replace:/icons/text_replace @@ -1095,7 +1095,7 @@ editGoto - + diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/VacuumDialog.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/VacuumDialog.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/VacuumDialog.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/VacuumDialog.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/VacuumDialog.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/VacuumDialog.h similarity index 83% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/VacuumDialog.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/VacuumDialog.h index 3248388..6e4efa8 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/VacuumDialog.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/VacuumDialog.h @@ -1,6 +1,6 @@ #ifndef VACUUMDIALOG_H #define VACUUMDIALOG_H - +#include "WBFZExchangePluginAPI.h" #include namespace Ui { @@ -9,7 +9,7 @@ class VacuumDialog; class DBBrowserDB; -class VacuumDialog : public QDialog +class VacuumDialog : public QDialog { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/VacuumDialog.ui b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/VacuumDialog.ui similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/VacuumDialog.ui rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/VacuumDialog.ui diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/app.plist b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/app.plist similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/app.plist rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/app.plist diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/csvparser.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/csvparser.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/csvparser.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/csvparser.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/csvparser.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/csvparser.h similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/csvparser.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/csvparser.h diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/docktextedit.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/docktextedit.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/docktextedit.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/docktextedit.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/docktextedit.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/docktextedit.h similarity index 91% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/docktextedit.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/docktextedit.h index c5d3236..f6719a4 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/docktextedit.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/docktextedit.h @@ -1,6 +1,6 @@ #ifndef DOCKTEXTEDIT_H #define DOCKTEXTEDIT_H - +#include "WBFZExchangePluginAPI.h" #include "ExtendedScintilla.h" class QsciLexerJSON; @@ -10,7 +10,7 @@ class QsciLexerXML; * @brief The DockTextEdit class * This class is based on our Extended QScintilla widget */ -class DockTextEdit : public ExtendedScintilla +class DockTextEdit : public ExtendedScintilla { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/extensions/extension-formats.c b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/extensions/extension-formats.c similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/extensions/extension-formats.c rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/extensions/extension-formats.c diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/extensions/extension-formats.def b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/extensions/extension-formats.def similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/extensions/extension-formats.def rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/extensions/extension-formats.def diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/extensions/extension-functions.c b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/extensions/extension-functions.c similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/extensions/extension-functions.c rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/extensions/extension-functions.c diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/extensions/extension-functions.def b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/extensions/extension-functions.def similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/extensions/extension-functions.def rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/extensions/extension-functions.def diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/i18n.pri b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/i18n.pri similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/i18n.pri rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/i18n.pri diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/application_go.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/application_go.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/application_go.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/application_go.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/application_link.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/application_link.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/application_link.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/application_link.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/application_side_list.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/application_side_list.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/application_side_list.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/application_side_list.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/bullet_arrow_bottom.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/bullet_arrow_bottom.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/bullet_arrow_bottom.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/bullet_arrow_bottom.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/bullet_arrow_down.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/bullet_arrow_down.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/bullet_arrow_down.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/bullet_arrow_down.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/bullet_arrow_top.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/bullet_arrow_top.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/bullet_arrow_top.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/bullet_arrow_top.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/bullet_arrow_up.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/bullet_arrow_up.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/bullet_arrow_up.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/bullet_arrow_up.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/cancel.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/cancel.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/cancel.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/cancel.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/chart_curve.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/chart_curve.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/chart_curve.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/chart_curve.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/clear_filters.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/clear_filters.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/clear_filters.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/clear_filters.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/clear_sorting.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/clear_sorting.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/clear_sorting.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/clear_sorting.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/cog.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/cog.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/cog.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/cog.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/cog_go.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/cog_go.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/cog_go.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/cog_go.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/color_swatch.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/color_swatch.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/color_swatch.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/color_swatch.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/comment_block.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/comment_block.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/comment_block.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/comment_block.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/cross.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/cross.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/cross.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/cross.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/database.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/database.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/database.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/database.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/database_add.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/database_add.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/database_add.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/database_add.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/database_go.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/database_go.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/database_go.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/database_go.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/database_link.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/database_link.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/database_link.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/database_link.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/database_refresh.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/database_refresh.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/database_refresh.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/database_refresh.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/database_save.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/database_save.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/database_save.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/database_save.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/document-link.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/document-link.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/document-link.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/document-link.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/document-open.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/document-open.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/document-open.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/document-open.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/edit_cond_formats.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/edit_cond_formats.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/edit_cond_formats.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/edit_cond_formats.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/filter.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/filter.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/filter.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/filter.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/folder.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/folder.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/folder.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/folder.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/folder_user.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/folder_user.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/folder_user.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/folder_user.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/help.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/help.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/help.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/help.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/hourglass.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/hourglass.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/hourglass.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/hourglass.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/internet-web-browser.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/internet-web-browser.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/internet-web-browser.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/internet-web-browser.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/key.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/key.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/key.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/key.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/layout_sidebar.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/layout_sidebar.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/layout_sidebar.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/layout_sidebar.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/package.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/package.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/package.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/package.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/package_go.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/package_go.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/package_go.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/package_go.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/package_rename.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/package_rename.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/package_rename.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/package_rename.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/package_save.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/package_save.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/package_save.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/package_save.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/page_add.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/page_add.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/page_add.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/page_add.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/page_copy.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/page_copy.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/page_copy.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/page_copy.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/page_copy_sql.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/page_copy_sql.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/page_copy_sql.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/page_copy_sql.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/page_delete.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/page_delete.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/page_delete.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/page_delete.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/page_edit.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/page_edit.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/page_edit.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/page_edit.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/page_find.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/page_find.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/page_find.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/page_find.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/page_foreign_key.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/page_foreign_key.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/page_foreign_key.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/page_foreign_key.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/page_green.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/page_green.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/page_green.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/page_green.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/page_key.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/page_key.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/page_key.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/page_key.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/page_paintbrush.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/page_paintbrush.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/page_paintbrush.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/page_paintbrush.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/page_paste.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/page_paste.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/page_paste.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/page_paste.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/page_save.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/page_save.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/page_save.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/page_save.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/page_white_copy.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/page_white_copy.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/page_white_copy.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/page_white_copy.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/page_white_database.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/page_white_database.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/page_white_database.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/page_white_database.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/page_white_text.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/page_white_text.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/page_white_text.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/page_white_text.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/picture.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/picture.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/picture.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/picture.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/picture_add.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/picture_add.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/picture_add.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/picture_add.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/picture_delete.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/picture_delete.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/picture_delete.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/picture_delete.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/picture_edit.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/picture_edit.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/picture_edit.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/picture_edit.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/picture_save.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/picture_save.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/picture_save.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/picture_save.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/plugin_add.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/plugin_add.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/plugin_add.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/plugin_add.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/plugin_delete.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/plugin_delete.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/plugin_delete.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/plugin_delete.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/printer.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/printer.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/printer.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/printer.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/resultset_first.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/resultset_first.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/resultset_first.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/resultset_first.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/resultset_last.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/resultset_last.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/resultset_last.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/resultset_last.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/resultset_next.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/resultset_next.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/resultset_next.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/resultset_next.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/resultset_previous.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/resultset_previous.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/resultset_previous.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/resultset_previous.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/save_all.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/save_all.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/save_all.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/save_all.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/script.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/script.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/script.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/script.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/script_add.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/script_add.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/script_add.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/script_add.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/script_delete.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/script_delete.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/script_delete.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/script_delete.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/script_edit.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/script_edit.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/script_edit.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/script_edit.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/server_add.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/server_add.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/server_add.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/server_add.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/server_go.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/server_go.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/server_go.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/server_go.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/sqlitebrowser.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/sqlitebrowser.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/sqlitebrowser.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/sqlitebrowser.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/style.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/style.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/style.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/style.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/style_add.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/style_add.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/style_add.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/style_add.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/style_delete.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/style_delete.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/style_delete.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/style_delete.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/style_edit.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/style_edit.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/style_edit.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/style_edit.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/tab.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/tab.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/tab.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/tab.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/tab_add.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/tab_add.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/tab_add.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/tab_add.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/table.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/table.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/table.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/table.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/table_add.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/table_add.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/table_add.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/table_add.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/table_delete.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/table_delete.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/table_delete.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/table_delete.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/table_edit.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/table_edit.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/table_edit.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/table_edit.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/table_row_delete.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/table_row_delete.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/table_row_delete.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/table_row_delete.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/table_row_insert.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/table_row_insert.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/table_row_insert.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/table_row_insert.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/table_save.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/table_save.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/table_save.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/table_save.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/tag_blue.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/tag_blue.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/tag_blue.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/tag_blue.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/tag_blue_add.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/tag_blue_add.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/tag_blue_add.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/tag_blue_add.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/tag_blue_delete.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/tag_blue_delete.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/tag_blue_delete.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/tag_blue_delete.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/tag_blue_edit.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/tag_blue_edit.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/tag_blue_edit.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/tag_blue_edit.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/text_align_center.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/text_align_center.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/text_align_center.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/text_align_center.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/text_align_justify.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/text_align_justify.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/text_align_justify.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/text_align_justify.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/text_align_left.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/text_align_left.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/text_align_left.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/text_align_left.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/text_align_right.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/text_align_right.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/text_align_right.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/text_align_right.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/text_bold.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/text_bold.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/text_bold.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/text_bold.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/text_indent.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/text_indent.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/text_indent.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/text_indent.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/text_italic.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/text_italic.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/text_italic.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/text_italic.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/text_paintbrush.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/text_paintbrush.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/text_paintbrush.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/text_paintbrush.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/text_replace.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/text_replace.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/text_replace.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/text_replace.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/text_underline.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/text_underline.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/text_underline.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/text_underline.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/textfield_delete.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/textfield_delete.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/textfield_delete.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/textfield_delete.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/view-refresh.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/view-refresh.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/view-refresh.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/view-refresh.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/wrench.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/wrench.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/icons/wrench.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/icons/wrench.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/macapp.icns b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/macapp.icns similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/macapp.icns rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/macapp.icns diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/os2app.rc b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/os2app.rc similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/os2app.rc rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/os2app.rc diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/LICENSE.md b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/LICENSE.md similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/LICENSE.md rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/LICENSE.md diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/Hmovetoolbar.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/Hmovetoolbar.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/Hmovetoolbar.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/Hmovetoolbar.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/Hsepartoolbar.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/Hsepartoolbar.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/Hsepartoolbar.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/Hsepartoolbar.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/Vmovetoolbar.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/Vmovetoolbar.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/Vmovetoolbar.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/Vmovetoolbar.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/Vsepartoolbar.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/Vsepartoolbar.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/Vsepartoolbar.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/Vsepartoolbar.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_down.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_down.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_down.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_down.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_down@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_down@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_down@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_down@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_down_disabled.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_down_disabled.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_down_disabled.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_down_disabled.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_down_disabled@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_down_disabled@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_down_disabled@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_down_disabled@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_down_focus.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_down_focus.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_down_focus.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_down_focus.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_down_focus@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_down_focus@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_down_focus@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_down_focus@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_down_pressed.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_down_pressed.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_down_pressed.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_down_pressed.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_down_pressed@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_down_pressed@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_down_pressed@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_down_pressed@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_left.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_left.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_left.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_left.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_left@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_left@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_left@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_left@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_left_disabled.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_left_disabled.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_left_disabled.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_left_disabled.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_left_disabled@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_left_disabled@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_left_disabled@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_left_disabled@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_left_focus.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_left_focus.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_left_focus.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_left_focus.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_left_focus@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_left_focus@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_left_focus@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_left_focus@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_left_pressed.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_left_pressed.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_left_pressed.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_left_pressed.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_left_pressed@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_left_pressed@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_left_pressed@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_left_pressed@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_right.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_right.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_right.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_right.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_right@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_right@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_right@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_right@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_right_disabled.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_right_disabled.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_right_disabled.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_right_disabled.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_right_disabled@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_right_disabled@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_right_disabled@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_right_disabled@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_right_focus.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_right_focus.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_right_focus.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_right_focus.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_right_focus@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_right_focus@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_right_focus@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_right_focus@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_right_pressed.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_right_pressed.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_right_pressed.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_right_pressed.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_right_pressed@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_right_pressed@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_right_pressed@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_right_pressed@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_up.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_up.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_up.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_up.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_up@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_up@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_up@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_up@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_up_disabled.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_up_disabled.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_up_disabled.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_up_disabled.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_up_disabled@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_up_disabled@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_up_disabled@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_up_disabled@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_up_focus.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_up_focus.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_up_focus.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_up_focus.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_up_focus@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_up_focus@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_up_focus@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_up_focus@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_up_pressed.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_up_pressed.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_up_pressed.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_up_pressed.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_up_pressed@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_up_pressed@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/arrow_up_pressed@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/arrow_up_pressed@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/base_icon.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/base_icon.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/base_icon.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/base_icon.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/base_icon@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/base_icon@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/base_icon@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/base_icon@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/base_icon_disabled.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/base_icon_disabled.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/base_icon_disabled.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/base_icon_disabled.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/base_icon_disabled@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/base_icon_disabled@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/base_icon_disabled@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/base_icon_disabled@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/base_icon_focus.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/base_icon_focus.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/base_icon_focus.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/base_icon_focus.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/base_icon_focus@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/base_icon_focus@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/base_icon_focus@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/base_icon_focus@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/base_icon_pressed.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/base_icon_pressed.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/base_icon_pressed.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/base_icon_pressed.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/base_icon_pressed@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/base_icon_pressed@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/base_icon_pressed@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/base_icon_pressed@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_closed-on.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_closed-on.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_closed-on.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_closed-on.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_closed.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_closed.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_closed.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_closed.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_closed@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_closed@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_closed@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_closed@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_closed_disabled.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_closed_disabled.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_closed_disabled.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_closed_disabled.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_closed_disabled@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_closed_disabled@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_closed_disabled@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_closed_disabled@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_closed_focus.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_closed_focus.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_closed_focus.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_closed_focus.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_closed_focus@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_closed_focus@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_closed_focus@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_closed_focus@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_closed_pressed.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_closed_pressed.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_closed_pressed.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_closed_pressed.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_closed_pressed@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_closed_pressed@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_closed_pressed@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_closed_pressed@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_end.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_end.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_end.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_end.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_end@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_end@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_end@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_end@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_end_disabled.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_end_disabled.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_end_disabled.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_end_disabled.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_end_disabled@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_end_disabled@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_end_disabled@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_end_disabled@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_end_focus.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_end_focus.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_end_focus.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_end_focus.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_end_focus@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_end_focus@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_end_focus@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_end_focus@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_end_pressed.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_end_pressed.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_end_pressed.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_end_pressed.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_end_pressed@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_end_pressed@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_end_pressed@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_end_pressed@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_line.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_line.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_line.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_line.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_line@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_line@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_line@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_line@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_line_disabled.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_line_disabled.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_line_disabled.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_line_disabled.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_line_disabled@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_line_disabled@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_line_disabled@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_line_disabled@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_line_focus.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_line_focus.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_line_focus.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_line_focus.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_line_focus@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_line_focus@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_line_focus@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_line_focus@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_line_pressed.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_line_pressed.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_line_pressed.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_line_pressed.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_line_pressed@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_line_pressed@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_line_pressed@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_line_pressed@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_more.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_more.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_more.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_more.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_more@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_more@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_more@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_more@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_more_disabled.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_more_disabled.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_more_disabled.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_more_disabled.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_more_disabled@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_more_disabled@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_more_disabled@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_more_disabled@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_more_focus.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_more_focus.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_more_focus.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_more_focus.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_more_focus@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_more_focus@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_more_focus@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_more_focus@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_more_pressed.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_more_pressed.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_more_pressed.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_more_pressed.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_more_pressed@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_more_pressed@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_more_pressed@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_more_pressed@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_open-on.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_open-on.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_open-on.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_open-on.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_open.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_open.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_open.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_open.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_open@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_open@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_open@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_open@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_open_disabled.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_open_disabled.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_open_disabled.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_open_disabled.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_open_disabled@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_open_disabled@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_open_disabled@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_open_disabled@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_open_focus.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_open_focus.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_open_focus.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_open_focus.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_open_focus@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_open_focus@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_open_focus@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_open_focus@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_open_pressed.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_open_pressed.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_open_pressed.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_open_pressed.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_open_pressed@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_open_pressed@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/branch_open_pressed@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/branch_open_pressed@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked_disabled.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked_disabled.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked_disabled.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked_disabled.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked_disabled@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked_disabled@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked_disabled@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked_disabled@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked_focus.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked_focus.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked_focus.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked_focus.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked_focus@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked_focus@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked_focus@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked_focus@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked_pressed.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked_pressed.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked_pressed.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked_pressed.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked_pressed@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked_pressed@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked_pressed@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_checked_pressed@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate_disabled.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate_disabled.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate_disabled.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate_disabled.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate_disabled@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate_disabled@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate_disabled@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate_disabled@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate_focus.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate_focus.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate_focus.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate_focus.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate_focus@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate_focus@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate_focus@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate_focus@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate_pressed.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate_pressed.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate_pressed.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate_pressed.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate_pressed@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate_pressed@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate_pressed@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_indeterminate_pressed@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked_disabled.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked_disabled.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked_disabled.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked_disabled.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked_disabled@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked_disabled@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked_disabled@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked_disabled@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked_focus.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked_focus.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked_focus.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked_focus.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked_focus@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked_focus@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked_focus@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked_focus@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked_pressed.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked_pressed.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked_pressed.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked_pressed.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked_pressed@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked_pressed@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked_pressed@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/checkbox_unchecked_pressed@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/close-hover.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/close-hover.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/close-hover.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/close-hover.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/close-pressed.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/close-pressed.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/close-pressed.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/close-pressed.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/close.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/close.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/close.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/close.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/down_arrow.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/down_arrow.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/down_arrow.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/down_arrow.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/down_arrow_disabled.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/down_arrow_disabled.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/down_arrow_disabled.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/down_arrow_disabled.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/left_arrow.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/left_arrow.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/left_arrow.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/left_arrow.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/left_arrow_disabled.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/left_arrow_disabled.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/left_arrow_disabled.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/left_arrow_disabled.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal_disabled.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal_disabled.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal_disabled.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal_disabled.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal_disabled@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal_disabled@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal_disabled@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal_disabled@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal_focus.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal_focus.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal_focus.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal_focus.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal_focus@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal_focus@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal_focus@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal_focus@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal_pressed.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal_pressed.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal_pressed.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal_pressed.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal_pressed@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal_pressed@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal_pressed@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_horizontal_pressed@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_vertical.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_vertical.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_vertical.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_vertical.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_vertical@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_vertical@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_vertical@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_vertical@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_vertical_disabled.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_vertical_disabled.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_vertical_disabled.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_vertical_disabled.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_vertical_disabled@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_vertical_disabled@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_vertical_disabled@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_vertical_disabled@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_vertical_focus.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_vertical_focus.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_vertical_focus.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_vertical_focus.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_vertical_focus@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_vertical_focus@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_vertical_focus@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_vertical_focus@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_vertical_pressed.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_vertical_pressed.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_vertical_pressed.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_vertical_pressed.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_vertical_pressed@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_vertical_pressed@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/line_vertical_pressed@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/line_vertical_pressed@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_checked.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_checked.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_checked.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_checked.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_checked@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_checked@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_checked@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_checked@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_checked_disabled.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_checked_disabled.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_checked_disabled.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_checked_disabled.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_checked_disabled@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_checked_disabled@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_checked_disabled@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_checked_disabled@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_checked_focus.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_checked_focus.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_checked_focus.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_checked_focus.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_checked_focus@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_checked_focus@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_checked_focus@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_checked_focus@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_checked_pressed.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_checked_pressed.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_checked_pressed.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_checked_pressed.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_checked_pressed@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_checked_pressed@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_checked_pressed@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_checked_pressed@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked_disabled.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked_disabled.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked_disabled.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked_disabled.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked_disabled@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked_disabled@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked_disabled@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked_disabled@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked_focus.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked_focus.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked_focus.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked_focus.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked_focus@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked_focus@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked_focus@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked_focus@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked_pressed.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked_pressed.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked_pressed.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked_pressed.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked_pressed@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked_pressed@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked_pressed@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/radio_unchecked_pressed@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/right_arrow.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/right_arrow.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/right_arrow.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/right_arrow.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/right_arrow_disabled.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/right_arrow_disabled.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/right_arrow_disabled.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/right_arrow_disabled.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/sizegrip.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/sizegrip.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/sizegrip.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/sizegrip.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/stylesheet-branch-end.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/stylesheet-branch-end.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/stylesheet-branch-end.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/stylesheet-branch-end.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/stylesheet-branch-more.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/stylesheet-branch-more.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/stylesheet-branch-more.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/stylesheet-branch-more.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/stylesheet-vline.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/stylesheet-vline.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/stylesheet-vline.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/stylesheet-vline.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal_disabled.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal_disabled.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal_disabled.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal_disabled.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal_disabled@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal_disabled@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal_disabled@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal_disabled@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal_focus.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal_focus.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal_focus.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal_focus.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal_focus@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal_focus@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal_focus@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal_focus@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal_pressed.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal_pressed.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal_pressed.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal_pressed.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal_pressed@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal_pressed@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal_pressed@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_horizontal_pressed@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical_disabled.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical_disabled.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical_disabled.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical_disabled.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical_disabled@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical_disabled@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical_disabled@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical_disabled@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical_focus.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical_focus.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical_focus.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical_focus.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical_focus@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical_focus@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical_focus@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical_focus@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical_pressed.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical_pressed.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical_pressed.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical_pressed.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical_pressed@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical_pressed@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical_pressed@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_move_vertical_pressed@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal_disabled.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal_disabled.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal_disabled.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal_disabled.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal_disabled@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal_disabled@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal_disabled@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal_disabled@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal_focus.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal_focus.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal_focus.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal_focus.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal_focus@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal_focus@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal_focus@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal_focus@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal_pressed.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal_pressed.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal_pressed.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal_pressed.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal_pressed@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal_pressed@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal_pressed@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_horizontal_pressed@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical_disabled.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical_disabled.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical_disabled.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical_disabled.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical_disabled@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical_disabled@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical_disabled@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical_disabled@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical_focus.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical_focus.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical_focus.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical_focus.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical_focus@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical_focus@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical_focus@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical_focus@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical_pressed.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical_pressed.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical_pressed.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical_pressed.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical_pressed@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical_pressed@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical_pressed@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/toolbar_separator_vertical_pressed@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/transparent.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/transparent.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/transparent.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/transparent.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/transparent@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/transparent@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/transparent@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/transparent@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/transparent_disabled.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/transparent_disabled.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/transparent_disabled.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/transparent_disabled.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/transparent_disabled@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/transparent_disabled@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/transparent_disabled@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/transparent_disabled@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/transparent_focus.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/transparent_focus.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/transparent_focus.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/transparent_focus.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/transparent_focus@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/transparent_focus@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/transparent_focus@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/transparent_focus@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/transparent_pressed.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/transparent_pressed.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/transparent_pressed.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/transparent_pressed.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/transparent_pressed@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/transparent_pressed@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/transparent_pressed@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/transparent_pressed@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/undock.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/undock.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/undock.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/undock.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/up_arrow.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/up_arrow.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/up_arrow.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/up_arrow.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/up_arrow_disabled.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/up_arrow_disabled.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/up_arrow_disabled.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/up_arrow_disabled.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_close.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_close.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_close.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_close.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_close@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_close@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_close@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_close@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_close_disabled.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_close_disabled.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_close_disabled.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_close_disabled.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_close_disabled@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_close_disabled@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_close_disabled@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_close_disabled@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_close_focus.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_close_focus.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_close_focus.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_close_focus.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_close_focus@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_close_focus@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_close_focus@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_close_focus@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_close_pressed.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_close_pressed.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_close_pressed.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_close_pressed.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_close_pressed@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_close_pressed@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_close_pressed@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_close_pressed@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_grip.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_grip.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_grip.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_grip.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_grip@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_grip@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_grip@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_grip@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_grip_disabled.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_grip_disabled.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_grip_disabled.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_grip_disabled.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_grip_disabled@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_grip_disabled@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_grip_disabled@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_grip_disabled@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_grip_focus.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_grip_focus.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_grip_focus.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_grip_focus.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_grip_focus@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_grip_focus@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_grip_focus@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_grip_focus@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_grip_pressed.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_grip_pressed.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_grip_pressed.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_grip_pressed.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_grip_pressed@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_grip_pressed@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_grip_pressed@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_grip_pressed@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_minimize.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_minimize.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_minimize.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_minimize.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_minimize@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_minimize@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_minimize@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_minimize@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_minimize_disabled.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_minimize_disabled.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_minimize_disabled.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_minimize_disabled.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_minimize_disabled@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_minimize_disabled@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_minimize_disabled@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_minimize_disabled@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_minimize_focus.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_minimize_focus.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_minimize_focus.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_minimize_focus.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_minimize_focus@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_minimize_focus@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_minimize_focus@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_minimize_focus@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_minimize_pressed.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_minimize_pressed.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_minimize_pressed.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_minimize_pressed.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_minimize_pressed@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_minimize_pressed@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_minimize_pressed@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_minimize_pressed@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_undock.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_undock.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_undock.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_undock.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_undock@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_undock@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_undock@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_undock@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_undock_disabled.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_undock_disabled.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_undock_disabled.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_undock_disabled.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_undock_disabled@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_undock_disabled@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_undock_disabled@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_undock_disabled@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_undock_focus.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_undock_focus.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_undock_focus.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_undock_focus.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_undock_focus@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_undock_focus@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_undock_focus@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_undock_focus@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_undock_pressed.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_undock_pressed.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_undock_pressed.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_undock_pressed.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_undock_pressed@2x.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_undock_pressed@2x.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/rc/window_undock_pressed@2x.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/rc/window_undock_pressed@2x.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/style.qrc b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/style.qrc similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/style.qrc rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/style.qrc diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/style.qrc.depends b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/style.qrc.depends similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/style.qrc.depends rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/style.qrc.depends diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/style.qss b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/style.qss similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/qdarkstyle/style.qss rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/qdarkstyle/style.qss diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/sql/ObjectIdentifier.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/ObjectIdentifier.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/sql/ObjectIdentifier.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/ObjectIdentifier.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/sql/ObjectIdentifier.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/ObjectIdentifier.h similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/sql/ObjectIdentifier.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/ObjectIdentifier.h diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/sql/Query.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/Query.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/sql/Query.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/Query.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/sql/Query.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/Query.h similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/sql/Query.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/Query.h diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/sql/parser/ParserDriver.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/parser/ParserDriver.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/sql/parser/ParserDriver.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/parser/ParserDriver.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/sql/parser/ParserDriver.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/parser/ParserDriver.h similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/sql/parser/ParserDriver.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/parser/ParserDriver.h diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/sql/parser/README b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/parser/README similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/sql/parser/README rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/parser/README diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/sql/parser/sqlite3_lexer.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/parser/sqlite3_lexer.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/sql/parser/sqlite3_lexer.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/parser/sqlite3_lexer.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/sql/parser/sqlite3_lexer.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/parser/sqlite3_lexer.h similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/sql/parser/sqlite3_lexer.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/parser/sqlite3_lexer.h diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/sql/parser/sqlite3_lexer.ll b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/parser/sqlite3_lexer.ll similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/sql/parser/sqlite3_lexer.ll rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/parser/sqlite3_lexer.ll diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/sql/parser/sqlite3_location.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/parser/sqlite3_location.h similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/sql/parser/sqlite3_location.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/parser/sqlite3_location.h diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/sql/parser/sqlite3_parser.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/parser/sqlite3_parser.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/sql/parser/sqlite3_parser.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/parser/sqlite3_parser.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/sql/parser/sqlite3_parser.hpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/parser/sqlite3_parser.hpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/sql/parser/sqlite3_parser.hpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/parser/sqlite3_parser.hpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/sql/parser/sqlite3_parser.yy b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/parser/sqlite3_parser.yy similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/sql/parser/sqlite3_parser.yy rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/parser/sqlite3_parser.yy diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/sql/sqlitetypes.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/sqlitetypes.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/sql/sqlitetypes.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/sqlitetypes.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/sql/sqlitetypes.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/sqlitetypes.h similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/sql/sqlitetypes.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sql/sqlitetypes.h diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/sqlite.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sqlite.h similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/sqlite.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sqlite.h diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/sqlitedb.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sqlitedb.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/sqlitedb.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sqlitedb.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/sqlitedb.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sqlitedb.h similarity index 99% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/sqlitedb.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sqlitedb.h index 87e5f91..ff99157 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/sqlitedb.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sqlitedb.h @@ -1,6 +1,6 @@ #ifndef SQLITEDB_H #define SQLITEDB_H - +#include "WBFZExchangePluginAPI.h" #include "sql/ObjectIdentifier.h" #include "sql/sqlitetypes.h" @@ -39,9 +39,9 @@ QString escapeString(const QString& literal); /// represents a single SQLite database. except when noted otherwise, /// all member functions are to be called from the main UI thread /// only. -class DBBrowserDB : public QObject +class DBBrowserDB : public QObject { - Q_OBJECT + Q_OBJECT private: /// custom unique_ptr deleter releases database for further use by others diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/sqlitetablemodel.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sqlitetablemodel.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/sqlitetablemodel.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sqlitetablemodel.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/sqlitetablemodel.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sqlitetablemodel.h similarity index 99% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/sqlitetablemodel.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sqlitetablemodel.h index 2d6fc58..6a717f9 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/sqlitetablemodel.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sqlitetablemodel.h @@ -1,6 +1,6 @@ #ifndef SQLITETABLEMODEL_H #define SQLITETABLEMODEL_H - +#include "WBFZExchangePluginAPI.h" #include #include #include @@ -18,7 +18,7 @@ struct sqlite3; class DBBrowserDB; class CondFormat; -class SqliteTableModel : public QAbstractTableModel +class SqliteTableModel : public QAbstractTableModel { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/sqltextedit.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sqltextedit.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/sqltextedit.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sqltextedit.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/sqltextedit.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sqltextedit.h similarity index 81% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/sqltextedit.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sqltextedit.h index ffcd6cf..665bc32 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/sqltextedit.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/sqltextedit.h @@ -1,6 +1,6 @@ #ifndef SQLTEXTEDIT_H #define SQLTEXTEDIT_H - +#include "WBFZExchangePluginAPI.h" #include "ExtendedScintilla.h" class SqlUiLexer; @@ -9,7 +9,7 @@ class SqlUiLexer; * @brief The SqlTextEdit class * This class is based on the QScintilla widget */ -class SqlTextEdit : public ExtendedScintilla +class SqlTextEdit : public ExtendedScintilla { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/src.pro b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/src.pro similarity index 99% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/src.pro rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/src.pro index f5c2e58..0f364a5 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/src.pro +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/src.pro @@ -142,7 +142,7 @@ SOURCES += \ sql/parser/sqlite3_lexer.cpp \ sql/parser/sqlite3_parser.cpp -RESOURCES += icons/icons.qrc \ +RESOURCES += ../../../qrc/qianfan.qrc \ translations/flags/flags.qrc \ translations/translations.qrc \ certs/CaCerts.qrc \ diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/tests/CMakeLists.txt b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/tests/CMakeLists.txt similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/tests/CMakeLists.txt rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/tests/CMakeLists.txt diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/tests/TestImport.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/tests/TestImport.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/tests/TestImport.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/tests/TestImport.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/tests/TestImport.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/tests/TestImport.h similarity index 72% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/tests/TestImport.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/tests/TestImport.h index 18de561..37496a8 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/tests/TestImport.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/tests/TestImport.h @@ -1,9 +1,9 @@ #ifndef TESTIMPORT_H #define TESTIMPORT_H - +#include "WBFZExchangePluginAPI.h" #include -class TestImport : public QObject +class TestImport : public QObject { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/tests/TestRegex.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/tests/TestRegex.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/tests/TestRegex.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/tests/TestRegex.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/tests/TestRegex.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/tests/TestRegex.h similarity index 72% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/tests/TestRegex.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/tests/TestRegex.h index 370a9be..c874c67 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/tests/TestRegex.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/tests/TestRegex.h @@ -2,10 +2,10 @@ #define TESTREGEX_H #define REGEX_UNIT_TEST - +#include "WBFZExchangePluginAPI.h" #include -class TestRegex : public QObject +class TestRegex : public QObject { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/tests/TestRowCache.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/tests/TestRowCache.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/tests/TestRowCache.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/tests/TestRowCache.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/tests/TestRowCache.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/tests/TestRowCache.h similarity index 78% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/tests/TestRowCache.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/tests/TestRowCache.h index beeeee9..9c768c1 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/tests/TestRowCache.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/tests/TestRowCache.h @@ -1,9 +1,9 @@ #ifndef TESTROWCACHE_H #define TESTROWCACHE_H - +#include "WBFZExchangePluginAPI.h" #include -class TestRowCache : public QObject +class TestRowCache : public QObject { Q_OBJECT diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/tests/testsqlobjects.cpp b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/tests/testsqlobjects.cpp similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/tests/testsqlobjects.cpp rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/tests/testsqlobjects.cpp diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/tests/testsqlobjects.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/tests/testsqlobjects.h similarity index 93% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/tests/testsqlobjects.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/tests/testsqlobjects.h index ed6a12f..8de5db3 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/tests/testsqlobjects.h +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/tests/testsqlobjects.h @@ -1,9 +1,9 @@ #ifndef TESTSQLOBJECTS_H #define TESTSQLOBJECTS_H - +#include "WBFZExchangePluginAPI.h" #include -class TestTable: public QObject +class TestTable: public QObject { Q_OBJECT private slots: diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/tools/create_windows_icon.sh b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/tools/create_windows_icon.sh similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/tools/create_windows_icon.sh rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/tools/create_windows_icon.sh diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/README b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/README similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/README rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/README diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/ar.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/ar.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/ar.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/ar.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/br.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/br.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/br.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/br.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/cn.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/cn.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/cn.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/cn.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/cs.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/cs.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/cs.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/cs.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/de.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/de.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/de.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/de.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/eg.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/eg.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/eg.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/eg.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/es.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/es.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/es.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/es.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/flags.qrc b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/flags.qrc similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/flags.qrc rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/flags.qrc diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/fr.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/fr.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/fr.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/fr.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/gb.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/gb.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/gb.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/gb.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/it.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/it.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/it.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/it.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/jp.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/jp.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/jp.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/jp.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/kr.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/kr.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/kr.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/kr.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/nl.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/nl.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/nl.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/nl.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/pl.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/pl.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/pl.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/pl.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/roc.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/roc.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/roc.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/roc.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/ru.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/ru.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/ru.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/ru.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/tr.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/tr.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/tr.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/tr.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/ua.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/ua.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/ua.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/ua.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/us.png b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/us.png similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/flags/us.png rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/flags/us.png diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/place_translations_here b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/place_translations_here similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/place_translations_here rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/place_translations_here diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_ar_SA.qm b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_ar_SA.qm similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_ar_SA.qm rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_ar_SA.qm diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_ar_SA.ts b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_ar_SA.ts similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_ar_SA.ts rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_ar_SA.ts diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_cs.qm b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_cs.qm similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_cs.qm rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_cs.qm diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_cs.ts b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_cs.ts similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_cs.ts rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_cs.ts diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_de.qm b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_de.qm similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_de.qm rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_de.qm diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_de.ts b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_de.ts similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_de.ts rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_de.ts diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_en_GB.qm b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_en_GB.qm similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_en_GB.qm rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_en_GB.qm diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_en_GB.ts b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_en_GB.ts similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_en_GB.ts rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_en_GB.ts diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_es_ES.qm b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_es_ES.qm similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_es_ES.qm rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_es_ES.qm diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_es_ES.ts b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_es_ES.ts similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_es_ES.ts rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_es_ES.ts diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_fa.ts b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_fa.ts similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_fa.ts rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_fa.ts diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_fr.qm b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_fr.qm similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_fr.qm rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_fr.qm diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_fr.ts b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_fr.ts similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_fr.ts rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_fr.ts diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_it.qm b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_it.qm similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_it.qm rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_it.qm diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_it.ts b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_it.ts similarity index 99% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_it.ts rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_it.ts index ea0b7e3..ac8ed8a 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_it.ts +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_it.ts @@ -59,7 +59,7 @@ When you edit the values in the upper frame, the SQL query for inserting this new record is shown here. You can edit manually the query before saving. - Quando modifichi i valori nel riquadro superiore, la query SQL per inserire questo nuovo record è mostrata qui. Puoi modificare manualmente la query prima di salvare. + Quando modifichi i valori nel riquadro superiore, la query SQL per inserire questo nuovo record è mostrata qui-> Puoi modificare manualmente la query prima di salvare. diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_ja.qm b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_ja.qm similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_ja.qm rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_ja.qm diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_ja.ts b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_ja.ts similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_ja.ts rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_ja.ts diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_ko_KR.qm b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_ko_KR.qm similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_ko_KR.qm rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_ko_KR.qm diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_ko_KR.ts b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_ko_KR.ts similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_ko_KR.ts rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_ko_KR.ts diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_nl.qm b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_nl.qm similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_nl.qm rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_nl.qm diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_nl.ts b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_nl.ts similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_nl.ts rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_nl.ts diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_pl.qm b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_pl.qm similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_pl.qm rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_pl.qm diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_pl.ts b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_pl.ts similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_pl.ts rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_pl.ts diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_pt_BR.qm b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_pt_BR.qm similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_pt_BR.qm rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_pt_BR.qm diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_pt_BR.ts b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_pt_BR.ts similarity index 99% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_pt_BR.ts rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_pt_BR.ts index cc8776f..af7960b 100644 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_pt_BR.ts +++ b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_pt_BR.ts @@ -59,7 +59,7 @@ When you edit the values in the upper frame, the SQL query for inserting this new record is shown here. You can edit manually the query before saving. - Quando você edita os valores no frame acima, a consulta SQL para inserir esse novo registro é exibida aqui. Você pode editar manualmente a consulta antes de salvar. + Quando você edita os valores no frame acima, a consulta SQL para inserir esse novo registro é exibida aqui-> Você pode editar manualmente a consulta antes de salvar. diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_ru.qm b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_ru.qm similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_ru.qm rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_ru.qm diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_ru.ts b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_ru.ts similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_ru.ts rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_ru.ts diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_tr.qm b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_tr.qm similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_tr.qm rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_tr.qm diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_tr.ts b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_tr.ts similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_tr.ts rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_tr.ts diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_uk_UA.qm b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_uk_UA.qm similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_uk_UA.qm rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_uk_UA.qm diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_uk_UA.ts b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_uk_UA.ts similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_uk_UA.ts rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_uk_UA.ts diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_zh.qm b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_zh.qm similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_zh.qm rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_zh.qm diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_zh.ts b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_zh.ts similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_zh.ts rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_zh.ts diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_zh_TW.qm b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_zh_TW.qm similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_zh_TW.qm rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_zh_TW.qm diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_zh_TW.ts b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_zh_TW.ts similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/sqlb_zh_TW.ts rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/sqlb_zh_TW.ts diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/translations/translations.qrc b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/translations.qrc similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/translations/translations.qrc rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/translations/translations.qrc diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/version.h b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/version.h similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/version.h rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/version.h diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/winapp.rc b/src/PluginWBFZExchangePlugin/SqliteDBProcess/src/winapp.rc similarity index 100% rename from src/WBCLFZSystemModule/SqliteDBProcess/src/winapp.rc rename to src/PluginWBFZExchangePlugin/SqliteDBProcess/src/winapp.rc diff --git a/src/WBCLFZSystemModule/TableProcess/TableFieldConfigClass.cpp b/src/PluginWBFZExchangePlugin/TableProcess/TableFieldConfigClass.cpp similarity index 75% rename from src/WBCLFZSystemModule/TableProcess/TableFieldConfigClass.cpp rename to src/PluginWBFZExchangePlugin/TableProcess/TableFieldConfigClass.cpp index 9ec4af2..7fd6258 100644 --- a/src/WBCLFZSystemModule/TableProcess/TableFieldConfigClass.cpp +++ b/src/PluginWBFZExchangePlugin/TableProcess/TableFieldConfigClass.cpp @@ -1,9 +1,9 @@ #include "TableFieldConfigClass.h" - +#include "ui_TableFieldConfigClass.h" TableFieldConfigClass::TableFieldConfigClass(QWidget *parent) : QMainWindow(parent) { - ui.setupUi(this); + ui->setupUi(this); } TableFieldConfigClass::~TableFieldConfigClass() diff --git a/src/PluginWBFZExchangePlugin/TableProcess/TableFieldConfigClass.h b/src/PluginWBFZExchangePlugin/TableProcess/TableFieldConfigClass.h new file mode 100644 index 0000000..3e29468 --- /dev/null +++ b/src/PluginWBFZExchangePlugin/TableProcess/TableFieldConfigClass.h @@ -0,0 +1,23 @@ +#pragma once +#ifndef TABLEFIELDCONFIGCLASS_H +#define TABLEFIELDCONFIGCLASS_H +#include "WBFZExchangePluginAPI.h" +#include + + +namespace Ui{ + class TableFieldConfigClassClass; +} + +class TableFieldConfigClass : public QMainWindow +{ + Q_OBJECT + +public: + TableFieldConfigClass(QWidget *parent = nullptr); + ~TableFieldConfigClass(); + +private: + Ui::TableFieldConfigClassClass* ui; +}; +#endif \ No newline at end of file diff --git a/src/WBCLFZSystemModule/TableProcess/TableFieldConfigClass.ui b/src/PluginWBFZExchangePlugin/TableProcess/TableFieldConfigClass.ui similarity index 100% rename from src/WBCLFZSystemModule/TableProcess/TableFieldConfigClass.ui rename to src/PluginWBFZExchangePlugin/TableProcess/TableFieldConfigClass.ui diff --git a/src/WBCLFZSystemModule/TableProcess/TableFieldFindTool.cpp b/src/PluginWBFZExchangePlugin/TableProcess/TableFieldFindTool.cpp similarity index 74% rename from src/WBCLFZSystemModule/TableProcess/TableFieldFindTool.cpp rename to src/PluginWBFZExchangePlugin/TableProcess/TableFieldFindTool.cpp index 7392e32..7a3c5eb 100644 --- a/src/WBCLFZSystemModule/TableProcess/TableFieldFindTool.cpp +++ b/src/PluginWBFZExchangePlugin/TableProcess/TableFieldFindTool.cpp @@ -1,9 +1,9 @@ #include "TableFieldFindTool.h" - +#include "ui_TableFieldFindTool.h" TableFieldFindTool::TableFieldFindTool(QWidget *parent) : QDialog(parent) { - ui.setupUi(this); + ui->setupUi(this); } TableFieldFindTool::~TableFieldFindTool() diff --git a/src/PluginWBFZExchangePlugin/TableProcess/TableFieldFindTool.h b/src/PluginWBFZExchangePlugin/TableProcess/TableFieldFindTool.h new file mode 100644 index 0000000..22a140a --- /dev/null +++ b/src/PluginWBFZExchangePlugin/TableProcess/TableFieldFindTool.h @@ -0,0 +1,23 @@ +#pragma once +#ifndef TABLEFIELDFINDTOOL_H +#define TABLEFIELDFINDTOOL_H +#include "WBFZExchangePluginAPI.h" +#include + + +namespace Ui{ + class TableFieldFindToolClass; +} + +class TableFieldFindTool : public QDialog +{ + Q_OBJECT + +public: + TableFieldFindTool(QWidget *parent = nullptr); + ~TableFieldFindTool(); + +private: + Ui::TableFieldFindToolClass* ui; +}; +#endif \ No newline at end of file diff --git a/src/WBCLFZSystemModule/TableProcess/TableFieldFindTool.ui b/src/PluginWBFZExchangePlugin/TableProcess/TableFieldFindTool.ui similarity index 100% rename from src/WBCLFZSystemModule/TableProcess/TableFieldFindTool.ui rename to src/PluginWBFZExchangePlugin/TableProcess/TableFieldFindTool.ui diff --git a/src/WBCLFZSystemModule/TableProcess/TableMainWindow.cpp b/src/PluginWBFZExchangePlugin/TableProcess/TableMainWindow.cpp similarity index 87% rename from src/WBCLFZSystemModule/TableProcess/TableMainWindow.cpp rename to src/PluginWBFZExchangePlugin/TableProcess/TableMainWindow.cpp index 72b36b3..024ac91 100644 --- a/src/WBCLFZSystemModule/TableProcess/TableMainWindow.cpp +++ b/src/PluginWBFZExchangePlugin/TableProcess/TableMainWindow.cpp @@ -8,12 +8,12 @@ #include #include #include - +#include "ui_TableMainWindow.h" TableMainWindow::TableMainWindow(QWidget* parent) { this->FILEOPENLOCK = false; this->CheckFieldContextHasEmptyCeilLOCK = false; - this->ui.setupUi(this); + this->ui=new Ui::TableMainWindow ;this->ui->setupUi(this); this->initTableViewContextMenu(); this->initTableViewStatusBarControl(); } @@ -30,8 +30,8 @@ int TableMainWindow::initTableViewContextMenu() qDebug() << u8"正在初始化contextMenu"; m_undoStack = new QUndoStack(this); //存放命令的栈 - this->ui.tableView->setContextMenuPolicy(Qt::CustomContextMenu); - //this->ui.tableView->setFocusPolicy(Qt::NoFocus); // 允许快捷键 + this->ui->tableView->setContextMenuPolicy(Qt::CustomContextMenu); + //this->ui->tableView->setFocusPolicy(Qt::NoFocus); // 允许快捷键 this->tableViewContextMenu = new QMenu(this); // 表格控件的右键菜单 QAction* m_undoAction = m_undoStack->createUndoAction(this, u8"撤销");//添加QAction,Ctrl-Z作为回撤的快捷键 @@ -70,13 +70,13 @@ void TableMainWindow::ShowTableViewContextMenu(QPoint p) void TableMainWindow::tableView_CopyAction() { qDebug() << u8"正在启动tableview 右键复制代码"; - QItemSelectionModel* selectionModel = this->ui.tableView->selectionModel(); + QItemSelectionModel* selectionModel = this->ui->tableView->selectionModel(); QModelIndexList selectedIndexes = selectionModel->selectedIndexes(); if (selectedIndexes.count() == 0) { return; } - QTableView* tableView = this->ui.tableView; // Your table view object + QTableView* tableView = this->ui->tableView; // Your table view object /* * a\tb\tc\n @@ -128,18 +128,18 @@ void TableMainWindow::tableView_CopyAction() } int TableMainWindow::setDragDropOverwriteMode(bool flag) { - this->ui.tableView->setDragDropOverwriteMode(flag); + this->ui->tableView->setDragDropOverwriteMode(flag); return 0; } void TableMainWindow::tableView_PasteAction() { qDebug() << u8"正在启动tableview 右键粘贴代码"; - QTableView* tableview = this->ui.tableView; + QTableView* tableview = this->ui->tableView; QClipboard* clipboard = QApplication::clipboard(); QString clipboardData = QApplication::clipboard()->text(); - QItemSelectionModel* selectionModel = this->ui.tableView->selectionModel(); + QItemSelectionModel* selectionModel = this->ui->tableView->selectionModel(); QModelIndexList selectedIndexes = selectionModel->selectedIndexes(); - this->m_undoStack->push(new PasteCommand(this->ui.tableView, selectedIndexes, clipboardData)); + this->m_undoStack->push(new PasteCommand(this->ui->tableView, selectedIndexes, clipboardData)); tableview->show(); } @@ -161,16 +161,16 @@ void TableMainWindow::tableView_RedoAction() // 检查存在空单元格的列,并修改展示 void TableMainWindow::tableView_CheckFieldHasEmptyCeilAction() { - this->ui.statusbar->showMessage(u8"正在检查存在空数据的单元列"); - size_t colcount = this->ui.tableView->model()->columnCount(); - size_t rowcount = this->ui.tableView->model()->rowCount(); + this->ui->statusbar->showMessage(u8"正在检查存在空数据的单元列"); + size_t colcount = this->ui->tableView->model()->columnCount(); + size_t rowcount = this->ui->tableView->model()->rowCount(); this->statusprogressBar->setRange(0, colcount - 1); this->statusprogressBar->setValue(0); QList cellIndexes; for (int j = 0; j < colcount; j++) { for (int i = 0; i < rowcount; i++) { - if (this->ui.tableView->model()->index(i, j).data().toString().count() < 1) { - cellIndexes.append(this->ui.tableView->model()->index(i, j)); + if (this->ui->tableView->model()->index(i, j).data().toString().count() < 1) { + cellIndexes.append(this->ui->tableView->model()->index(i, j)); break; } } @@ -180,16 +180,16 @@ void TableMainWindow::tableView_CheckFieldHasEmptyCeilAction() return; } else {} - this->ui.statusbar->showMessage(u8"正在选择空格"); + this->ui->statusbar->showMessage(u8"正在选择空格"); this->statusprogressBar->setRange(0, cellIndexes.count()-1); this->statusprogressBar->setValue(0); - QItemSelectionModel* selectionModel = this->ui.tableView->selectionModel(); + QItemSelectionModel* selectionModel = this->ui->tableView->selectionModel(); for (int i = 0; i < cellIndexes.count(); i++) { selectionModel->select(cellIndexes[i], QItemSelectionModel::Select); this->statusprogressBar->setValue(i); } - this->ui.tableView->show(); - this->ui.tableView->scrollTo(cellIndexes[0], QAbstractItemView::EnsureVisible); + this->ui->tableView->show(); + this->ui->tableView->scrollTo(cellIndexes[0], QAbstractItemView::EnsureVisible); } @@ -209,16 +209,16 @@ int TableMainWindow::setCheckFieldContextHasEmptyCeilLOCK(bool flag) int TableMainWindow::loadTablemode(std::shared_ptr mode) { this->model = mode; - this->ui.tableView->setModel(this->model.get()); + this->ui->tableView->setModel(this->model.get()); if (this->model->rowCount() > 1e4) { - this->ui.tableView->horizontalHeader()->setSectionResizeMode(QHeaderView::Interactive); + this->ui->tableView->horizontalHeader()->setSectionResizeMode(QHeaderView::Interactive); } return 0; } int TableMainWindow::setTableViewAutoSort(bool flag) { - this->ui.tableView->setSortingEnabled(flag); + this->ui->tableView->setSortingEnabled(flag); return flag; } @@ -227,7 +227,7 @@ int TableMainWindow::initTableViewStatusBarControl() this->statusprogressBar = new QProgressBar(); this->statusprogressBar->setRange(0, 100); // 设置进度条范围 this->statusprogressBar->setValue(0); // 设置当前进度 - this->ui.statusbar->addPermanentWidget(this->statusprogressBar); // 在状态栏中添加进度条 + this->ui->statusbar->addPermanentWidget(this->statusprogressBar); // 在状态栏中添加进度条 return 0; } diff --git a/src/WBCLFZSystemModule/TableProcess/TableMainWindow.h b/src/PluginWBFZExchangePlugin/TableProcess/TableMainWindow.h similarity index 90% rename from src/WBCLFZSystemModule/TableProcess/TableMainWindow.h rename to src/PluginWBFZExchangePlugin/TableProcess/TableMainWindow.h index aa77ff7..01c7ccd 100644 --- a/src/WBCLFZSystemModule/TableProcess/TableMainWindow.h +++ b/src/PluginWBFZExchangePlugin/TableProcess/TableMainWindow.h @@ -1,6 +1,10 @@ #pragma once + +#ifndef TABLEMAINWINDOWS_H +#define TABLEMAINWINDOWS_H +#include "WBFZExchangePluginAPI.h" #include -#include "ui_TableMainWindow.h" + #include "TableViewModel.h" #include #include @@ -12,6 +16,10 @@ * 命令 ***/ +namespace Ui{ + class TableMainWindow; +} + class PasteCommand : public QUndoCommand { // 粘贴命令 private: QTableView* tableItem; @@ -32,7 +40,7 @@ public: /* * 表格编辑窗体情况分析 ****/ -class TableMainWindow : public QMainWindow +class TableMainWindow : public QMainWindow { Q_OBJECT public: @@ -59,7 +67,7 @@ public: int setTableViewAutoSort(bool flag); int setDragDropOverwriteMode(bool flag); // 是否禁用列调换 private: - Ui::TableMainWindow ui; + Ui::TableMainWindow* ui; @@ -77,3 +85,4 @@ public slots: void tableView_CheckFieldHasEmptyCeilAction(); }; +#endif diff --git a/src/WBCLFZSystemModule/TableProcess/TableMainWindow.ui b/src/PluginWBFZExchangePlugin/TableProcess/TableMainWindow.ui similarity index 100% rename from src/WBCLFZSystemModule/TableProcess/TableMainWindow.ui rename to src/PluginWBFZExchangePlugin/TableProcess/TableMainWindow.ui diff --git a/src/WBCLFZSystemModule/TableProcess/TableViewModel.cpp b/src/PluginWBFZExchangePlugin/TableProcess/TableViewModel.cpp similarity index 100% rename from src/WBCLFZSystemModule/TableProcess/TableViewModel.cpp rename to src/PluginWBFZExchangePlugin/TableProcess/TableViewModel.cpp diff --git a/src/WBCLFZSystemModule/TableProcess/TableViewModel.h b/src/PluginWBFZExchangePlugin/TableProcess/TableViewModel.h similarity index 92% rename from src/WBCLFZSystemModule/TableProcess/TableViewModel.h rename to src/PluginWBFZExchangePlugin/TableProcess/TableViewModel.h index 7967aba..4b17f82 100644 --- a/src/WBCLFZSystemModule/TableProcess/TableViewModel.h +++ b/src/PluginWBFZExchangePlugin/TableProcess/TableViewModel.h @@ -1,11 +1,14 @@ #pragma once +#ifndef TABLEVIEWMODEL_H +#define TABLEVIEWMODEL_H +#include "WBFZExchangePluginAPI.h" #include "AllHead.h" #include #include #include #include -class AbstractTableModel :public QAbstractTableModel { +class AbstractTableModel :public QAbstractTableModel { Q_OBJECT; public: virtual void loadFilePath(QString csvPath); // 加载csv数据 @@ -16,7 +19,7 @@ public: // FKEOResult.csv 表格对应类 2023.07.25 重写类 -class FEKOResultCsvTableModel :public AbstractTableModel { +class FEKOResultCsvTableModel :public AbstractTableModel { Q_OBJECT; private: @@ -82,3 +85,5 @@ signals: }; +#endif + diff --git a/src/WBCLFZSystemModule/TableProcess/sqliteOperator.cpp b/src/PluginWBFZExchangePlugin/TableProcess/sqliteOperator.cpp similarity index 100% rename from src/WBCLFZSystemModule/TableProcess/sqliteOperator.cpp rename to src/PluginWBFZExchangePlugin/TableProcess/sqliteOperator.cpp diff --git a/src/WBCLFZSystemModule/TableProcess/sqliteOperator.h b/src/PluginWBFZExchangePlugin/TableProcess/sqliteOperator.h similarity index 100% rename from src/WBCLFZSystemModule/TableProcess/sqliteOperator.h rename to src/PluginWBFZExchangePlugin/TableProcess/sqliteOperator.h diff --git a/src/WBCLFZSystemModule/TaskNodeList.cpp b/src/PluginWBFZExchangePlugin/TaskNodeList.cpp similarity index 98% rename from src/WBCLFZSystemModule/TaskNodeList.cpp rename to src/PluginWBFZExchangePlugin/TaskNodeList.cpp index becd650..4592317 100644 --- a/src/WBCLFZSystemModule/TaskNodeList.cpp +++ b/src/PluginWBFZExchangePlugin/TaskNodeList.cpp @@ -1,4 +1,5 @@ -#include "TaskNodeList.h" +#include "AllHead.h" +#include "TaskNodeList.h" // ===================================================================== @@ -892,8 +893,10 @@ void FEKOResultImportTaskNode::getExcuteTaskResult(FEKOResultImport* obj) FEKOImageSettingTaskNodeClass::FEKOImageSettingTaskNodeClass() { - this->simulationparams = std::make_shared(); // 创建虚拟指针 + this->simulationparams = new FEKOBase::FEKOSimulationDataparams;//std::make_shared(); // 创建虚拟指针 + DebugInfo(" FEKOImageSettingFun has init simulationparams init \n"); this->TaskWindows = new QtSARAntModelSettingClass(); + DebugInfo(" FEKOImageSettingFun has init TaskWindows init \n"); } diff --git a/src/WBCLFZSystemModule/TaskNodeList.h b/src/PluginWBFZExchangePlugin/TaskNodeList.h similarity index 91% rename from src/WBCLFZSystemModule/TaskNodeList.h rename to src/PluginWBFZExchangePlugin/TaskNodeList.h index 4f82457..1c1aa64 100644 --- a/src/WBCLFZSystemModule/TaskNodeList.h +++ b/src/PluginWBFZExchangePlugin/TaskNodeList.h @@ -5,11 +5,11 @@ /// #ifndef TASKNODELIST_H #define TASKNODELIST_H - +#include "WBFZExchangePluginAPI.h" #include "AllHead.h" #include -#include "EchoShowProcess/EchoTableEditWindow.h" +#include "EchoTableEditWindow.h" #include "OCCViewer/CommonSample.h" #include "OCCTopoShapeTreeViewer.h" #include "OCCTBaseOperaorClass.h" @@ -19,17 +19,17 @@ #include "OcctExportClass.h" // 任务数据节点 -#include "TaskXml/TaskTreeClass.h" +#include "TaskTreeClass.h" #include "ImageShowDialogClass.h" #include "LAMP_ScatterSettingClass.h" -#include "EchoShowProcess/FEKOResultImport.h" +#include "FEKOResultImport.h" #include "QtSARAntModelSetting.h" // // 模型节点 // -class OCCTShapeModelNode : public TaskNode { - Q_OBJECT +class OCCTShapeModelNode : public TaskNode { + Q_OBJECT public: Handle(AIS_Shape) Data_AIS; // 构建核心数据 bool modelRepair; @@ -124,8 +124,8 @@ protected: // 重写单双击事件 // // 数据展示节点 // -class DataShowNode :public TaskNode { // 展示普通图像的结果 - Q_OBJECT +class DataShowNode :public TaskNode { // 展示普通图像的结果 + Q_OBJECT public: DataShowNode(QWidget* parent = nullptr); ~DataShowNode();// @@ -145,7 +145,7 @@ public slots: // // 复数数据展示节点 // -class ComplexDataShowNode : public TaskNode +class ComplexDataShowNode : public TaskNode { Q_OBJECT public: @@ -174,7 +174,7 @@ public slots: // 参数复数 // // FEKO数据转换任务节点 // -class FEKOResultImportTaskNode :public TaskNode { +class FEKOResultImportTaskNode :public TaskNode { Q_OBJECT public: FEKOResultImportTaskNode(); @@ -201,7 +201,7 @@ public slots: // // FEKO成像参数任务设置节点 // -class FEKOImageSettingTaskNodeClass :public TaskNode, public FEKOBase::FEKOSimulationDataparamsHandler +class FEKOImageSettingTaskNodeClass :public TaskNode, public FEKOBase::FEKOSimulationDataparamsHandler { Q_OBJECT @@ -223,7 +223,7 @@ public: // // 散射装置仿真成像 // -class FEKOScatterSettingTaskNodeClass :public TaskNode { +class FEKOScatterSettingTaskNodeClass :public TaskNode { Q_OBJECT public: FEKOScatterSettingTaskNodeClass(); @@ -238,8 +238,4 @@ public: QString getTaskName(); }; - - - - #endif \ No newline at end of file diff --git a/src/WBCLFZSystemModule/WBCLFZ.cpp b/src/PluginWBFZExchangePlugin/WBCLFZ.cpp similarity index 100% rename from src/WBCLFZSystemModule/WBCLFZ.cpp rename to src/PluginWBFZExchangePlugin/WBCLFZ.cpp diff --git a/src/WBCLFZSystemModule/WBCLFZ.h b/src/PluginWBFZExchangePlugin/WBCLFZ.h similarity index 87% rename from src/WBCLFZSystemModule/WBCLFZ.h rename to src/PluginWBFZExchangePlugin/WBCLFZ.h index 12dd7d0..68666b1 100644 --- a/src/WBCLFZSystemModule/WBCLFZ.h +++ b/src/PluginWBFZExchangePlugin/WBCLFZ.h @@ -4,7 +4,7 @@ #ifndef LAMPCAE_WBCLFZ_H #define LAMPCAE_WBCLFZ_H -#include "WBCLFZSystemModuleAPI.h" +#include "WBFZExchangePluginAPI.h" #include "WBCLFZ.h" #include "AllHead.h" diff --git a/src/WBCLFZSystemModule/WBCLFZSystemModule.aps b/src/PluginWBFZExchangePlugin/WBCLFZSystemModule.aps similarity index 100% rename from src/WBCLFZSystemModule/WBCLFZSystemModule.aps rename to src/PluginWBFZExchangePlugin/WBCLFZSystemModule.aps diff --git a/src/WBCLFZSystemModule/WBCLFZSystemModule.cpp b/src/PluginWBFZExchangePlugin/WBCLFZSystemModule.cpp similarity index 96% rename from src/WBCLFZSystemModule/WBCLFZSystemModule.cpp rename to src/PluginWBFZExchangePlugin/WBCLFZSystemModule.cpp index df4a2af..1bcef89 100644 --- a/src/WBCLFZSystemModule/WBCLFZSystemModule.cpp +++ b/src/PluginWBFZExchangePlugin/WBCLFZSystemModule.cpp @@ -12,16 +12,17 @@ #include "SqliteDBProcess/src/Application.h" #include "SqliteDBProcess/src/sqlite.h" #include "SqliteDBProcess/src/SqliteDBMainWindow.h" -#include "EchoShowProcess/FEKOResultImport.h" +#include "FEKOResultImport.h" #include "QConsoleWidget.h" #include "QConsoleCommandAction.h" -//#include "EchoShowProcess/FEKOResultProcessExportWindow.h" +#include "ui_WBCLFZSystemModule.h" +//#include "FEKOResultProcessExportWindow.h" WBCLFZSystemModule::WBCLFZSystemModule(QWidget *parent) : QMainWindow(parent) { - ui.setupUi(this); + ui->setupUi(this); } WBCLFZSystemModule::~WBCLFZSystemModule() diff --git a/src/WBCLFZSystemModule/WBCLFZSystemModule.h b/src/PluginWBFZExchangePlugin/WBCLFZSystemModule.h similarity index 78% rename from src/WBCLFZSystemModule/WBCLFZSystemModule.h rename to src/PluginWBFZExchangePlugin/WBCLFZSystemModule.h index bb5e140..04e84af 100644 --- a/src/WBCLFZSystemModule/WBCLFZSystemModule.h +++ b/src/PluginWBFZExchangePlugin/WBCLFZSystemModule.h @@ -2,12 +2,16 @@ #ifndef WBCLFZSYSTEMMODULE_H #define WBCLFZSYSTEMMODULE_H - +#include "WBFZExchangePluginAPI.h" #include -#include "ui_WBCLFZSystemModule.h" + #include "AllHead.h" -class WBCLFZSYSTEMMODULEAPI WBCLFZSystemModule : public QMainWindow +namespace Ui{ + class WBCLFZSystemModuleClass; +} + +class WBCLFZSystemModule : public QMainWindow { Q_OBJECT @@ -22,7 +26,7 @@ public slots: void on_pushButton_EchoProcess_clicked(); private: - Ui::WBCLFZSystemModuleClass ui; + Ui::WBCLFZSystemModuleClass* ui; }; diff --git a/src/WBCLFZSystemModule/WBCLFZSystemModule.rc b/src/PluginWBFZExchangePlugin/WBCLFZSystemModule.rc similarity index 100% rename from src/WBCLFZSystemModule/WBCLFZSystemModule.rc rename to src/PluginWBFZExchangePlugin/WBCLFZSystemModule.rc diff --git a/src/WBCLFZSystemModule/WBCLFZSystemModule.ui b/src/PluginWBFZExchangePlugin/WBCLFZSystemModule.ui similarity index 100% rename from src/WBCLFZSystemModule/WBCLFZSystemModule.ui rename to src/PluginWBFZExchangePlugin/WBCLFZSystemModule.ui diff --git a/src/WBCLFZSystemModule/WBCLFZSystemModule.vcxproj b/src/PluginWBFZExchangePlugin/WBCLFZSystemModule.vcxproj similarity index 100% rename from src/WBCLFZSystemModule/WBCLFZSystemModule.vcxproj rename to src/PluginWBFZExchangePlugin/WBCLFZSystemModule.vcxproj diff --git a/src/WBCLFZSystemModule/WBCLFZSystemModule.vcxproj.filters b/src/PluginWBFZExchangePlugin/WBCLFZSystemModule.vcxproj.filters similarity index 100% rename from src/WBCLFZSystemModule/WBCLFZSystemModule.vcxproj.filters rename to src/PluginWBFZExchangePlugin/WBCLFZSystemModule.vcxproj.filters diff --git a/src/WBCLFZSystemModule/WBCLFZSystemModule.vcxproj.user b/src/PluginWBFZExchangePlugin/WBCLFZSystemModule.vcxproj.user similarity index 100% rename from src/WBCLFZSystemModule/WBCLFZSystemModule.vcxproj.user rename to src/PluginWBFZExchangePlugin/WBCLFZSystemModule.vcxproj.user diff --git a/src/WBCLFZSystemModule/WBCLFZSystemModuleAPI.h b/src/PluginWBFZExchangePlugin/WBCLFZSystemModuleAPI.h similarity index 63% rename from src/WBCLFZSystemModule/WBCLFZSystemModuleAPI.h rename to src/PluginWBFZExchangePlugin/WBCLFZSystemModuleAPI.h index 4fd81aa..027a7ac 100644 --- a/src/WBCLFZSystemModule/WBCLFZSystemModuleAPI.h +++ b/src/PluginWBFZExchangePlugin/WBCLFZSystemModuleAPI.h @@ -5,9 +5,9 @@ #if defined(WBCLFZSYSTEMMODULE_API) -#define WBCLFZSYSTEMMODULEAPI Q_DECL_EXPORT +#define WBFZAPI Q_DECL_EXPORT #else -#define WBCLFZSYSTEMMODULEAPI Q_DECL_IMPORT +#define WBFZAPI Q_DECL_IMPORT #endif #endif diff --git a/src/PluginWBFZExchangePlugin/WBFZExchangePlugin.cpp b/src/PluginWBFZExchangePlugin/WBFZExchangePlugin.cpp index 9e94d8c..3a05a7c 100644 --- a/src/PluginWBFZExchangePlugin/WBFZExchangePlugin.cpp +++ b/src/PluginWBFZExchangePlugin/WBFZExchangePlugin.cpp @@ -5,10 +5,20 @@ #include "ModuleBase/ThreadControl.h" #include "ModuleBase/ThreadTaskManager.h" #include "WBFZExchangePlugin.h" +#include "DialogPCLStatisticalRemoveFilter.h" +#include "DialogPCLRadiusOutlierRemoval.h" +#include "DialogPCLGuassFilter.h" +#include "DialogPCLBilateralFilter.h" +#include "DialogPCLGPMesh.h" #include - - +#include "Common/DebugLogger.h" +#include "AllHead.h" +#include "TaskTreeClass.h" +#include "TaskNodeList.h" +#include "EchoTableEditWindow.h" +#include "SqliteDBMainWindow.h" +#include "LAMPImageCreateClass.h" namespace WBFZ { GUI::MainWindow* WBFZ::WBFZExchangePlugin::_mainwindow = nullptr; @@ -17,25 +27,46 @@ namespace WBFZ { { _describe = "WBFZExchangePlugin Installed Successfully"; _mainwindow = m; + + connect(_mainwindow, SIGNAL(on_pclStatisticalRemoveFilter(GUI::MainWindow*)), this, + SLOT(pclStatisticalRemoveFilter(GUI::MainWindow*))); + connect(_mainwindow, SIGNAL(on_pclRadiusOutlierRemoval(GUI::MainWindow*)), this, + SLOT(pclRadiusOutlierRemoval(GUI::MainWindow*))); + connect(_mainwindow, SIGNAL(on_pclGuassFilter(GUI::MainWindow*)), this, + SLOT(pclGuassFilter(GUI::MainWindow*))); + connect(_mainwindow, SIGNAL(on_pclBilateralFilter(GUI::MainWindow*)), this, + SLOT(pclBilateralFilter(GUI::MainWindow*))); + connect(_mainwindow, SIGNAL(on_pclGPMesh(GUI::MainWindow*)), this, + SLOT(pclGPMesh(GUI::MainWindow*))); + // FEKO + connect(_mainwindow, SIGNAL(on_actionImageSetting(GUI::MainWindow*)), this, + SLOT(actionImageSetting(GUI::MainWindow*))); + connect(_mainwindow, SIGNAL(on_actionFEKO2csv(GUI::MainWindow*)), this, + SLOT(actionFEKO2csv(GUI::MainWindow*))); + connect(_mainwindow, SIGNAL(on_actionScatterExport(GUI::MainWindow*)), this, + SLOT(actionScatterExport(GUI::MainWindow*))); + connect(_mainwindow, SIGNAL(on_actionFEKOImage(GUI::MainWindow*)), this, + SLOT(actionFEKOImage(GUI::MainWindow*))); + connect(_mainwindow, SIGNAL(on_actionantScatteringFEKOSetting(GUI::MainWindow*)), this, + SLOT(actionantScatteringFEKOSetting(GUI::MainWindow*))); + // 属性表 + connect(_mainwindow, SIGNAL(on_actionAttriutionDBShow(GUI::MainWindow*)), this, + SLOT(actionAttriutionDBShow(GUI::MainWindow*))); + DebugInfo("WBFZExchangePlugin::WBFZExchangePlugin has init \n"); } bool WBFZExchangePlugin::install() { - IO::IOConfigure::RegisterMeshImporter("CGNS(*.cgns)", CGNSimportMesh); - -// IO::IOConfigure::RegisterMeshExporter("CGNS(*.cgns)", CGNSexportMesh); - - - + if(_mainwindow == nullptr) + return false; + PluginBase::install(); + DebugInfo("WBFZExchangePlugin::WBFZExchangePlugin has install\n "); return true; } bool WBFZExchangePlugin::uninstall() { - IO::IOConfigure::RemoveMeshImporter("CGNS(*.cgns)"); - - IO::IOConfigure::RemoveMeshExporter("CGNS(*.cgns)"); - + PluginBase::uninstall(); return true; } @@ -45,6 +76,72 @@ namespace WBFZ { { return _mainwindow; } + + // 事件绑定 + + void WBFZExchangePlugin::pclStatisticalRemoveFilter(GUI::MainWindow* m) + { + DebugInfo("WBFZExchangePlugin::pclStatisticalRemoveFilter has init\n"); + MainWidget::DialogPCLStatisticalRemoveFilter dlg(m); + dlg.exec(); + } + void WBFZExchangePlugin::pclRadiusOutlierRemoval(GUI::MainWindow* m) + { + DebugInfo("WBFZExchangePlugin::pclRadiusOutlierRemoval has init\n"); + MainWidget::DialogPCLRadiusOutlierRemoval dlg(m); + dlg.exec(); + } + void WBFZExchangePlugin::pclGuassFilter(GUI::MainWindow* m) + { + DebugInfo("WBFZExchangePlugin::pclGuassFilter has init\n"); + MainWidget::DialogPCLGuassFilter dlg(m); + dlg.exec(); + } + void WBFZExchangePlugin::pclBilateralFilter(GUI::MainWindow* m) + { + DebugInfo("WBFZExchangePlugin::pclBilateralFilter has init\n"); + MainWidget::DialogPCLBilateralFilter dlg(m); + dlg.exec(); + } + void WBFZExchangePlugin::pclGPMesh(GUI::MainWindow* m) + { + DebugInfo(" WBFZExchangePlugin::pclGPMesh has init\n"); + MainWidget::DialogPCLGPMesh dlg(m); + dlg.exec(); + } + // FEKO 设置 + void WBFZExchangePlugin::actionImageSetting(GUI::MainWindow* m) + { + DebugInfo(" WBFZExchangePlugin::actionImageSetting has init\n"); + FEKOImageSettingFun(m); + } + void WBFZExchangePlugin::actionFEKO2csv(GUI::MainWindow* m) + { + DebugInfo(" WBFZExchangePlugin::actionFEKO2csv has init\n"); + FEKO2csvFun(m); + } + void WBFZExchangePlugin::actionScatterExport(GUI::MainWindow* m) + { + DebugInfo(" WBFZExchangePlugin::actionScatterExport has init\n"); + ScatterExportFun(m); + } + void WBFZExchangePlugin::actionFEKOImage(GUI::MainWindow* m) + { + DebugInfo(" WBFZExchangePlugin::actionFEKOImage has init\n"); + FEKOImageFun(m); + } + void WBFZExchangePlugin::actionantScatteringFEKOSetting(GUI::MainWindow* m) + { + DebugInfo(" WBFZExchangePlugin::actionantScatteringFEKOSetting has init\n"); + antScatteringFEKOSettingFun(m); + } + void WBFZExchangePlugin::actionAttriutionDBShow(GUI::MainWindow* m) { + + DebugInfo(" WBFZExchangePlugin::actionAttriutionDBShow has init\n"); + SqliteDBMainWindow* w = new SqliteDBMainWindow(m); + w->show(); + } + } // namespace WBFZ void Register(GUI::MainWindow* m, QList* ps) @@ -53,3 +150,56 @@ void Register(GUI::MainWindow* m, QList* ps) ps->append(p); } +void FEKOImageSettingFun(GUI::MainWindow* m) +{ + DebugInfo(" FEKOImageSettingFun has init\n"); + // 参数界面设置 + FEKOImageSettingTaskNodeClass* imageNode = new FEKOImageSettingTaskNodeClass(); + imageNode->TaskWindows->setOCCTDocument(m); + DebugInfo(" FEKOImageSettingFun has init imageNode\n"); + QString xmlfilepath = getSaveFilePath(m, QString::fromUtf8(u8"任务xml"), QString::fromUtf8(u8"xml文件 (*.xml)")); + imageNode->loadXmlFile(xmlfilepath); + DebugInfo(" FEKOImageSettingFun has init loadXmlFile\n"); + imageNode->TaskWindows->setOCCTDocument(m); + //this->addTaskNode(imageNode); + DebugInfo(" FEKOImageSettingFun has init ExcuteTask\n"); + imageNode->ExcuteTask(); +} +void FEKO2csvFun(GUI::MainWindow* m) +{ + DebugInfo(" FEKO2csvFun has init\n"); + QString xmlfilepath = getSaveFilePath(m, QString::fromUtf8(u8"设置FEKO结果导入任务xml"), + QString::fromUtf8(u8"xml文件 (*.xml)")); + DebugInfo(" xml file path %s \n",xmlfilepath.toStdString().c_str()); + FEKOResultImportTaskNode* fekoresulttask = new FEKOResultImportTaskNode(); + fekoresulttask->loadXmlFile(xmlfilepath); + fekoresulttask->ExcuteTask(); +} +void ScatterExportFun(GUI::MainWindow* m) +{ + DebugInfo(" ScatterExportFun has init\n"); + EchoTableEditWindow* echoEditwindow = new EchoTableEditWindow(m); + echoEditwindow->show(); +} +void FEKOImageFun(GUI::MainWindow* m) +{ + DebugInfo(" FEKOImageFun has init\n"); + LAMPImageCreateClass* imagewindows = new LAMPImageCreateClass; + imagewindows->on_pushButton_loadfekosimulationxml_clicked(); + imagewindows->show(); +} +void antScatteringFEKOSettingFun(GUI::MainWindow* m) +{ + DebugInfo(" antScatteringFEKOSettingFun has init\n"); + FEKOScatterSettingTaskNodeClass* scattertasknode=new FEKOScatterSettingTaskNodeClass(); + scattertasknode->TaskWindows->setDocument3d(m); + QString xmlfilepath = getSaveFilePath(m, QString::fromUtf8(u8"任务xml"), + QString::fromUtf8(u8"xml文件 (*.xml)")); + scattertasknode->loadXmlFile(xmlfilepath); + scattertasknode->TaskWindows->setDocument3d(m); + //this->addTaskNode(scattertasknode); + DebugInfo(" antScatteringFEKOSettingFun ExcuteTask t\n"); + scattertasknode->ExcuteTask(); +} + +// FEKO 参数调用 diff --git a/src/PluginWBFZExchangePlugin/WBFZExchangePlugin.h b/src/PluginWBFZExchangePlugin/WBFZExchangePlugin.h index e00079a..412a45a 100644 --- a/src/PluginWBFZExchangePlugin/WBFZExchangePlugin.h +++ b/src/PluginWBFZExchangePlugin/WBFZExchangePlugin.h @@ -3,18 +3,20 @@ #include "WBFZExchangePluginAPI.h" #include "PluginManager/pluginBase.h" +#include "MainWindow/MainWindow.h" + +namespace GUI{ + class MainWindow; +}; + namespace WBFZ { - enum PointCloudOperation - { - POINTCLOUD_NONE, - POINTCLOUD_FILTER, - POINTCLOUD_MESH - }; - class WBFZAPI WBFZExchangePlugin : public Plugins::PluginBase + + class WBFZAPI WBFZExchangePlugin : public Plugins::PluginBase { + Q_OBJECT public: WBFZExchangePlugin(GUI::MainWindow* m); ~WBFZExchangePlugin() = default; @@ -23,6 +25,29 @@ namespace WBFZ void reTranslate(QString); static GUI::MainWindow* getMWpt(); + public slots: + void pclStatisticalRemoveFilter(GUI::MainWindow* m); + // 半径滤波 + void pclRadiusOutlierRemoval(GUI::MainWindow* m); + // 高斯滤波 + void pclGuassFilter(GUI::MainWindow* m); + // 双边滤波 + void pclBilateralFilter(GUI::MainWindow* m); + // GP网格重建 + void pclGPMesh(GUI::MainWindow* m); + + // FEKO 成像模式参数设置 + void actionImageSetting(GUI::MainWindow* m); + // FEKO 仿真结果抽取 + void actionFEKO2csv(GUI::MainWindow* m); + // FEKO 仿真结果导出 + void actionScatterExport(GUI::MainWindow* m); + // 成像 + void actionFEKOImage(GUI::MainWindow* m); + // 散射界面设置 + void actionantScatteringFEKOSetting(GUI::MainWindow* m); + + void actionAttriutionDBShow(GUI::MainWindow* m); private: static GUI::MainWindow* _mainwindow; }; @@ -30,13 +55,24 @@ namespace WBFZ extern "C" { - void WBFZAPI Register(GUI::MainWindow* m, QList* plugs); - //函数返回值是无效的,不要通过返回值判断 - bool WBFZAPI CGNSimportMesh(QString AbFileName, int modelId); - bool WBFZAPI MSHimportMesh(QString AbFileName, int modelId); + void WBFZAPI Register(GUI::MainWindow* m, QList* plugs); + void WBFZAPI FEKOImageSettingFun(GUI::MainWindow* m); + void WBFZAPI FEKO2csvFun(GUI::MainWindow* m); + void WBFZAPI ScatterExportFun(GUI::MainWindow* m); + + void WBFZAPI FEKOImageFun(GUI::MainWindow* m); + + void WBFZAPI antScatteringFEKOSettingFun(GUI::MainWindow* m); } + + + + + + + #endif \ No newline at end of file diff --git a/src/PluginWBFZExchangePlugin/WBFZExchangePluginAPI.h b/src/PluginWBFZExchangePlugin/WBFZExchangePluginAPI.h index 7035206..45d8554 100644 --- a/src/PluginWBFZExchangePlugin/WBFZExchangePluginAPI.h +++ b/src/PluginWBFZExchangePlugin/WBFZExchangePluginAPI.h @@ -7,7 +7,38 @@ #if defined(WBFZ_API) #define WBFZAPI Q_DECL_EXPORT #else -#define WBFZAPI Q_DECL_IMPORT +#define WBFZAPI Q_DECL_IMPORT #endif + +// ===================================================== +// 常用宏定义 +// __SHOWPROCESS : 展示进度条 +// ====================================================== + +#define __SHOWPROCESS +//#define __SHOWMATPLOTLIBCPPTEST // 局部绘制结果调试 +#define __IMAGEPARALLEL // 成像算法并行版本 + +#define __IMAGEWINDOWSPROCESS // 成像算法使用加窗函数 + + + + +#ifdef __SHOWMATPLOTLIBCPPTEST +#include +#include +#include +//#define __SHOWECHOPARSE // 展示解析结果 +//#define __SHOWIMAGEPROCESSING // 展示成像中间结果 +//#define __SHOWIMAGEPROCESSRESULT// 展示成像结果 + + #endif + + + + + +#endif + diff --git a/src/LAMPTool/cpp.hint b/src/PluginWBFZExchangePlugin/cpp.hint similarity index 100% rename from src/LAMPTool/cpp.hint rename to src/PluginWBFZExchangePlugin/cpp.hint diff --git a/src/LAMPTool/interpolation.cpp b/src/PluginWBFZExchangePlugin/interpolation.cpp similarity index 100% rename from src/LAMPTool/interpolation.cpp rename to src/PluginWBFZExchangePlugin/interpolation.cpp diff --git a/src/LAMPTool/interpolation.h b/src/PluginWBFZExchangePlugin/interpolation.h similarity index 100% rename from src/LAMPTool/interpolation.h rename to src/PluginWBFZExchangePlugin/interpolation.h diff --git a/src/PluginWBFZExchangePlugin/main.cpp b/src/PluginWBFZExchangePlugin/main.cpp new file mode 100644 index 0000000..0f2c8f6 --- /dev/null +++ b/src/PluginWBFZExchangePlugin/main.cpp @@ -0,0 +1,199 @@ +//#include "HeaderSort.h" +//#include "AllHead.h" +//#include "WBCLFZSystemModule.h" +//#include +//#include +//#include +//#include +//#include +//#include +//#include +//#include +//#include +//#include +//#include +//#include "SqliteDBProcess/src/Application.h" +//#include "SqliteDBProcess/src/sqlite.h" +// +// +// +// +//void LoadProgramParams() { +// +// // 创建QSettings对象,指定配置文件路径 +// QSettings settings("config.ini", QSettings::IniFormat); +// +// QString variable = settings.value("variable", "Default Value").toString(); +// qDebug() << "Loaded variable:" << variable; +// +// // 修改程序变量 +// variable = "New Value"; +// settings.setValue("variable", variable); +// qDebug() << "Updated variable:" << variable; +//} +// +// +//void TestOCCT() { +// gp_Vec Z_vec(gp_Pnt(0, 0, 0), gp_Pnt(0, 0, 1)); +// gp_Vec X_vec(gp_Pnt(0, 0, 0), gp_Pnt(1, 0, 0)); +// gp_Vec Y_vec(gp_Pnt(0, 0, 0), gp_Pnt(0, 1, 0)); +// Standard_Real rotationAngle = 90; +// rotationAngle = rotationAngle * M_PI / 180; +// +// gp_Trsf fly_Z_trsf; +// fly_Z_trsf.SetRotation(gp_Ax1(gp_Pnt(0, 0, 0), X_vec), rotationAngle); // Y --> Z 逆时针为 正 +// +// qDebug() << QString("Y_vec before:( %1 , %2 , %3 )").arg(Y_vec.X()).arg(Y_vec.Y()).arg(Y_vec.Z()); +// Y_vec.Transform(fly_Z_trsf); +// qDebug() << QString("Y_vec after:( %1 , %2 , %3 )").arg(Y_vec.X()).arg(Y_vec.Y()).arg(Y_vec.Z()); +// +// qDebug() << QString("X_vec before:( %1 , %2 , %3 )").arg(X_vec.X()).arg(X_vec.Y()).arg(X_vec.Z()); +// X_vec.Transform(fly_Z_trsf); +// qDebug() << QString("Y_vec after:( %1 , %2 , %3 )").arg(X_vec.X()).arg(X_vec.Y()).arg(X_vec.Z()); +// +// qDebug() << QString("Z_vec before:( %1 , %2 , %3 )").arg(Z_vec.X()).arg(Z_vec.Y()).arg(Z_vec.Z()); +// Z_vec.Transform(fly_Z_trsf); +// qDebug() << QString("Z_vec after:( %1 , %2 , %3 )").arg(Z_vec.X()).arg(Z_vec.Y()).arg(Z_vec.Z()); +//} +// +// +//// 自定义消息处理程序 +//void LogTextcustomMessageHandler(QtMsgType type, const QMessageLogContext& context, const QString& msg) +//{ +// +// // -------- 日志输出 ---------------------------------------------------------------------------------- +// +// // 获取应用程序执行文件的路径 +// QString exePath = QCoreApplication::applicationFilePath(); +// +// // 使用QFileInfo获取父目录 +// QFileInfo fileInfo(exePath); +// QString parentDir = fileInfo.dir().path(); +// +// // 获取当前日期和时间 +// QDateTime currentDateTime = QDateTime::currentDateTime(); +// // 格式化日期和时间为字符串,精确到秒 +// QString dateTimeString = currentDateTime.toString("yyyyMMdd_hh"); +// // 创建文件名 +// QString fileName = parentDir + "/logs/" + "log_" + dateTimeString + ".log"; +// // 创建一个日志文件 +// QFile logFile(fileName); +// logFile.open(QIODevice::WriteOnly | QIODevice::Append); +// QTextStream textStream(&logFile); +// // 输出到控制台 +// QTextStream consoleStream(stdout); +// +// // 写入日志信息 +// switch (type) { +// case QtDebugMsg: +// textStream << "[Debug] ["+ currentDateTime.toString("yyyy-MM-dd hh:mm:ss")+"] "; +// consoleStream << "[Debug] [" + currentDateTime.toString("yyyy-MM-dd hh:mm:ss") + "] "; +// break; +// case QtWarningMsg: +// textStream << "[Warning] [" + currentDateTime.toString("yyyy-MM-dd hh:mm:ss") + "] "; +// consoleStream << "[Warning] [" + currentDateTime.toString("yyyy-MM-dd hh:mm:ss") + "] "; +// break; +// case QtCriticalMsg: +// textStream << "[Critical] [" + currentDateTime.toString("yyyy-MM-dd hh:mm:sss") + "] "; +// consoleStream << "[Critical] [" + currentDateTime.toString("yyyy-MM-dd hh:mm:sss") + "] "; +// break; +// case QtFatalMsg: +// textStream << "[Fatal] [" + currentDateTime.toString("yyyy-MM-dd hh:mm:ss") + "] "; +// consoleStream << "[Fatal] [" + currentDateTime.toString("yyyy-MM-dd hh:mm:ss") + "] "; +// break; +// } +// //QByteArray localMsg = msg.toLocal8Bit(); +// //const char* file = context.file ? context.file : ""; +// //const char* function = context.function ? context.function : ""; +// //localMsg = QString("%1 (%2, %3:%4)\n").arg(msg).arg(function).arg(file).arg(context.line).toLocal8Bit(); +// consoleStream << msg << Qt::endl; // 输出到控制台 +// textStream << msg << Qt::endl;// 设置文本流 +// +//} +// +// +// +//static QString message = QString(); +// +//void db4sMessageOutput(QtMsgType type, const QMessageLogContext& context, const QString& msg) +//{ +// QByteArray localMsg = msg.toLocal8Bit(); +// +// // Emulate the default Qt treatment. This might not work in some OS, like Windows. +// fprintf(stderr, "%s\n", localMsg.constData()); +// +// const char* file = context.file ? context.file : ""; +// const char* function = context.function ? context.function : ""; +// localMsg = QString("%1 (%2, %3:%4)\n").arg(msg).arg(function).arg(file).arg(context.line).toLocal8Bit(); +// +// // Log using the SQLite log mechanism, so it gets the same treatment than messages +// // reported by SQLite itself. This will allow these messages to be seen in our Log window. +// // Error code will be the type +// sqlite3_log(static_cast(type), localMsg.constData()); +//} +// +//void boxMessageOutput(QtMsgType, const QMessageLogContext&, const QString& msg) +//{ +// message += msg + "\n"; +//} +// +// +// +//int ProcessdBTestmain(int argc, char** argv) +//{ +// +//#ifdef Q_OS_WIN +// // In Windows, there is no output to terminal for a graphical application, so we install +// // the output to message box, until the main window is shown or the application exits. +// qInstallMessageHandler(LogTextcustomMessageHandler); +//#endif +// +// // Create application object. All the initialisation stuff happens in there +// Application a(argc, argv); +// +// // If there has been invocations to the message handler, show it to user in a message box. +// if (!message.isEmpty()) { +// QMessageBox messageBox; +// messageBox.setTextFormat(Qt::RichText); +// messageBox.setText("
" + message.toHtmlEscaped() + "
"); +// messageBox.exec(); +// } +// +// // Quit application now if user doesn't want to see the UI +// if (a.dontShowMainWindow()) +// return 0; +// +// qInstallMessageHandler(LogTextcustomMessageHandler); +// +// // Run application +// return a.exec(); +//} +// +//// +////int main(int argc, char *argv[]) +////{ +//// +//// // ProcessdBTestmain(argc, argv); +//// +//// QApplication a(argc, argv); +//// qInstallMessageHandler(LogTextcustomMessageHandler); +//// TestOCCT(); +//// // 示例输出 +//// qDebug() << "Program is init debug log out ..."; +//// qWarning() << "Program is init waring log out ..."; +//// qCritical() << "Program is init Critical log out ..."; +//// +//// // -------- 测试程序正式执行 ---------------------------------------------------------------------------------- +//// WBCLFZSystemModule* w=new WBCLFZSystemModule(); // +//// w->show(); +//// return a.exec(); +//// +////} +// +// +// +// +// +// +// +// diff --git a/src/WBCLFZSystemModule/modelProcess/ModelProcess.cpp b/src/PluginWBFZExchangePlugin/modelProcess/ModelProcess.cpp similarity index 84% rename from src/WBCLFZSystemModule/modelProcess/ModelProcess.cpp rename to src/PluginWBFZExchangePlugin/modelProcess/ModelProcess.cpp index 7c95b5b..c095c63 100644 --- a/src/WBCLFZSystemModule/modelProcess/ModelProcess.cpp +++ b/src/PluginWBFZExchangePlugin/modelProcess/ModelProcess.cpp @@ -1,15 +1,15 @@ #include "ModelProcess.h" -#include "EchoShowProcess/FEKOResultImport.h" -#include "TaskXml/TaskTreeClass.h" +#include "FEKOResultImport.h" +#include "TaskTreeClass.h" #include #include #include - +#include "ui_ModelProcess.h" ModelProcess::ModelProcess(QWidget *parent) : QMainWindow(parent) { - ui.setupUi(this); + ui->setupUi(this); this->initConstVariable(); // 设置背景色 this->showConntentsWindows(); @@ -51,12 +51,12 @@ void ModelProcess::on_actionCalibrationConstCreate_triggered() void ModelProcess::on_actionImageSetting_triggered() { - FEKOImageSettingTaskNodeClass* imageNode = new FEKOImageSettingTaskNodeClass(); - QString xmlfilepath = getSaveFilePath(this, QString::fromUtf8(u8"任务xml"), QString::fromUtf8(u8"xml文件 (*.xml)")); - imageNode->loadXmlFile(xmlfilepath); - imageNode->TaskWindows->setOCCTDocument(this->myDocument3d->myContext); - this->addTaskNode(imageNode); - imageNode->ExcuteTask(); +// FEKOImageSettingTaskNodeClass* imageNode = new FEKOImageSettingTaskNodeClass(); +// QString xmlfilepath = getSaveFilePath(this, QString::fromUtf8(u8"任务xml"), QString::fromUtf8(u8"xml文件 (*.xml)")); +// imageNode->loadXmlFile(xmlfilepath); +// imageNode->TaskWindows->setOCCTDocument(this->myDocument3d->myContext); +// this->addTaskNode(imageNode); +// imageNode->ExcuteTask(); } void ModelProcess::on_action_ScatterExport_triggered() @@ -76,12 +76,12 @@ void ModelProcess::on_actionFEKOImage_triggered() void ModelProcess::on_action_antScatteringFEKOSetting_triggered() { - FEKOScatterSettingTaskNodeClass* scattertasknode=new FEKOScatterSettingTaskNodeClass(); - QString xmlfilepath = getSaveFilePath(this, QString::fromUtf8(u8"任务xml"), QString::fromUtf8(u8"xml文件 (*.xml)")); - scattertasknode->loadXmlFile(xmlfilepath); - scattertasknode->TaskWindows->setDocument3d(this->myDocument3d->myContext); - this->addTaskNode(scattertasknode); - scattertasknode->ExcuteTask(); +// FEKOScatterSettingTaskNodeClass* scattertasknode=new FEKOScatterSettingTaskNodeClass(); +// QString xmlfilepath = getSaveFilePath(this, QString::fromUtf8(u8"任务xml"), QString::fromUtf8(u8"xml文件 (*.xml)")); +// scattertasknode->loadXmlFile(xmlfilepath); +// scattertasknode->TaskWindows->setDocument3d(this->myDocument3d->myContext); +// this->addTaskNode(scattertasknode); +// scattertasknode->ExcuteTask(); } void ModelProcess::on_action_openImageShowWindows_triggered() @@ -98,7 +98,7 @@ void ModelProcess::ShowTaskListMenu(QPoint p) void ModelProcess::ShowTaskWindows() { - QList selectNodes = this->ui.treeWidgetTask->selectedItems(); // 获取顶层 + QList selectNodes = this->ui->treeWidgetTask->selectedItems(); // 获取顶层 QTreeWidgetItem* imageNode = selectNodes.at(0); imageNode->data(0, Qt::UserRole).value()->ExcuteTask(); } @@ -106,7 +106,7 @@ void ModelProcess::ShowTaskWindows() void ModelProcess::addTaskNode(TaskNode* Node) { // 往qtTree 添加节点 - QTreeWidgetItem* topNode = this->ui.treeWidgetTask->topLevelItem(0); // 获取顶层 + QTreeWidgetItem* topNode = this->ui->treeWidgetTask->topLevelItem(0); // 获取顶层 QTreeWidgetItem* imageSetNode = new QTreeWidgetItem(); imageSetNode->setText(0, Node->getTaskName()); imageSetNode->setData(0, Qt::UserRole, QVariant::fromValue(Node)); @@ -239,9 +239,9 @@ void ModelProcess::actionOpenModel() bool ModelProcess::initFileOperatorMenu() { - QAction* action_OpenFileRaster=this->ui.menu_FileOpenOperator->addAction(u8"打开影像"); + QAction* action_OpenFileRaster=this->ui->menu_FileOpenOperator->addAction(u8"打开影像"); QObject::connect(action_OpenFileRaster, SIGNAL(triggered()), this, SLOT(actionOpenRaster())); - QAction* action_OpenModelStl = this->ui.menu_FileOpenOperator->addAction(u8"打开模型"); + QAction* action_OpenModelStl = this->ui->menu_FileOpenOperator->addAction(u8"打开模型"); QObject::connect(action_OpenModelStl, SIGNAL(triggered()), this, SLOT(actionOpenModel())); @@ -279,9 +279,9 @@ bool ModelProcess::initOCCTView() } this->verticalLayout->addWidget(this->myDocument3d); - QVBoxLayout* aViewLayout = new QVBoxLayout(this->ui.OCCViewGLWidget); + QVBoxLayout* aViewLayout = new QVBoxLayout(this->ui->OCCViewGLWidget); aViewLayout->setContentsMargins(0, 0, 0, 0); - this->myGeomWidget = new GeomWidget(myDocument3d, this->ui.OCCViewGLWidget);// 创建一个三维显示对象 + this->myGeomWidget = new GeomWidget(myDocument3d, this->ui->OCCViewGLWidget);// 创建一个三维显示对象 aViewLayout->addWidget(this->myGeomWidget); this->myGeomWidget->setContentsMargins(0, 0, 0, 0); this->myDocument3d->InitAixs(); // 计算三维坐标轴 @@ -356,8 +356,8 @@ bool ModelProcess::initMenuList() this->initSelectModeMenu(); this->initGeometryShowModelMenu(); - this->ui.menu_modelOperator->addMenu(this->selectModeMenu); - this->ui.menu_modelOperator->addMenu(this->showModelMenu); + this->ui->menu_modelOperator->addMenu(this->selectModeMenu); + this->ui->menu_modelOperator->addMenu(this->showModelMenu); return true; } @@ -370,29 +370,29 @@ bool ModelProcess::initBandingEvent() bool ModelProcess::initTaskDocker() { - this->ui.dockWidget_Task->setHidden(false); - this->ui.dockWidget_Task->setWindowTitle(QString::fromUtf8(u8"任务列表")); + this->ui->dockWidget_Task->setHidden(false); + this->ui->dockWidget_Task->setWindowTitle(QString::fromUtf8(u8"任务列表")); // 初始化任务列表 - // this->ui.treeWidgetTask->setColumnCount(0); + // this->ui->treeWidgetTask->setColumnCount(0); QStringList headerLabels; headerLabels <ui.treeWidgetTask->setHeaderLabels(headerLabels); - QTreeWidgetItem* topNode = this->ui.treeWidgetTask->topLevelItem(0); // 获取顶层 + this->ui->treeWidgetTask->setHeaderLabels(headerLabels); + QTreeWidgetItem* topNode = this->ui->treeWidgetTask->topLevelItem(0); // 获取顶层 if (topNode) { topNode->setText(0, u8"成像任务"); } else { - this->ui.treeWidgetTask->insertTopLevelItem(0, new QTreeWidgetItem(this->ui.treeWidgetTask, QStringList(u8"任务"))); + this->ui->treeWidgetTask->insertTopLevelItem(0, new QTreeWidgetItem(this->ui->treeWidgetTask, QStringList(u8"任务"))); } - this->ui.treeWidgetTask->setContextMenuPolicy(Qt::CustomContextMenu); + this->ui->treeWidgetTask->setContextMenuPolicy(Qt::CustomContextMenu); - this->TaskListContextMenu = new QMenu(this->ui.treeWidgetTask); + this->TaskListContextMenu = new QMenu(this->ui->treeWidgetTask); QAction* openTaskNodeAction = this->TaskListContextMenu->addAction(u8"打开"); // QObject::connect(openTaskNodeAction, SIGNAL(triggered()), this, SLOT(ShowTaskWindows())); - QObject::connect(this->ui.treeWidgetTask, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(ShowTaskListMenu(QPoint))); + QObject::connect(this->ui->treeWidgetTask, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(ShowTaskListMenu(QPoint))); return false; } diff --git a/src/WBCLFZSystemModule/modelProcess/ModelProcess.h b/src/PluginWBFZExchangePlugin/modelProcess/ModelProcess.h similarity index 94% rename from src/WBCLFZSystemModule/modelProcess/ModelProcess.h rename to src/PluginWBFZExchangePlugin/modelProcess/ModelProcess.h index 4c79cda..cb618d5 100644 --- a/src/WBCLFZSystemModule/modelProcess/ModelProcess.h +++ b/src/PluginWBFZExchangePlugin/modelProcess/ModelProcess.h @@ -1,21 +1,25 @@ #pragma once #ifndef MODELPROCESS_H #define MODELPROCESS_H - +#include "WBFZExchangePluginAPI.h" #include "AllHead.h" #include #include "OCCViewer\DocumentCommon.h" #include "OCCViewer\GeomWidget.h" -#include "ui_ModelProcess.h" + #include "OCCTopoShapeTreeViewer.h" #include "QtSARAntModelSetting.h" -#include "EchoShowProcess/EchoTableEditWindow.h" +#include "EchoTableEditWindow.h" #include "LAMPImageCreateClass.h" #include "LAMP_ScatterSettingClass.h" #include "LAMPDataShowClass.h" -class ModelProcess : public QMainWindow +namespace Ui{ + class ModelProcessClass; +} + +class ModelProcess : public QMainWindow { Q_OBJECT @@ -24,7 +28,7 @@ public: ~ModelProcess(); private: - Ui::ModelProcessClass ui; + Ui::ModelProcessClass* ui; public: QMenu* TaskListContextMenu; diff --git a/src/WBCLFZSystemModule/modelProcess/ModelProcess.ui b/src/PluginWBFZExchangePlugin/modelProcess/ModelProcess.ui similarity index 99% rename from src/WBCLFZSystemModule/modelProcess/ModelProcess.ui rename to src/PluginWBFZExchangePlugin/modelProcess/ModelProcess.ui index 186da72..9b9fd9f 100644 --- a/src/WBCLFZSystemModule/modelProcess/ModelProcess.ui +++ b/src/PluginWBFZExchangePlugin/modelProcess/ModelProcess.ui @@ -6,8 +6,8 @@ 0 0 - 967 - 602 + 959 + 579
@@ -42,7 +42,7 @@ 0 0 - 967 + 959 22 @@ -118,8 +118,8 @@ - + @@ -412,7 +412,7 @@ - + diff --git a/src/WBCLFZSystemModule/qconsolewidget.pri b/src/PluginWBFZExchangePlugin/qconsolewidget.pri similarity index 100% rename from src/WBCLFZSystemModule/qconsolewidget.pri rename to src/PluginWBFZExchangePlugin/qconsolewidget.pri diff --git a/src/WBCLFZSystemModule/qscriptcompleter.cpp b/src/PluginWBFZExchangePlugin/qscriptcompleter.cpp similarity index 100% rename from src/WBCLFZSystemModule/qscriptcompleter.cpp rename to src/PluginWBFZExchangePlugin/qscriptcompleter.cpp diff --git a/src/WBCLFZSystemModule/qscriptcompleter.h b/src/PluginWBFZExchangePlugin/qscriptcompleter.h similarity index 100% rename from src/WBCLFZSystemModule/qscriptcompleter.h rename to src/PluginWBFZExchangePlugin/qscriptcompleter.h diff --git a/src/WBCLFZSystemModule/readme.md b/src/PluginWBFZExchangePlugin/readme.md similarity index 100% rename from src/WBCLFZSystemModule/readme.md rename to src/PluginWBFZExchangePlugin/readme.md diff --git a/src/LAMPTool/referenceHeader.h b/src/PluginWBFZExchangePlugin/referenceHeader.h similarity index 83% rename from src/LAMPTool/referenceHeader.h rename to src/PluginWBFZExchangePlugin/referenceHeader.h index e0a9586..b433f39 100644 --- a/src/LAMPTool/referenceHeader.h +++ b/src/PluginWBFZExchangePlugin/referenceHeader.h @@ -9,14 +9,14 @@ #ifndef REFERENCEHEADER_H #define REFERENCEHEADER_H -#include "LAMPToolAPI.h" + +#include "WBFZExchangePluginAPI.h" #include #include #include #include #include #include -#include #include #include #include @@ -107,6 +107,7 @@ #include #include #include +#include #include #include #include @@ -131,35 +132,12 @@ //================================================ // 常用函数 //================================================ -std::vector LAMPTOOLAPI convertQStringListToStdVector(const QStringList& qStringList); +std::vector convertQStringListToStdVector(const QStringList& qStringList); -// ===================================================== -// 常用宏定义 -// __SHOWPROCESS : 展示进度条 -// ====================================================== - -#define __SHOWPROCESS -//#define __SHOWMATPLOTLIBCPPTEST // 局部绘制结果调试 -#define __IMAGEPARALLEL // 成像算法并行版本 -#define __IMAGEWINDOWSPROCESS // 成像算法使用加窗函数 - - - - -#ifdef __SHOWMATPLOTLIBCPPTEST -#include -#include -#include -//#define __SHOWECHOPARSE // 展示解析结果 -//#define __SHOWIMAGEPROCESSING // 展示成像中间结果 -//#define __SHOWIMAGEPROCESSRESULT// 展示成像结果 - - -#endif diff --git a/src/WBCLFZSystemModule/resource.h b/src/PluginWBFZExchangePlugin/resource.h similarity index 100% rename from src/WBCLFZSystemModule/resource.h rename to src/PluginWBFZExchangePlugin/resource.h diff --git a/src/WBCLFZSystemModule/scriptsession.cpp b/src/PluginWBFZExchangePlugin/scriptsession.cpp similarity index 100% rename from src/WBCLFZSystemModule/scriptsession.cpp rename to src/PluginWBFZExchangePlugin/scriptsession.cpp diff --git a/src/WBCLFZSystemModule/scriptsession.h b/src/PluginWBFZExchangePlugin/scriptsession.h similarity index 90% rename from src/WBCLFZSystemModule/scriptsession.h rename to src/PluginWBFZExchangePlugin/scriptsession.h index 652213d..8294b52 100644 --- a/src/WBCLFZSystemModule/scriptsession.h +++ b/src/PluginWBFZExchangePlugin/scriptsession.h @@ -1,5 +1,6 @@ #ifndef SCRIPTSESSION_H #define SCRIPTSESSION_H +#include "WBFZExchangePluginAPI.h" #include "AllHead.h" #include #include @@ -8,7 +9,7 @@ class QElapsedTimer; class QJSEngine; class QConsoleWidget; -class ScriptSession : public QObject +class ScriptSession : public QObject { Q_OBJECT public: diff --git a/src/LAMPTool/test.png b/src/PluginWBFZExchangePlugin/test.png similarity index 100% rename from src/LAMPTool/test.png rename to src/PluginWBFZExchangePlugin/test.png diff --git a/src/PointCloudOperator/CMakeLists.txt b/src/PointCloudOperator/CMakeLists.txt index c8e69af..5b46b87 100644 --- a/src/PointCloudOperator/CMakeLists.txt +++ b/src/PointCloudOperator/CMakeLists.txt @@ -125,7 +125,6 @@ target_link_libraries(PointCloudOperator PRIVATE ${_runtimes_libraries} ${_depend_library} ${PCL_LIBRARIES} - Common ) #----------------------------------------------------------------------------- diff --git a/src/PointCloudOperator/PointCloudCommon.cpp b/src/PointCloudOperator/PointCloudCommon.cpp index fff144c..9145d94 100644 --- a/src/PointCloudOperator/PointCloudCommon.cpp +++ b/src/PointCloudOperator/PointCloudCommon.cpp @@ -12,8 +12,28 @@ #include #include #include +#include // for loadPCDFile, savePCDFile +#include +#include +#include +#include +#include +#include // for vtkFloatArray +#include +#include +#include // for vtkOBJReader +#include // for vtkPoints +#include // for vtkUnsignedCharArray +#include "MeshData/meshSingleton.h" +#include +#include - +// Support for VTK 7.1 upwards +#ifdef vtkGenericDataArray_h +#define SetTupleValue SetTypedTuple +#define InsertNextTupleValue InsertNextTypedTuple +#define GetTupleValue GetTypedTuple +#endif namespace PointCloudOperator { PointCloudCommon::PointCloudCommon(QObject* parent) @@ -22,43 +42,50 @@ namespace PointCloudOperator { } void PointCloudCommon::NormalEstimation(pcl::PointCloud::Ptr cloud_in, - pcl::PointCloud::Ptr normals) + pcl::PointCloud::Ptr cloud_with_normals) { + pcl::NormalEstimation n; -// pcl::PointCloud::Ptr normals(new pcl::PointCloud); + pcl::PointCloud::Ptr normals(new pcl::PointCloud); pcl::search::KdTree::Ptr tree(new pcl::search::KdTree); tree->setInputCloud(cloud_in); n.setInputCloud(cloud_in); n.setSearchMethod(tree); n.setKSearch(10); n.compute(*normals); - + pcl::concatenateFields(*cloud_in, *normals, *cloud_with_normals); } void PointCloudCommon::NormalEstimation(pcl::PointCloud::Ptr cloud_in, - pcl::PointCloud::Ptr normals) + pcl::PointCloud::Ptr cloud_with_normals) { + pcl::PointCloud::Ptr cloudxyz(new pcl::PointCloud); + pcl::copyPointCloud(*cloud_in, *cloudxyz); pcl::NormalEstimation n; + pcl::PointCloud::Ptr normals(new pcl::PointCloud); pcl::search::KdTree::Ptr tree(new pcl::search::KdTree); tree->setInputCloud(cloud_in); n.setInputCloud(cloud_in); n.setSearchMethod(tree); n.setKSearch(10); n.compute(*normals); - - + pcl::concatenateFields(*cloudxyz, *normals, *cloud_with_normals); } void PointCloudCommon::NormalEstimation(pcl::PointCloud::Ptr cloud_in, - pcl::PointCloud::Ptr normals) + pcl::PointCloud::Ptr cloud_with_normals) { + pcl::PointCloud::Ptr cloudxyz(new pcl::PointCloud); + pcl::copyPointCloud(*cloud_in, *cloudxyz); pcl::NormalEstimation n; + pcl::PointCloud::Ptr normals(new pcl::PointCloud); pcl::search::KdTree::Ptr tree(new pcl::search::KdTree); tree->setInputCloud(cloud_in); n.setInputCloud(cloud_in); n.setSearchMethod(tree); n.setKSearch(10); n.compute(*normals); + pcl::concatenateFields(*cloudxyz, *normals, *cloud_with_normals); } Eigen::Vector3i PointCloudCommon::jetColorMap(float value,float min_intensity,float max_intensity) @@ -91,4 +118,150 @@ namespace PointCloudOperator { return Eigen::Vector3i(static_cast(255 * r), static_cast(255 * g), static_cast(255 * b)); } + + int PointCloudCommon::mesh2vtk (const pcl::PolygonMesh& mesh, vtkPolyData* poly_data) + { + auto nr_points = mesh.cloud.width * mesh.cloud.height; + auto nr_polygons = static_cast (mesh.polygons.size ()); + + // reset vtkPolyData object + //poly_data = vtkPolyData::New (); // OR poly_data->Reset(); + vtkPoints* vtk_mesh_points = vtkPoints::New (); + vtkCellArray* vtk_mesh_polygons = vtkCellArray::New (); + poly_data->SetPoints (vtk_mesh_points); + + // get field indices for x, y, z (as well as rgb and/or rgba) + int idx_x = -1, idx_y = -1, idx_z = -1, idx_rgb = -1, idx_rgba = -1, idx_normal_x = -1, idx_normal_y = -1, idx_normal_z = -1; + for (int d = 0; d < static_cast (mesh.cloud.fields.size ()); ++d) + { + if (mesh.cloud.fields[d].name == "x") idx_x = d; + else if (mesh.cloud.fields[d].name == "y") idx_y = d; + else if (mesh.cloud.fields[d].name == "z") idx_z = d; + else if (mesh.cloud.fields[d].name == "rgb") idx_rgb = d; + else if (mesh.cloud.fields[d].name == "rgba") idx_rgba = d; + else if (mesh.cloud.fields[d].name == "normal_x") idx_normal_x = d; + else if (mesh.cloud.fields[d].name == "normal_y") idx_normal_y = d; + else if (mesh.cloud.fields[d].name == "normal_z") idx_normal_z = d; + } + if ( ( idx_x == -1 ) || ( idx_y == -1 ) || ( idx_z == -1 ) ) + nr_points = 0; + + // copy point data + vtk_mesh_points->SetNumberOfPoints (nr_points); + if (nr_points > 0) + { + Eigen::Vector4f pt = Eigen::Vector4f::Zero (); + Eigen::Array4i xyz_offset (mesh.cloud.fields[idx_x].offset, mesh.cloud.fields[idx_y].offset, mesh.cloud.fields[idx_z].offset, 0); + for (vtkIdType cp = 0; cp < static_cast (nr_points); ++cp, xyz_offset += mesh.cloud.point_step) + { + memcpy(&pt[0], &mesh.cloud.data[xyz_offset[0]], sizeof (float)); // NOLINT(readability-container-data-pointer) + memcpy(&pt[1], &mesh.cloud.data[xyz_offset[1]], sizeof (float)); + memcpy(&pt[2], &mesh.cloud.data[xyz_offset[2]], sizeof (float)); + vtk_mesh_points->InsertPoint (cp, pt[0], pt[1], pt[2]); + } + } + + // copy polygon data + if (nr_polygons > 0) + { + for (unsigned int i = 0; i < nr_polygons; i++) + { + auto nr_points_in_polygon = static_cast (mesh.polygons[i].vertices.size ()); + vtk_mesh_polygons->InsertNextCell (nr_points_in_polygon); + for (unsigned int j = 0; j < nr_points_in_polygon; j++) + vtk_mesh_polygons->InsertCellPoint (mesh.polygons[i].vertices[j]); + } + poly_data->SetPolys (vtk_mesh_polygons); + } + + // copy color information + if (idx_rgb != -1 || idx_rgba != -1) + { + vtkUnsignedCharArray* colors = vtkUnsignedCharArray::New (); + colors->SetNumberOfComponents (3); + colors->SetName ("Colors"); + pcl::RGB rgb; + int offset = (idx_rgb != -1) ? mesh.cloud.fields[idx_rgb].offset : mesh.cloud.fields[idx_rgba].offset; + for (pcl::uindex_t cp = 0; cp < nr_points; ++cp) + { + memcpy (&rgb, &mesh.cloud.data[cp * mesh.cloud.point_step + offset], sizeof (pcl::RGB)); + const unsigned char color[3] = {rgb.r, rgb.g, rgb.b}; + colors->InsertNextTupleValue (color); + } + poly_data->GetPointData ()->SetScalars (colors); + } + + // copy normal information + if (( idx_normal_x != -1 ) && ( idx_normal_y != -1 ) && ( idx_normal_z != -1 )) + { + vtkFloatArray* normals = vtkFloatArray::New (); + normals->SetNumberOfComponents (3); + float nx = 0.0f, ny = 0.0f, nz = 0.0f; + for (pcl::uindex_t cp = 0; cp < nr_points; ++cp) + { + memcpy (&nx, &mesh.cloud.data[cp*mesh.cloud.point_step+mesh.cloud.fields[idx_normal_x].offset], sizeof (float)); + memcpy (&ny, &mesh.cloud.data[cp*mesh.cloud.point_step+mesh.cloud.fields[idx_normal_y].offset], sizeof (float)); + memcpy (&nz, &mesh.cloud.data[cp*mesh.cloud.point_step+mesh.cloud.fields[idx_normal_z].offset], sizeof (float)); + const float normal[3] = {nx, ny, nz}; + normals->InsertNextTupleValue (normal); + } + poly_data->GetPointData()->SetNormals (normals); + } + + if (poly_data->GetPoints () == nullptr) + return (0); + return (static_cast (poly_data->GetPoints ()->GetNumberOfPoints ())); + } + vtkPolyData* PointCloudCommon::meshSetToVtkDataset(MeshData::MeshSet* in_set) + { + if (in_set == nullptr) return nullptr; + if (in_set->getAllCount()==0) return nullptr; + + + MeshData::MeshData* meshdata = MeshData::MeshData::getInstance(); + QList kids = in_set->getKernals(); + + MeshData::SetType _type=in_set->getSetType(); + + vtkSmartPointer Fliter = vtkSmartPointer::New(); + for (int kid : kids) + { + QList member = in_set->getKernalMembers(kid); + auto k = meshdata->getKernalByID(kid); + if (member.isEmpty() || k ==nullptr) continue; + vtkDataSet* dataset = k->getMeshData(); + if (dataset == nullptr) continue; + vtkSmartPointer idArray = vtkSmartPointer::New(); + for (int id : member) idArray->InsertNextValue(id); + + vtkSmartPointer selectionNode = vtkSmartPointer::New(); + if (_type == MeshData::SetType::Element) + { + selectionNode->SetFieldType(vtkSelectionNode::CELL); + } + else if (_type == MeshData::SetType::Node) + { + selectionNode->SetFieldType(vtkSelectionNode::POINT); + } + selectionNode->SetContentType(vtkSelectionNode::INDICES); + selectionNode->SetSelectionList(idArray); + + vtkSmartPointer selection = vtkSmartPointer::New(); + selection->AddNode(selectionNode); + + vtkSmartPointer extractionSelection = vtkSmartPointer::New(); + extractionSelection->SetInputData(0, dataset); + extractionSelection->SetInputData(1, selection); + extractionSelection->Update(); + + Fliter->AddInputData(extractionSelection->GetOutput()); + } + Fliter->Update(); + vtkPolyData* displayDataSet=vtkPolyData::New(); + displayDataSet->DeepCopy(Fliter->GetOutput()); + + + return displayDataSet; + } + } // namespace PointCloudOperator \ No newline at end of file diff --git a/src/PointCloudOperator/PointCloudCommon.h b/src/PointCloudOperator/PointCloudCommon.h index c1de61d..6491cf5 100644 --- a/src/PointCloudOperator/PointCloudCommon.h +++ b/src/PointCloudOperator/PointCloudCommon.h @@ -108,8 +108,8 @@ // Visualization Toolkit (VTK) #include - - +#include "MeshData/meshSet.h" +#include "Meshdata/meshKernal.h" @@ -122,15 +122,15 @@ namespace PointCloudOperator { PointCloudCommon(QObject* parent=nullptr); ~PointCloudCommon()=default; public: - static void NormalEstimation(pcl::PointCloud::Ptr cloud, pcl::PointCloud::Ptr normals); - static void NormalEstimation(pcl::PointCloud::Ptr cloud, pcl::PointCloud::Ptr normals); - static void NormalEstimation(pcl::PointCloud::Ptr cloud, pcl::PointCloud::Ptr normals); + static void NormalEstimation(pcl::PointCloud::Ptr cloud, pcl::PointCloud::Ptr normals); + static void NormalEstimation(pcl::PointCloud::Ptr cloud, pcl::PointCloud::Ptr normals); + static void NormalEstimation(pcl::PointCloud::Ptr cloud, pcl::PointCloud::Ptr normals); // Jet 色带颜色映射函数 static Eigen::Vector3i jetColorMap(float value,float min_intensity,float max_intensity); + static int PointCloudCommon::mesh2vtk (const pcl::PolygonMesh& mesh,vtkPolyData* poly_data); - - + static vtkPolyData* meshSetToVtkDataset(MeshData::MeshSet* in_set); }; } // namespace PointCloudOperator diff --git a/src/WBCLFZSystemModule/CMakeLists.txt b/src/WBCLFZSystemModule/CMakeLists.txt deleted file mode 100644 index 620ea56..0000000 --- a/src/WBCLFZSystemModule/CMakeLists.txt +++ /dev/null @@ -1,157 +0,0 @@ -#----------------------------------------------------------------------------- -# 头文件搜索路径 -#----------------------------------------------------------------------------- -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/..) - -# boost -include_directories(D:/vcpkg/installed/x64-windows/include) - -# pcl -include_directories(C:/PCL/3rdParty/FLANN/include) -include_directories(C:/PCL/3rdParty/VTK/include/vtk-9.3) -include_directories(C:/PCL/include/pcl-1.14) - -# FindOpenCASCADE -include_directories(${OpenCASCADE_INCLUDE_DIRS}) - -# qt5 -include_directories(C:/Qt/5.15.2/msvc2019_64/include/QtQml) - -# json -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../json) - -# qscintilla2 -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../qscintilla2) -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../qscintilla2/lexers) -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../qscintilla2/include) -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../qscintilla2/lexlib) -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../qscintilla2/Qt4Qt5) -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../qscintilla2/src) - -# lamptool -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../LAMPTool) -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../LAMPTool/include) - -# qcustomplot -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../qcustomplot) - -# qhexedit -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../qhexedit) - - -# 内部结构 -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/SqliteDBProcess/src) -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/modelProcess) -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/EchoShowProcess) -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/OCCViewer) -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) - -#----------------------------------------------------------------------------- -# 链接库 -#----------------------------------------------------------------------------- - -# pcl -link_directories("C:/PCL/3rdParty/FLANN/lib") -link_directories("C:/VTK/lib") -link_directories("C:/PCL/lib") - -# - - -#----------------------------------------------------------------------------- -# 自动添加include目录 -#----------------------------------------------------------------------------- -set(CMAKE_INCLUDE_CURRENT_DIR ON) -set(CMAKE_AUTOUIC ON) -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) -find_package(PCL) -include_directories(${PCL_INCLUDE_DIRS}) -link_directories(${PCL_LIBRARY_DIRS}) -add_definitions(${PCL_DEFINITIONS}) -find_package(unofficial-sqlite3 CONFIG REQUIRED) - - -#----------------------------------------------------------------------------- -# 添加资源文件 -#----------------------------------------------------------------------------- -set(_qrc "${CMAKE_CURRENT_SOURCE_DIR}/../qrc/WBCLFZSystemModule.qrc") -#set(_qrc "${CMAKE_CURRENT_SOURCE_DIR}/../qrc/qianfan.qrc") -set(_lang "${CMAKE_CURRENT_SOURCE_DIR}/../qrc/translations.qrc") -qt5_add_resources(_resource ${_qrc} ${_lang}) - -message("qrc source path ${_qrc}") - -#----------------------------------------------------------------------------- -# 源码扫描 -#----------------------------------------------------------------------------- -file(GLOB_RECURSE _ui "*.ui" ) -file(GLOB_RECURSE _header "*.h" "*.hxx" ) -file(GLOB_RECURSE _source "*.cpp" ) - - -qt5_wrap_ui(_interface ${_ui}) - -#----------------------------------------------------------------------------- -# 添加动态库目标 -#----------------------------------------------------------------------------- -add_library(WBCLFZSystemModule - ${_resource} - ${_interface} - ${_header} - ${_source} -) - -#----------------------------------------------------------------------------- -# 添加接口声明宏 -#----------------------------------------------------------------------------- -target_compile_definitions(WBCLFZSystemModule PRIVATE WBCLFZSYSTEMMODULE_API) - - -#----------------------------------------------------------------------------- -# 安装Qt的依赖文件 -#----------------------------------------------------------------------------- -get_target_property(_qmake_executable Qt5::qmake IMPORTED_LOCATION) -get_filename_component(_qt_bin_dir "${_qmake_executable}" DIRECTORY) - -#----------------------------------------------------------------------------- -# 链接依赖库 -#----------------------------------------------------------------------------- -list(APPEND _depend_library qcustomplot LAMPTool qscintilla2 qhexedit) - - - -list(APPEND _runtimes_libraries - 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 -) - -list(APPEND _runtimes_libraries - OpenCASCADE::TKOffset OpenCASCADE::TKSTL OpenCASCADE::Freetype OpenCASCADE::TKBO OpenCASCADE::TKBRep OpenCASCADE::TKFillet OpenCASCADE::TKBool OpenCASCADE::TKCAF OpenCASCADE::TKCDF OpenCASCADE::TKG2d OpenCASCADE::TKG3d OpenCASCADE::TKGeomAlgo OpenCASCADE::TKGeomBase OpenCASCADE::TKHLR OpenCASCADE::TKIGES OpenCASCADE::TKLCAF OpenCASCADE::TKMath OpenCASCADE::TKMesh OpenCASCADE::TKPrim OpenCASCADE::TKSTEP OpenCASCADE::TKSTEP209 OpenCASCADE::TKSTEPAttr OpenCASCADE::TKSTEPBase OpenCASCADE::TKService OpenCASCADE::TKShHealing OpenCASCADE::TKTopAlgo OpenCASCADE::TKV3d OpenCASCADE::TKVCAF OpenCASCADE::TKXCAF OpenCASCADE::TKXDEIGES OpenCASCADE::TKXSBase OpenCASCADE::TKernel Qt5::Widgets Qt5::Xml VTK::CommonColor VTK::CommonComputationalGeometry VTK::CommonCore VTK::CommonDataModel VTK::CommonExecutionModel VTK::CommonMath VTK::CommonMisc VTK::CommonSystem VTK::CommonTransforms VTK::FiltersCore VTK::FiltersExtraction VTK::FiltersGeneral VTK::FiltersGeometry VTK::FiltersSources VTK::FiltersStatistics VTK::IOCore VTK::IOLegacy VTK::IOXML VTK::IOXMLParser VTK::ImagingCore VTK::ImagingFourier VTK::ImagingMath VTK::InteractionStyle VTK::ParallelCore VTK::ParallelDIY VTK::RenderingCore VTK::RenderingFreeType VTK::RenderingOpenGL2 VTK::RenderingUI VTK::RenderingVolume VTK::RenderingVolumeOpenGL2 VTK::doubleconversion VTK::expat VTK::freetype VTK::glew VTK::lz4 VTK::lzma VTK::sys VTK::zlib VTK::IOGeometry -) - - -target_include_directories(WBCLFZSystemModule PUBLIC ${Qwt_INCLUDE_DIRS}) - - -target_link_libraries(WBCLFZSystemModule PUBLIC - ${_runtimes_libraries} - ${_depend_library} - ${PCL_LIBRARIES} - unofficial::sqlite3::sqlite3 - GDAL::GDAL -) - -#----------------------------------------------------------------------------- -# 添加依赖关系 -#----------------------------------------------------------------------------- -add_dependencies(WBCLFZSystemModule ${_depend_library}) - -#----------------------------------------------------------------------------- -# 添加运行时依赖关系 -#----------------------------------------------------------------------------- -set(LAMPCAE_WBCLFZSystemModule_Runtimes_Libraries ${_runtimes_libraries} PARENT_SCOPE) - - - diff --git a/src/WBCLFZSystemModule/EchoShowProcess/CMDExcuteApp.cpp b/src/WBCLFZSystemModule/EchoShowProcess/CMDExcuteApp.cpp deleted file mode 100644 index 0c3ab3b..0000000 --- a/src/WBCLFZSystemModule/EchoShowProcess/CMDExcuteApp.cpp +++ /dev/null @@ -1,82 +0,0 @@ -#include "CMDExcuteApp.h" -#include -#include -#include -#include - -CMDExcuteApp::CMDExcuteApp(QWidget* parent) -{ - this->ui.setupUi(this); - this->cmd = new QProcess(); - connect(this->cmd, SIGNAL(readyReadStandardOutput()), this, SLOT(on_readoutput())); - connect(this->cmd, SIGNAL(readyReadStandardError()), this, SLOT(on_readerror())); - -} - -CMDExcuteApp::~CMDExcuteApp() -{ - if (nullptr != this->cmd) { - - delete this->cmd; - this->cmd = nullptr; - - } -} - -int CMDExcuteApp::excuteCmd(QString cmdText) -{ - qDebug() << u8"执行命令:" << cmdText ; - this->ui.textEdit->append("cmd.exe\n"); - this->cmd->start("cmd.exe"); - this->cmd->waitForStarted(); //等待程序启动 - this->ui.textEdit->append(QString::QString(cmdText)); - this->ui.textEdit->append("\n"); - this->cmd->write(cmdText.toUtf8().constData()); - - this->cmd->close(); - this->waitExcutedFinish(); - return 0; -} - -int CMDExcuteApp::excuteCmd(QString exePath, QString params) -{ - qDebug() << u8"执行命令:" << exePath<setWindowTitle(exePath); - QString program = QString::QString(exePath); - QStringList prams_txt; - prams_txt.append(QString::QString(params)); - this->cmd->start(program, prams_txt); - //this->cmd->waitForFinished(); - this->show(); - this->waitExcutedFinish(); - return 0; -} - -int CMDExcuteApp::waitExcutedFinish() -{ - while (!this->cmd->waitForFinished()) { - qDebug() << u8"运行状态:" << this->cmd->state(); - QCoreApplication::processEvents(); - } - qDebug() << u8"退出循环运行状态:" << this->cmd->state(); - qDebug() << u8"退出循环码:" << this->cmd->exitCode(); - this->on_readerror(); - this->on_readoutput(); - emit this->callbackExcuteResult(); - return 0; -} - -int CMDExcuteApp::on_readerror() -{ - QString out = this->cmd->readAllStandardError().data(); - qDebug()<ui.textEdit->append(out); - return 0; -} -int CMDExcuteApp::on_readoutput() -{ - QString out = this->cmd->readAllStandardOutput().data(); - qDebug() << u8"on_readoutput:\t" << out; - this->ui.textEdit->append(out); //将输出信息读取到编辑框 - return 0; -} \ No newline at end of file diff --git a/src/WBCLFZSystemModule/EchoShowProcess/CMDExcuteApp.h b/src/WBCLFZSystemModule/EchoShowProcess/CMDExcuteApp.h deleted file mode 100644 index ea1abdc..0000000 --- a/src/WBCLFZSystemModule/EchoShowProcess/CMDExcuteApp.h +++ /dev/null @@ -1,34 +0,0 @@ -#pragma once - -#ifndef CMDEXCUTEAPP_H -#define CMDEXCUTEAPP_H - -#include -#include -#include "ui_CMDExcuteApp.h" - - -class CMDExcuteApp : public QMainWindow -{ - Q_OBJECT - -public: - CMDExcuteApp(QWidget* parent = nullptr); - ~CMDExcuteApp(); - int excuteCmd(QString cmdText); - int excuteCmd(QString exePath,QString params); - int waitExcutedFinish(); -private: - Ui::cmdExcuteWindows ui; - QProcess* cmd; - -signals: - void callbackExcuteResult(); - -private slots: - int on_readoutput(); - int on_readerror(); -}; - - -#endif \ No newline at end of file diff --git a/src/WBCLFZSystemModule/EchoShowProcess/EchoTableEditWindow.cpp b/src/WBCLFZSystemModule/EchoShowProcess/EchoTableEditWindow.cpp deleted file mode 100644 index b9e9b2e..0000000 --- a/src/WBCLFZSystemModule/EchoShowProcess/EchoTableEditWindow.cpp +++ /dev/null @@ -1,394 +0,0 @@ -#include "EchoTableEditWindow.h" -#include "TableProcess/TableMainWindow.h" -#include "TableProcess/TableViewModel.h" -#include "SharedModuleLib/BaseUiTool.h" -#include "LAMPImageCreateClass.h" - -#include -#include -#include -#include -#include -#include -#include - - - -EchoTableEditWindow::EchoTableEditWindow(QWidget* parent) -{ - this->FILEOPENLOCK = false; - this->CheckFieldContextHasEmptyCeilLOCK = false; - this->ui.setupUi(this); - this->setWindowTitle(u8"FEKO回波数据解析与导出界面"); - this->initTableViewContextMenu(); - this->initTableViewStatusBarControl(); - - // 定标常数界面关闭 - this->ui.tab_calibration->setEnabled(false); - this->ui.tabWidget->removeTab(1);// 删除定标常数界面 - - -} - -EchoTableEditWindow::~EchoTableEditWindow() -{ - delete this->statusprogressBar; - delete this->tableViewContextMenu; - delete this->m_undoStack; - - - - -} - -int EchoTableEditWindow::initTableViewContextMenu() -{ - qDebug() << u8"正在初始化contextMenu"; - m_undoStack = new QUndoStack(this); //存放命令的栈 - - this->ui.tableView->setContextMenuPolicy(Qt::CustomContextMenu); - //this->ui.tableView->setFocusPolicy(Qt::NoFocus); // 允许快捷键 - this->tableViewContextMenu = new QMenu(this->ui.tableView); // 表格控件的右键菜单 - - QAction* m_undoAction = m_undoStack->createUndoAction(this, u8"撤销");//添加QAction,Ctrl-Z作为回撤的快捷键 - m_undoAction->setShortcut(QKeySequence(Qt::CTRL + Qt::Key_Z)); - QObject::connect(m_undoAction, SIGNAL(triggered()), this, SLOT(tableView_UndoAction())); - - QAction* m_redoAction = m_undoStack->createRedoAction(this, u8"重做");//添加QAction,Ctrl-Y左右前进的快捷键 - m_redoAction->setShortcut(QKeySequence(Qt::CTRL + Qt::Key_Y)); - QObject::connect(m_redoAction, SIGNAL(triggered()), this, SLOT(tableView_RedoAction())); - - this->tableViewContextMenu->addAction(m_undoAction); - this->tableViewContextMenu->addAction(m_redoAction); - - - QAction *copyAction= this->tableViewContextMenu->addAction(u8"复制"); // 复制 - copyAction->setShortcut(QKeySequence(Qt::CTRL + Qt::Key_C)); - QObject::connect(copyAction, SIGNAL(triggered()), this, SLOT(tableView_CopyAction())); - - QAction* PasteAction = this->tableViewContextMenu->addAction(u8"粘贴"); // 粘贴 - PasteAction->setShortcut(QKeySequence(Qt::CTRL + Qt::Key_V)); - QObject::connect(PasteAction, SIGNAL(triggered()), this, SLOT(tableView_PasteAction())); - - QAction* CheckFieldHasEmptyCeilAction = this->tableViewContextMenu->addAction(u8"检查单元格为空"); - QObject::connect(CheckFieldHasEmptyCeilAction, SIGNAL(triggered()), this, SLOT(tableView_CheckFieldHasEmptyCeilAction())); - qDebug() << u8"初始化contextMenu结束"; - return 0; -} - -void EchoTableEditWindow::ShowTableViewContextMenu(QPoint p) -{ - qDebug() << u8"正在展示tableview 右键菜单"; - //Q_UNUSED(pos); - this->tableViewContextMenu->exec(QCursor::pos()); -} - -void EchoTableEditWindow::tableView_CopyAction() -{ - qDebug() << u8"正在启动tableview 右键复制代码"; - QItemSelectionModel* selectionModel = this->ui.tableView->selectionModel(); - QModelIndexList selectedIndexes = selectionModel->selectedIndexes(); - if (selectedIndexes.count() == 0) { - return; - } - - QTableView* tableView = this->ui.tableView; // Your table view object - - /* - * a\tb\tc\n - * d\tf\te\n - **/ - int min_row, max_row, min_col, max_col; - min_row = selectedIndexes.at(0).row(); - max_row = selectedIndexes.at(0).row(); - min_col = selectedIndexes.at(0).column(); - max_col = selectedIndexes.at(0).column(); - for (int i = 0; i < selectedIndexes.count(); i++) { - min_row = min_row > selectedIndexes.at(i).row() ? selectedIndexes.at(i).row() : min_row; - max_row = max_row < selectedIndexes.at(i).row() ? selectedIndexes.at(i).row() : max_row; - min_col = min_col > selectedIndexes.at(i).column() ? selectedIndexes.at(i).column() : min_col; - max_col = max_col < selectedIndexes.at(i).column() ? selectedIndexes.at(i).column() : max_col; - } - std::vector> copylist(max_row-min_row+1); - for (int i = min_row; i <= max_row; i++) { - copylist[i - min_row] = std::vector(max_col - min_col + 1); - } - qDebug() << u8"minRow"<horizontalHeader(); - //for (int i = 0; i < header->count(); i++) { - // QVariant headerData = header->model()->headerData(i, Qt::Horizontal); - // clipboardData.insert(i, headerData.toString()); - //} - qDebug() << u8"============================"; - qDebug() << clipboardText; - qDebug() << u8"============================"; - - QApplication::clipboard()->setText(clipboardText); -} - -int EchoTableEditWindow::setDragDropOverwriteMode(bool flag) { - this->ui.tableView->setDragDropOverwriteMode(flag); - return 0; -} - -int EchoTableEditWindow::setTablCalibrationTab(bool flag) -{ - if (flag) { - this->ui.tab_calibration->setEnabled(true); - this->ui.tabWidget->insertTab(1, this->ui.tab_calibration, u8"定标常数"); - } - else { - this->ui.tab_calibration->setEnabled(false); - this->ui.tabWidget->removeTab(1);// 删除定标常数界面 - } - return 0; -} - -void EchoTableEditWindow::tableView_PasteAction() { - qDebug() << u8"正在启动tableview 右键粘贴代码"; - QTableView* tableview = this->ui.tableView; - QClipboard* clipboard = QApplication::clipboard(); - QString clipboardData = QApplication::clipboard()->text(); - QItemSelectionModel* selectionModel = this->ui.tableView->selectionModel(); - QModelIndexList selectedIndexes = selectionModel->selectedIndexes(); - this->m_undoStack->push(new PasteCommand(this->ui.tableView, selectedIndexes, clipboardData)); - tableview->show(); -} - -void EchoTableEditWindow::tableView_UndoAction() -{ - qDebug() << u8"正在撤销命令"; - int index = this->m_undoStack->index(); - this->m_undoStack->setIndex(index); -} - -void EchoTableEditWindow::tableView_RedoAction() -{ - qDebug() << u8"正在重做命令"; - int index = this->m_undoStack->index(); - this->m_undoStack->setIndex(index ); -} - - -// 检查存在空单元格的列,并修改展示 -void EchoTableEditWindow::tableView_CheckFieldHasEmptyCeilAction() -{ - this->ui.statusbar->showMessage(u8"正在检查存在空数据的单元列"); - size_t colcount = this->ui.tableView->model()->columnCount(); - size_t rowcount = this->ui.tableView->model()->rowCount(); - this->statusprogressBar->setRange(0, colcount - 1); - this->statusprogressBar->setValue(0); - QList cellIndexes; - for (int j = 0; j < colcount; j++) { - for (int i = 0; i < rowcount; i++) { - if (this->ui.tableView->model()->index(i, j).data().toString().count() < 1) { - cellIndexes.append(this->ui.tableView->model()->index(i, j)); - break; - } - } - this->statusprogressBar->setValue(j); - } - if (cellIndexes.count() == 0) { - return; - } - else {} - this->ui.statusbar->showMessage(u8"正在选择空格"); - this->statusprogressBar->setRange(0, cellIndexes.count()-1); - this->statusprogressBar->setValue(0); - QItemSelectionModel* selectionModel = this->ui.tableView->selectionModel(); - for (int i = 0; i < cellIndexes.count(); i++) { - selectionModel->select(cellIndexes[i], QItemSelectionModel::Select); - this->statusprogressBar->setValue(i); - } - this->ui.tableView->show(); - this->ui.tableView->scrollTo(cellIndexes[0], QAbstractItemView::EnsureVisible); - - -} - -void EchoTableEditWindow::on_actionOpen_triggered() -{ - this->OpenCSVDialog(); -} - -void EchoTableEditWindow::on_actionSave_triggered() -{ - this->SaveCSVDialog(); -} - -void EchoTableEditWindow::on_actionSaveAs_triggered() -{ - this->SaveAsDialog(); -} - -void EchoTableEditWindow::on_actionEchoSplitExport_triggered() -{ - // 在窗口关闭事件中询问用户是否关闭 - QMessageBox::StandardButton reply; - qDebug() << u8"检查乱码文件所在位置"; - reply = QMessageBox::question(this, u8"询问", u8"导出回波文件前,请保存文件", QMessageBox::Yes | QMessageBox::No); - if (reply == QMessageBox::Yes) { - // 用户点击了"Yes"按钮,关闭窗口 - this->SaveCSVDialog(); - } - else { - // 用户点击了"No"按钮,取消关闭操作 - return; - } - // 保存并导出回波文件 - - this->ui.statusbar->showMessage(u8"正在分析回波文件"); - this->statusprogressBar->setRange(0,100); - this->statusprogressBar->setValue(10); - FEKOBase::NearFieldEchoCSVParser nearfilePraseclass; - QString echocsvfilepath = this->model->getCSVPath(); - if (!nearfilePraseclass.parseCSV(echocsvfilepath)) { - QMessageBox::warning(this, u8"警告", u8"回波文件结构解析错误,请检查文件"); - return; - } - this->statusprogressBar->setValue(25); - QMessageBox::information(this, u8"信息", u8"请分别为theta极化、phi极化、R极化分量回波指定保存路径"); - - QString thetafilepath = getSaveFilePath( - this, - QString::fromUtf8(u8"另存为"), - QString::fromUtf8(u8"theta文件 (*.theta)"));//多组扩展名用双分号";;"隔开 - - QString phifilepath = getSaveFilePath( - this, - QString::fromUtf8(u8"另存为"), - QString::fromUtf8(u8"phi文件 (*.phi)"));//多组扩展名用双分号";;"隔开 - - QString Rfilepath = getSaveFilePath( - this, - QString::fromUtf8(u8"另存为"), - QString::fromUtf8(u8"R文件 (*.R)"));//多组扩展名用双分号";;"隔开 - - - this->ui.statusbar->showMessage(u8"正在导出theta极化"); - nearfilePraseclass.toThetapolar(thetafilepath); - this->statusprogressBar->setValue(50); - this->ui.statusbar->showMessage(u8"正在导出phi极化"); - nearfilePraseclass.toPhiPolar(phifilepath); - this->statusprogressBar->setValue(75); - - this->ui.statusbar->showMessage(u8"正在导出R极化"); - nearfilePraseclass.toRPolar(Rfilepath); - this->statusprogressBar->setValue(99); - QMessageBox::information(this, u8"信息", u8"极化回波已经保存完毕"); - - // 询问用户是否关闭窗口 - - reply = QMessageBox::question(this, u8"提示", u8"是否直接进行成像?",QMessageBox::Yes | QMessageBox::No); - if (reply == QMessageBox::Yes) { - LAMPImageCreateClass* imagewindows = new LAMPImageCreateClass; - imagewindows->show(); - } - else { - return; - } -} - -void EchoTableEditWindow::on_actionCalibrationConst_triggered() -{ - -} - - - - -int EchoTableEditWindow::LockFileOpen(bool flag) -{ - this->FILEOPENLOCK = flag; - return 0; -} - -int EchoTableEditWindow::setCheckFieldContextHasEmptyCeilLOCK(bool flag) -{ - this->CheckFieldContextHasEmptyCeilLOCK = flag; - return 0; -} - -int EchoTableEditWindow::loadTablemode(std::shared_ptr mode) -{ - this->model = mode; - this->ui.tableView->setModel(this->model.get()); - if (this->model->rowCount() > 1e4) { - this->ui.tableView->horizontalHeader()->setSectionResizeMode(QHeaderView::Interactive); - } - return 0; -} - -int EchoTableEditWindow::setTableViewAutoSort(bool flag) -{ - this->ui.tableView->setSortingEnabled(flag); - return flag; -} - -int EchoTableEditWindow::initTableViewStatusBarControl() -{ - this->statusprogressBar = new QProgressBar(); - this->statusprogressBar->setRange(0, 100); // 设置进度条范围 - this->statusprogressBar->setValue(0); // 设置当前进度 - this->ui.statusbar->addPermanentWidget(this->statusprogressBar); // 在状态栏中添加进度条 - - return 0; -} - - - -int EchoTableEditWindow::OpenCSVDialog() -{ - if (this->FILEOPENLOCK) { - return 0; - } - else {} - QString tableFilepath = getOpenFilePath( - this, - QString::fromUtf8(u8"打开表格文件"), - QString::fromUtf8(u8"csv文件 (*.csv);;xls文件(*.xls)")); - - - this->ui.statusbar->showMessage(u8"正在打开文件...."); - std::shared_ptr< FEKOResultCsvTableModel> tablemode = std::make_shared< FEKOResultCsvTableModel>(); - tablemode->loadCSVFilePath(tableFilepath); - this->loadTablemode(tablemode); - this->setTableViewAutoSort(true); - this->LockFileOpen(); - this->ui.statusbar->showMessage(u8"文件打开结束"); - return -1; -} - - -int EchoTableEditWindow::SaveCSVDialog() -{ - this->model->saveFilePath(); - return 0; -} - -int EchoTableEditWindow::SaveAsDialog() -{ - QString filepath = getSaveFilePath( - this, - QString::fromUtf8(u8"另存为"), - QString::fromUtf8(u8"csv文件 (*.csv)"));//多组扩展名用双分号";;"隔开 - this->model->saveAsFilePath(filepath); - return 0; -} diff --git a/src/WBCLFZSystemModule/EchoShowProcess/EchoTableEditWindow.h b/src/WBCLFZSystemModule/EchoShowProcess/EchoTableEditWindow.h deleted file mode 100644 index 9e1d3b1..0000000 --- a/src/WBCLFZSystemModule/EchoShowProcess/EchoTableEditWindow.h +++ /dev/null @@ -1,96 +0,0 @@ -#pragma once -#ifndef ECHOTABLEEDITWINDOW_H -#define ECHOTABLEEDITWINDOW_H -#include "AllHead.h" -#include -#include "ui_EchoTableEditWindow.h" -#include "TableProcess/TableViewModel.h" -#include -#include -#include -#include - - -/* -* 命令 -***/ - - -/* -* 表格编辑窗体情况分析 -****/ -class EchoTableEditWindow : public QMainWindow -{ - Q_OBJECT -public: - bool FILEOPENLOCK; - bool CheckFieldContextHasEmptyCeilLOCK; -private: - std::shared_ptr model; - QMenu* tableViewContextMenu; - QUndoStack* m_undoStack; - - /*菜单*/ - QProgressBar* statusprogressBar; - - -public: - EchoTableEditWindow(QWidget* parent = nullptr); - ~EchoTableEditWindow(); - - int initTableViewStatusBarControl(); - int initTableViewContextMenu(); // 初始化上下文菜单 - int LockFileOpen(bool flag=true); // 锁定文件,不允许进行重新打开文件 - int setCheckFieldContextHasEmptyCeilLOCK(bool flag=true);// 允许启动当前字段中存在空格检查,-- 提供给FEKOResult分析使用 - int loadTablemode(std::shared_ptr mode); // 加载tableview 使用的model - int setTableViewAutoSort(bool flag); - int setDragDropOverwriteMode(bool flag); // 是否禁用列调换 - - int setTablCalibrationTab(bool flag); - -private: - Ui::EchoTableEditWindow ui; - int OpenCSVDialog(); - int SaveCSVDialog(); - int SaveAsDialog(); - - -public slots: - - - // tableview 右键菜单 - void ShowTableViewContextMenu(QPoint p); - void tableView_CopyAction(); - void tableView_PasteAction(); - void tableView_UndoAction(); - void tableView_RedoAction(); - void tableView_CheckFieldHasEmptyCeilAction(); - - void on_actionOpen_triggered(); - void on_actionSave_triggered(); - void on_actionSaveAs_triggered(); - - void on_actionEchoSplitExport_triggered(); // 回波数据导出 - void on_actionCalibrationConst_triggered(); // 计算定标常数 - - - - -protected: // 重写函数 - void closeEvent(QCloseEvent* event) override { - // 在窗口关闭事件中询问用户是否关闭 - QMessageBox::StandardButton reply; - reply = QMessageBox::question(this, u8"Close", u8"您回波数据导出了吗?", QMessageBox::Yes | QMessageBox::No); - - if (reply == QMessageBox::Yes) { - // 用户点击了"Yes"按钮,关闭窗口 - event->accept(); - } - else { - // 用户点击了"No"按钮,取消关闭操作 - event->ignore(); - } - }; -}; - -#endif // !ECHOTABLEEDITWINDOW_H \ No newline at end of file diff --git a/src/WBCLFZSystemModule/EchoShowProcess/EchoTableEditWindow.ui b/src/WBCLFZSystemModule/EchoShowProcess/EchoTableEditWindow.ui deleted file mode 100644 index 04f9a5a..0000000 --- a/src/WBCLFZSystemModule/EchoShowProcess/EchoTableEditWindow.ui +++ /dev/null @@ -1,285 +0,0 @@ - - - EchoTableEditWindow - - - - 0 - 0 - 752 - 520 - - - - 回波表格处理 - - - - - - - true - - - 0 - - - - 回波文件 - - - - - - - - - - 定标常数 - - - - - - - 0 - 25 - - - - - 16777215 - 25 - - - - 定标球大小 - - - - - - - - 0 - 25 - - - - - 16777215 - 25 - - - - 0.001 - - - - - - - - - - - - - - - - toolBar - - - TopToolBarArea - - - false - - - - - - 0 - 0 - 752 - 26 - - - - - 文件 - - - - - - - - 回波工具 - - - - - - - - 定标工具 - - - - - - - - - - - 打开文件 - - - - - 保存文件 - - - - - 另存为 - - - - - 展示所有字段 - - - - - 添加字段 - - - - - 移除字段 - - - - - 编辑字段 - - - - - 创建新文件 - - - - - FEKO检查 - - - - - 森林目标属性表检查 - - - - - 农作物目标属性表检查 - - - - - 草地目标属性表检查 - - - - - 水体目标属性表检查 - - - - - 土壤目标属性表检查 - - - - - 动态水体目标属性表检查 - - - - - 道路目标属性表检查 - - - - - 人工目标属性表检查 - - - - - 几何校正场景属性表检查 - - - - - 辐射校正场景属性表检查 - - - - - 陆表场景属性表检查 - - - - - 水体场景属性表检查 - - - - - 植被场景属性表检查 - - - - - ExportThetaData - - - - - exportData - - - - - 回波切分导出 - - - - - 回波定位 - - - - - 计算定标常数 - - - - - 导入定标常数表 - - - - - - - OpenCSVDialog() - SaveCSVDialog() - SaveAsDialog() - ShowTableViewContextMenu(QPoint) - - diff --git a/src/WBCLFZSystemModule/EchoShowProcess/FEKOResultImport.cpp b/src/WBCLFZSystemModule/EchoShowProcess/FEKOResultImport.cpp deleted file mode 100644 index 3d48159..0000000 --- a/src/WBCLFZSystemModule/EchoShowProcess/FEKOResultImport.cpp +++ /dev/null @@ -1,427 +0,0 @@ -#include "FEKOResultImport.h" -#include "FileOperator.h" -#include "SharedModuleLib/BaseUiTool.h" -#include "TaskXml/TaskTreeClass.h" -#include "EchoTableEditWindow.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include "CMDExcuteApp.h" -#include -#include -#include - -FEKOResultImport::FEKOResultImport(QWidget* parent) -{ - //this->setAttribute(Qt::WidgetAttribute::WA_DeleteOnClose); - //this->setWindowModality(Qt::WindowModality::WindowModal); - this->ui.setupUi(this); - this->ListViewmodel = new QStandardItemModel(this); - this->ui.listView->setModel(this->ListViewmodel); - this->selectListViewmodel = new QStandardItemModel(this); - this->selectListViewmodel->clear(); - this->ListViewmodel->clear(); - this->p = nullptr; -} - -FEKOResultImport::~FEKOResultImport() -{ - if (nullptr == this->ListViewmodel || NULL == this->ListViewmodel) {} - else { - this->ListViewmodel->clear(); - delete this->ListViewmodel; - this->ListViewmodel = nullptr; - } - if (nullptr == this->selectListViewmodel || NULL == this->selectListViewmodel) {} - else { - this->selectListViewmodel->clear(); // 释放所有对象的内存 - delete this->selectListViewmodel; - this->selectListViewmodel = nullptr; - } - if (nullptr == this->p) {} - else { - this->p->close(); - //delete this->p; - this->p = nullptr; - } -} - -QString FEKOResultImport::getFEKOPreFileName() -{ - return this->FEKOPreFileName; - return QString(); -} - -int FEKOResultImport::setFEKOPreFileName(QString preFileName) -{ - this->FEKOPreFileName = preFileName; - return 0; -} - -int FEKOResultImport::setNearFieldNames(std::vector nearFieldNames) -{ - this->nearFieldNames.clear(); - this->nearFieldNames.shrink_to_fit(); - this->nearFieldNames = nearFieldNames; - return 0; -} - -std::vector FEKOResultImport::getNearFieldNames() -{ - return this->nearFieldNames; -} - -int FEKOResultImport::setFarFieldNames(std::vector farFieldNames) -{ - this->farFieldNames.clear(); - this->farFieldNames.shrink_to_fit(); - this->farFieldNames = farFieldNames; - return 0; -} - -std::vector FEKOResultImport::getFarFieldNames() -{ - return this->farFieldNames; -} - -int FEKOResultImport::setSelectFieldNames(std::vector SelectFieldNames, bool nearOrfar) -{ - if (nearOrfar) { - this->ui.NearradioButton->setChecked(1); - this->ui.FarradioButton->setChecked(0); - } - else { - this->ui.NearradioButton->setChecked(0); - this->ui.FarradioButton->setChecked(1); - } - // 剔除数据 - this->ListViewmodel->clear(); - this->selectListViewmodel->clear(); - // 重新分配数据 - for (int i = 0; i < SelectFieldNames.size(); i++) { - QStandardItem* item = new QStandardItem(QString::QString(SelectFieldNames[i])); - this->selectListViewmodel->appendRow(item); - } - std::unordered_set selectSET; - for (int i = 0; i < SelectFieldNames.size(); i++) { - selectSET.insert(SelectFieldNames[i]);// 插入 - } - if (nearOrfar) { - - for (int i = 0; i < this->nearFieldNames.size(); i++) - { - if (selectSET.insert(this->nearFieldNames[i]).second)//判断是否能插入成功 - { - QStandardItem* item = new QStandardItem(QString::QString(this->nearFieldNames[i])); - this->ListViewmodel->appendRow(item); - } - else { - - } - } - - } - else { - - for (int i = 0; i < this->farFieldNames.size(); i++) - { - if (selectSET.insert(this->farFieldNames[i]).second)//判断是否能插入成功 - { - QStandardItem* item = new QStandardItem(QString::QString(this->farFieldNames[i])); - this->ListViewmodel->appendRow(item); - } - else { - - } - } - } - this->ui.listView->setModel(this->ListViewmodel); - this->ui.SelectlistView->setModel(this->selectListViewmodel); - return 0; -} - -std::vector FEKOResultImport::getSelectFieldNames() -{ - std::vector result(0); - this->selectListViewmodel = (QStandardItemModel*)(this->ui.SelectlistView->model()); - int selectCount = this->ui.SelectlistView->model()->rowCount(); - for (int i = 0; i < selectCount; i++) { - QStandardItem* listItem = this->selectListViewmodel->item(i); - result.push_back(listItem->text()); - } - return result; -} - -int FEKOResultImport::setFEKOResultCSVPath(QString csvPath) -{ - this->FEKOResultCSVPath = csvPath; - return 0; -} - -QString FEKOResultImport::getFEKOResultCSVPath() -{ - return this->FEKOResultCSVPath; -} - -int FEKOResultImport::setFEKOPreProjectFolderPath(QString FolderPath) -{ - this->FEKOProjectFolderPath = FolderPath; - return 0; -} - -QString FEKOResultImport::getFEKOPreProjectFolderPath() -{ - return this->FEKOProjectFolderPath; -} - -int FEKOResultImport::initView() -{ - this->ui.FolderPathtextEdit->setText(this->FEKOProjectFolderPath); - this->ui.PreFileNametextEdit->setText(this->FEKOPreFileName); - this->ui.csvPathText->setText(this->FEKOResultCSVPath); - this->ui.NearradioButton->setChecked(this->getNearChecked()); - this->ui.FarradioButton->setChecked(this->getFarChecked()); - this->InitListView(); - return 0; -} - -int FEKOResultImport::InitListView() -{ - this->ListViewmodel->clear(); - this->selectListViewmodel->clear(); - if (this->ui.FarradioButton->isChecked()) { - for (int i = 0; i < this->farFieldNames.size(); i++) { - QStandardItem* item = new QStandardItem(QString::QString(this->farFieldNames[i])); - this->ListViewmodel->appendRow(item); - } - } - else { - this->ui.NearradioButton->setChecked(true); - for (int i = 0; i < this->nearFieldNames.size(); i++) { - QStandardItem* item = new QStandardItem(QString::QString(this->nearFieldNames[i])); - this->ListViewmodel->appendRow(item); - } - } - this->ui.listView->setModel(this->ListViewmodel); - this->ui.SelectlistView->setModel(this->selectListViewmodel); - - return 0; -} - -bool FEKOResultImport::getNearChecked() -{ - return this->ui.NearradioButton->isChecked(); - -} - -bool FEKOResultImport::getFarChecked() -{ - return this->ui.FarradioButton->isChecked(); - -} - -bool FEKOResultImport::getSaveSucessfully() -{ - return this->saveSucessfully; -} - -QString FEKOResultImport::getSaveCsvFilePath() -{ - return this->FEKOResultCSVPath; - -} - -// 打开文件,并寻找pre文件 -int FEKOResultImport::OpenPrejectFolderPath() { - //打开单个文件 - QString prefileNamePath = getOpenFilePath( - this, - QString::fromUtf8(u8"选择.pre 文件"), - QString::fromUtf8(u8"pre文件 (*.pre)"));//多组扩展名用双分号";;"隔开 - this->FEKOProjectFolderPath = getParantFromPath(prefileNamePath); - this->FEKOPreFileName = getFileNameFromPath(prefileNamePath); - this->farFieldNames = getFilelist(this->FEKOProjectFolderPath, ".ffe"); - this->nearFieldNames = getFilelist(this->FEKOProjectFolderPath, ".efe"); - // 修改显示 - this->ListViewmodel->clear(); - this->ui.FolderPathtextEdit->setText(this->FEKOProjectFolderPath); - this->ui.PreFileNametextEdit->setText(this->FEKOPreFileName); - if (this->ui.FarradioButton->isChecked()) { - for (int i = 0; i < this->farFieldNames.size(); i++) { - QStandardItem* item = new QStandardItem(QString::QString(this->farFieldNames[i])); - this->ListViewmodel->appendRow(item); - } - } - else { - this->ui.NearradioButton->setChecked(true); - for (int i = 0; i < this->nearFieldNames.size(); i++) { - QStandardItem* item = new QStandardItem(QString::QString(this->nearFieldNames[i])); - this->ListViewmodel->appendRow(item); - } - } - - this->ui.listView->setModel(this->ListViewmodel); - qDebug()<<(u8"farField Number:"+QString::number(this->farFieldNames.size()) + "\n" + u8"NearField Number:" + QString::number(this->nearFieldNames.size()) + "\n"); - return -1; -} - - - -void FEKOResultImport::waitCMDExcute() -{ - qDebug() << u8"转换程序执行结束"; - if (isExists(this->FEKOResultCSVPath)) { - messageLog(u8"FEKOResult 保存成功\n路径:\t" + this->FEKOResultCSVPath, 1); - this->saveSucessfully = true; - this->p->close(); - delete p; - this->p = nullptr; - } - else { - messageLog(u8"FEKOResult 保存失败\n路径:\t" + this->FEKOResultCSVPath, 1); - this->saveSucessfully = false; - } - - // 触发结果时间 - qDebug() << u8"准备执行转换结果编辑功能"; - emit this->callbackFekoResultImport(this); - -} - -int FEKOResultImport::closeWindows() -{ - this->close(); - return 0; -} - -int FEKOResultImport::NearRadioButtonSelect(bool selectTrue) -{ - this->ui.NearradioButton->setChecked(selectTrue); - this->ui.FarradioButton->setChecked(!selectTrue); - this->InitListView(); - return 0; -} - -int FEKOResultImport::FarRadioButtonSelect(bool selectsign) -{ - this->ui.NearradioButton->setChecked(!selectsign); - this->ui.FarradioButton->setChecked(selectsign); - this->InitListView(); - return 0; -} - -int FEKOResultImport::FEKOResultImportButtonClick() -{ - if (isExists(this->FEKOResultCSVPath)) { - QFile file(this->FEKOResultCSVPath); - if (!file.open(QIODevice::ReadWrite)) { - QMessageBox::information(nullptr, u8"文件被占用", this->FEKOResultCSVPath); - return 2; - } - else { - file.close(); - removeFile(this->FEKOResultCSVPath); - } - - } - - QString csvpramarPath = this->FEKOResultCSVPath; - csvpramarPath= csvpramarPath.replace(this->FEKOResultCSVPath.size() - 4, 4, ".params"); - // 获取选择文件 - std::vector selectfiles = this->getSelectFieldNames(); - QString parmas_text = this->FEKOResultCSVPath +"\n";// 输出路径 - for (int i = 0; i < selectfiles.size(); i++) { - parmas_text = parmas_text + selectfiles[i] + "\n"; - } - if (isExists(csvpramarPath)) { - removeFile(csvpramarPath); - } - - - writeUTF8StringFile(csvpramarPath, (parmas_text)); - // 拼接命令行 - QString cmdtext = u8""; - if (this->ui.NearradioButton->isChecked()) { - cmdtext = cmdtext + u8"NearField2csvTool.exe"; - } - else { - cmdtext = cmdtext + u8"FarField2csvTool.exe"; - } - if (nullptr != this->p) { - this->p->close(); - delete this->p; - this->p = nullptr; - } - this->p = new CMDExcuteApp(); - QObject::connect(this->p, SIGNAL(callbackExcuteResult()), this, SLOT(waitCMDExcute())); - this->p->setAttribute(Qt::WA_DeleteOnClose);; - this->p->show(); - this->p->excuteCmd(cmdtext, csvpramarPath); - - return 0; -} - -int FEKOResultImport::AddFekoResultClick() -{ - QModelIndexList sourcelist=this->ui.listView->selectionModel()->selectedIndexes(); - std::vector deleteRowids(0); - for (int i = 0; i < sourcelist.count(); i++) { - deleteRowids.push_back(sourcelist[i].row()); - qDebug() << ("deletaRowids add :"+QString::number(sourcelist[i].row())+"\n"); - } - std::sort(deleteRowids.begin(), deleteRowids.end()); - for (int i = deleteRowids.size() - 1; i >= 0; i--) { - int select_Idx = deleteRowids[i]; - QList listItem = this->ListViewmodel->takeRow(select_Idx); - int nRightCount = this->selectListViewmodel->rowCount(); - this->selectListViewmodel->insertRow(nRightCount, listItem); - qDebug() << ("selectListViewmodel insertRow : "+ QString::number(select_Idx) +"-->" + QString::number(nRightCount) + "\n"); - } - - this->ui.listView->setModel(this->ListViewmodel); - this->ui.SelectlistView->setModel(this->selectListViewmodel); - return 0; -} - -int FEKOResultImport::DeleteFekoResultClick() -{ - - QModelIndexList sourcelist = this->ui.SelectlistView->selectionModel()->selectedIndexes(); - std::vector deleteRowids(0); - for (int i = 0; i < sourcelist.count(); i++) { - deleteRowids.push_back(sourcelist[i].row()); - } - std::sort(deleteRowids.begin(), deleteRowids.end()); - for (int i = deleteRowids.size() - 1; i >= 0; i--) { - int select_Idx = deleteRowids[i]; - QList listItem = this->selectListViewmodel->takeRow(select_Idx); - int nRightCount = this->ListViewmodel->rowCount(); - this->ListViewmodel->insertRow(nRightCount, listItem); - qDebug() << ("ListViewmodel insertRow : " + QString::number(select_Idx) + "-->" + QString::number(nRightCount) + "\n"); - } - this->ui.listView->setModel(this->ListViewmodel); - this->ui.SelectlistView->setModel(this->selectListViewmodel); - - return 0; -} - -int FEKOResultImport::SaveCsvFilePath() -{ - //打开单个文件 - QString csvfileNamePath = getSaveFilePath( - this, - QString::fromUtf8(u8"保存FEKO解析结果 csv "), - QString::fromUtf8(u8"csv文件 (*.csv)"));//多组扩展名用双分号";;"隔开 - this->FEKOResultCSVPath = csvfileNamePath; - this->ui.csvPathText->setPlainText(csvfileNamePath); - return 0; -} diff --git a/src/WBCLFZSystemModule/EchoShowProcess/FEKOResultImport.h b/src/WBCLFZSystemModule/EchoShowProcess/FEKOResultImport.h deleted file mode 100644 index baf415f..0000000 --- a/src/WBCLFZSystemModule/EchoShowProcess/FEKOResultImport.h +++ /dev/null @@ -1,83 +0,0 @@ -#pragma once - -#ifndef FEKORESULTIMPORT_H -#define FEKORESULTIMPORT_H -#include -#include -#include "ui_FEKOResultImport.h" -#include "TaskXml/TaskTreeClass.h" -#include "CMDExcuteApp.h" -#include -#include -#include -#include -#include -#include - - -class FEKOResultImport : public QMainWindow -{ - Q_OBJECT - - -public: - QString FEKOProjectFolderPath; - QString FEKOPreFileName; - std::vector nearFieldNames; - std::vector farFieldNames; - QString FEKOResultCSVPath; -private : - QStandardItemModel* ListViewmodel; - QStandardItemModel* selectListViewmodel; - bool saveSucessfully; - CMDExcuteApp* p; - -public: - FEKOResultImport(QWidget* parent = nullptr); - ~FEKOResultImport(); - - QString getFEKOPreFileName(); - int setFEKOPreFileName(QString preFileName); - - int setNearFieldNames(std::vector nearFieldNames); - std::vector getNearFieldNames(); - - int setFarFieldNames(std::vector farFieldNames); - std::vector getFarFieldNames(); - - int setSelectFieldNames(std::vector SelectFieldNames,bool nearOrfar); - std::vector getSelectFieldNames(); - - int setFEKOResultCSVPath(QString csvPath); - QString getFEKOResultCSVPath(); - - int setFEKOPreProjectFolderPath(QString FolderPath); - QString getFEKOPreProjectFolderPath(); - - int initView(); - int InitListView(); - bool getNearChecked(); - bool getFarChecked(); - bool getSaveSucessfully(); - QString getSaveCsvFilePath(); - -private: - Ui::FEKOResultImportWindow ui; - -signals: - void callbackFekoResultImport(FEKOResultImport* obj); - -public slots: // 信号(或者事件) - int OpenPrejectFolderPath(); - int closeWindows(); - int NearRadioButtonSelect(bool); - int FarRadioButtonSelect(bool); - int FEKOResultImportButtonClick(); // 执行导入 - int AddFekoResultClick(); - int DeleteFekoResultClick(); - int SaveCsvFilePath(); - void waitCMDExcute(); // 导入完成 -}; - - -#endif diff --git a/src/WBCLFZSystemModule/EchoShowProcess/FEKOResultImport.ui b/src/WBCLFZSystemModule/EchoShowProcess/FEKOResultImport.ui deleted file mode 100644 index 7e67281..0000000 --- a/src/WBCLFZSystemModule/EchoShowProcess/FEKOResultImport.ui +++ /dev/null @@ -1,425 +0,0 @@ - - - FEKOResultImportWindow - - - - 0 - 0 - 621 - 458 - - - - - 621 - 331 - - - - FEKO近场文件导入 - - - - - - - QLayout::SetDefaultConstraint - - - - - - 16777215 - 30 - - - - pre工程路径: - - - - - - - false - - - - 16777215 - 30 - - - - - - - - - 16777215 - 30 - - - - 打开 - - - - - - - - - - - - 16777215 - 30 - - - - FEKO结果输出地址 - - - - - - - false - - - - 16777215 - 30 - - - - - - - - - 16777215 - 30 - - - - 选择保存文件 - - - - - - - - - - - - 16777215 - 30 - - - - .pre文件名 - - - - - - - false - - - - 16777215 - 30 - - - - - - - - NearField - - - - - - - FarField - - - - - - - - - - - - 0 - 200 - - - - QAbstractItemView::MultiSelection - - - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - >> - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - << - - - - - - - Qt::Vertical - - - - 20 - 40 - - - - - - - - - - - 0 - 200 - - - - QAbstractItemView::MultiSelection - - - - - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - 导入FEKO结果 - - - - - - - - 16777215 - 30 - - - - 取消 - - - - - - - - - - - - OKpushButton - clicked() - FEKOResultImportWindow - OpenPrejectFolderPath() - - - 802 - 52 - - - 519 - 99 - - - - - NearradioButton - clicked(bool) - FEKOResultImportWindow - NearRadioButtonSelect(bool) - - - 728 - 175 - - - 471 - 112 - - - - - FarradioButton - clicked(bool) - FEKOResultImportWindow - FarRadioButtonSelect(bool) - - - 802 - 175 - - - 504 - 86 - - - - - ImportpushButton - clicked() - FEKOResultImportWindow - FEKOResultImportButtonClick() - - - 721 - 435 - - - 514 - 158 - - - - - deletepushButton - clicked() - FEKOResultImportWindow - DeleteFekoResultClick() - - - 443 - 354 - - - 507 - 274 - - - - - AddpushButton - clicked() - FEKOResultImportWindow - AddFekoResultClick() - - - 443 - 277 - - - 542 - 212 - - - - - CancelpushButton - clicked() - FEKOResultImportWindow - closeWindows() - - - 802 - 435 - - - 547 - 48 - - - - - pushButton - clicked() - FEKOResultImportWindow - SaveCsvFilePath() - - - 757 - 106 - - - 767 - 136 - - - - - - OpenPrejectFolderPath() - closeWindows() - NearRadioButtonSelect(bool) - FarRadioButtonSelect(bool) - FEKOResultImportButtonClick() - AddFekoResultClick() - DeleteFekoResultClick() - SaveCsvFilePath() - - diff --git a/src/WBCLFZSystemModule/LAMPImageCreateClass.cpp b/src/WBCLFZSystemModule/LAMPImageCreateClass.cpp deleted file mode 100644 index 428e469..0000000 --- a/src/WBCLFZSystemModule/LAMPImageCreateClass.cpp +++ /dev/null @@ -1,196 +0,0 @@ -#include "LAMPImageCreateClass.h" - -LAMPImageCreateClass::LAMPImageCreateClass(QWidget *parent) - : QDialog(parent) -{ - ui.setupUi(this); - this->simulationparams = std::make_shared(); - - this->ui.comboBox_ImageMode->addItem(FEKOBase::FEKOImageModeenumToString(FEKOBase::FEKOImageMode::Strip)); - this->ui.comboBox_ImageMode->addItem(FEKOBase::FEKOImageModeenumToString(FEKOBase::FEKOImageMode::Scane)); - this->ui.comboBox_ImageMode->addItem(FEKOBase::FEKOImageModeenumToString(FEKOBase::FEKOImageMode::ISAR)); - this->ui.comboBox_ImageMode->addItem(FEKOBase::FEKOImageModeenumToString(FEKOBase::FEKOImageMode::CircleSAR)); - - - - // 限制lineedit输入为数值 - QDoubleValidator* doubleValidator = new QDoubleValidator(); - this->ui.lineEdit_minX->setValidator(doubleValidator); - this->ui.lineEdit__maxX->setValidator(doubleValidator); - this->ui.lineEdit__minY->setValidator(doubleValidator); - this->ui.lineEdit__maxY->setValidator(doubleValidator); - this->ui.lineEdit_planeZ->setValidator(doubleValidator); - QIntValidator* intValidator = new QIntValidator(1,100000000000000); - this->ui.lineEdit_height->setValidator(intValidator); - this->ui.lineEdit_width->setValidator(intValidator); - - - this->ui.lineEdit_minX->setText("-1.0"); - this->ui.lineEdit__maxX->setText("1.0"); - this->ui.lineEdit__minY->setText("-1.0"); - this->ui.lineEdit__maxY->setText("1.0"); - this->ui.lineEdit_planeZ->setText("0"); - this->ui.lineEdit_height->setText("101"); - this->ui.lineEdit_width->setText("101"); - this->ui.checkBoxTheta->setChecked(true); - this->ui.checkBox_phi->setChecked(true); -} - -LAMPImageCreateClass::~LAMPImageCreateClass() -{} - -Q_INVOKABLE FEKOBase::FEKOImageSettingParams LAMPImageCreateClass::getFEKOImageSettingParams() -{ - - FEKOBase::FEKOImageSettingParams result; - result.min_x = this->ui.lineEdit_minX->text().toDouble(); - result.max_x = this->ui.lineEdit__maxX->text().toDouble(); - result.min_y = this->ui.lineEdit__minY->text().toDouble(); - result.max_y = this->ui.lineEdit__maxY->text().toDouble(); - result.plane_z = this->ui.lineEdit_planeZ->text().toDouble(); - result.ImageHeight = this->ui.lineEdit_height->text().toDouble(); - result.ImageWidth = this->ui.lineEdit_width->text().toDouble(); - - return Q_INVOKABLE result; -} - -void LAMPImageCreateClass::on_pushButton_theta_clicked() -{ - QString thetaechopath = getOpenFilePath(this, u8"打开theta回波文件", u8"theta Files (*.theta)"); - this->ui.lineEdit_thetaechopath->setText(thetaechopath); -} - -void LAMPImageCreateClass::on_pushButton_phi_clicked() -{ - QString phiechopath = getOpenFilePath(this, u8"打开phi回波文件", u8"theta Files (*.phi)"); - this->ui.lineEdit_phiechopath->setText(phiechopath); -} - -void LAMPImageCreateClass::on_pushButton_thetaimage_clicked() -{ - QString thetaimagePath = getSaveFilePath(this, u8"保存theta极化回波成像结果", u8"ENVI (*.dat)"); - this->ui.lineEdit_thetaimagepath->setText(thetaimagePath); -} - -void LAMPImageCreateClass::on_pushButton_phiImage_clicked() -{ - QString phiimagePath = getSaveFilePath(this, u8"保存theta极化回波成像结果", u8"ENVI (*.dat)"); - this->ui.lineEdit_phiimagepath->setText(phiimagePath); -} - -void LAMPImageCreateClass::on_checkBoxTheta_toggled(bool flag) -{ - this->ui.pushButton_theta->setEnabled(this->ui.checkBoxTheta->isChecked()); - this->ui.pushButton_thetaimage->setEnabled(this->ui.checkBoxTheta->isChecked()); - this->ui.lineEdit_thetaechopath->setEnabled(this->ui.checkBoxTheta->isChecked()); - this->ui.lineEdit_thetaimagepath->setEnabled(this->ui.checkBoxTheta->isChecked()); -} - -void LAMPImageCreateClass::on_checkBox_phi_toggled(bool flag) -{ - this->ui.pushButton_phi->setEnabled(this->ui.checkBox_phi->isChecked()); - this->ui.pushButton_phiImage->setEnabled(this->ui.checkBox_phi->isChecked()); - this->ui.lineEdit_phiechopath->setEnabled(this->ui.checkBox_phi->isChecked()); - this->ui.lineEdit_phiimagepath->setEnabled(this->ui.checkBox_phi->isChecked()); - -} - -void LAMPImageCreateClass::on_pushButton_OK_clicked() -{ - - FEKOBase::FEKOImageSettingParams imageparams = this->getFEKOImageSettingParams(); - // 计算回波 - if (this->ui.checkBoxTheta->isChecked()) { // theta - - QString thetafileptah= this->ui.lineEdit_thetaechopath->text().trimmed(); - QString theta_tiff_filepath=this->ui.lineEdit_thetaimagepath->text().trimmed(); - - FEKOBase::EchoDataClass data; - data.loadEchoData(thetafileptah); - if (this->simulationparams&&(this->simulationparams->imagemode==FEKOBase::FEKOImageMode::Strip|| this->simulationparams->imagemode == FEKOBase::FEKOImageMode::Scane)) { - FEKOBase::FEKOImageProcess(data, imageparams, theta_tiff_filepath,FEKOBase::FEKOImageAlgorithm::TBP_FREQ,FEKOBase::ImageAlgWindowFun::HANMMING); - } - else { - FEKOBase::FEKOImageProcess(data, imageparams, theta_tiff_filepath); - } - } - else { - - } - - if (this->ui.checkBox_phi->isChecked()) { // phi - - QString phifileptah = this->ui.lineEdit_phiechopath->text().trimmed(); - QString phi_tiff_filepath = this->ui.lineEdit_phiimagepath->text().trimmed(); - - FEKOBase::EchoDataClass data; - data.loadEchoData(phifileptah); - //FEKOBase::FEKOImageProcess(data, imageparams, phi_tiff_filepath); - if (this->simulationparams && (this->simulationparams->imagemode == FEKOBase::FEKOImageMode::Strip || this->simulationparams->imagemode == FEKOBase::FEKOImageMode::Scane)) { - FEKOBase::FEKOImageProcess(data, imageparams, phi_tiff_filepath, FEKOBase::FEKOImageAlgorithm::TBP_FREQ, FEKOBase::ImageAlgWindowFun::HANMMING); - } - else { - FEKOBase::FEKOImageProcess(data, imageparams, phi_tiff_filepath); - } - } - else { - - } - - QMessageBox::StandardButton reply = QMessageBox::question(this, u8"提示", u8"是否查看图像", QMessageBox::Yes | QMessageBox::No); - if (reply == QMessageBox::Yes) { - LAMPDataShowClass* datashow=new LAMPDataShowClass(); - datashow->show(); - if (this->ui.checkBoxTheta->isChecked()) { // theta - QString theta_tiff_filepath = this->ui.lineEdit_thetaimagepath->text().trimmed(); - datashow->load_complex_data(theta_tiff_filepath); - - } - if (this->ui.checkBox_phi->isChecked()) { // phi - QString phi_tiff_filepath = this->ui.lineEdit_phiimagepath->text().trimmed(); - datashow->load_complex_data(phi_tiff_filepath); - } - - } - else { - return; - } - - -} - -void LAMPImageCreateClass::on_pushButton_cancel_clicked() -{ - this->close(); -} - -void LAMPImageCreateClass::on_pushButton_loadfekosimulationxml_clicked() -{ - QString xmlpath = getOpenFilePath(this, u8"仿真任务xml", u8"xml文件 (*.xml)"); - if (isExists(xmlpath)) { - this->OpenFEKOSimulationImageSettingXml(xmlpath); - } - else { - - } -} - -void LAMPImageCreateClass::OpenFEKOSimulationImageSettingXml(QString& xmlpath) -{ - this->simulationparams->loadXml(xmlpath); - this->ui.lineEdit_TaskName->setText(this->simulationparams->taskName); - this->ui.comboBox_ImageMode->setCurrentText(FEKOBase::FEKOImageModeenumToString(this->simulationparams->imagemode)); - this->ui.lineEdit_minX->setText(QString::number(this->simulationparams->x_min)); - this->ui.lineEdit__maxX->setText(QString::number(this->simulationparams->x_max)); - this->ui.lineEdit__minY->setText(QString::number(this->simulationparams->y_min)); - this->ui.lineEdit__maxY->setText(QString::number(this->simulationparams->y_max)); - this->ui.lineEdit_planeZ->setText(QString::number(this->simulationparams->z_plane)); - this->ui.lineEdit_height->setText(QString::number(this->simulationparams->imageheight)); - this->ui.lineEdit_width->setText(QString::number(this->simulationparams->imagewidth)); -} - -void LAMPImageCreateClass::bandingsetFEKOSimulationDataparams() -{ -} - - diff --git a/src/WBCLFZSystemModule/QtEchoExportWindows.h b/src/WBCLFZSystemModule/QtEchoExportWindows.h deleted file mode 100644 index f2cceea..0000000 --- a/src/WBCLFZSystemModule/QtEchoExportWindows.h +++ /dev/null @@ -1,16 +0,0 @@ -#pragma once - -#include -#include "ui_QtEchoExportWindows.h" - -class QtEchoExportWindows : public QMainWindow -{ - Q_OBJECT - -public: - QtEchoExportWindows(QWidget *parent = nullptr); - ~QtEchoExportWindows(); - -private: - Ui::QtEchoExportWindowsClass ui; -}; diff --git a/src/WBCLFZSystemModule/QtSARAntModelSetting.cpp b/src/WBCLFZSystemModule/QtSARAntModelSetting.cpp deleted file mode 100644 index 1bd79b1..0000000 --- a/src/WBCLFZSystemModule/QtSARAntModelSetting.cpp +++ /dev/null @@ -1,543 +0,0 @@ -#include "QtSARAntModelSetting.h" -#include "AllHead.h" -#include -#include -#include -#include -#include "OCCTBase.h" - -antModelClass::antModelClass(QString filpath) -{ - QMessageBox::information(nullptr, QString::fromUtf8(u8"模型坐标系提示"), QString::fromUtf8(u8"模型的Y轴为飞行方向,Z轴为雷达指向")); - if (QFile::exists(filpath)) { - ReadTopoDs_Shape(filpath, this->antModel); - } - else { - this->createDefaultAntModel(); - } -} - -antModelClass::antModelClass() -{ - QMessageBox::information(nullptr, QString::fromUtf8(u8"模型坐标系提示"), QString::fromUtf8(u8"模型的Y轴为飞行方向,Z轴为雷达指向")); - this->createDefaultAntModel(); -} - -antModelClass::~antModelClass() -{ - this->antModelShow.Nullify(); - this->antModel.Nullify(); -} - -void antModelClass::initAxis() -{ - gp_Pnt rotationCenter(0, 0, 0); - gp_Ax1 rotationAxis_X(rotationCenter, gp_Dir(1.0, 0.0, 0.0)); - gp_Ax1 rotationAxis_Y(rotationCenter, gp_Dir(0.0, 1.0, 0.0)); - gp_Ax1 rotationAxis_Z(rotationCenter, gp_Dir(0.0, 0.0, 1.0)); -} - -// -// 根据侧视角摆动时,应该是在卫星飞行与雷达照射的平面上进行摆动 -// -void antModelClass::applyAntModel( - double Sx, double Sy, double Sz, - double Vx , double Vy , double Vz , - double incidenceAngle, double AzAngle, bool isRIGHT) { - - FEKOBase::SatelliteState satepos{ - FEKOBase::SatellitePosition{Sx,Sy,Sz}, - FEKOBase::SatelliteVelocity{Vx,Vy,Vz}, - }; - - FEKOBase::FEKOantPitionDirect antposition_Direct; - TopoDS_Shape inDs = this->antModel; - TopoDS_Shape outDs = FEKOBase::SatellitePos2FEKOAntPos(satepos, incidenceAngle, AzAngle, isRIGHT, &antposition_Direct, inDs); - Handle(AIS_Shape) aisShape = new AIS_Shape(outDs); - this->antModelShow = aisShape; - this->antposition_Direct = antposition_Direct; - - return; -} - -void antModelClass::createDefaultAntModel() -{ - - // 创建三个方向的箭头 - //TopoDS_Shape arrow1 = CreateArrow(gp_Dir(1, 0, 0), 0.3, 0.1); // X方向 - TopoDS_Shape arrow2 = CreateArrow(gp_Dir(0, 1, 0), 1, 0.1); // Y方向 - TopoDS_Shape arrow3 = CreateArrow(gp_Dir(0, 0, 1), 1.5, 0.1); // Z方向 - - // 创建雷达模型 - - gp_Ax2 modelCoor = gp_Ax2(gp_Pnt(0, 0, 0), gp_Dir(0, 0, 1), gp_Dir(1, 0, 0)); - - //TopoDS_Shape ant_pyramid = BRepPrimAPI_MakeWedge(modelCoor, 0.1, 0.1, 1.0,-1.0,-1.0,1.0,1.0).Shape(); - - - // 创建一个包含所有箭头的复合体 - TopoDS_Compound compound; - BRep_Builder builder; - - - builder.MakeCompound(compound); - //builder.Add(compound, arrow1); - builder.Add(compound, arrow2); - builder.Add(compound, arrow3); - //builder.Add(compound, ant_pyramid); - this->antModel = compound; // 雷达三维模型 - -} - -FEKOBase::FEKOantPitionDirect antModelClass::get_antposition_Direct() -{ - return this->antposition_Direct; -} - -Handle(AIS_InteractiveObject) antModelClass::get_antModelShow() -{ - return this->antModelShow; -} - -antModelClass antModelClassFactory() -{ - QString filepath = getOpenFilePath( - nullptr, - QString::fromUtf8(u8"导入雷达模型"), - QString::fromUtf8(u8"STL Files (*.stl);;STL Files (*.stla);;step Files (*.stp);;step Files (*.step);;IGES Files (*.iges);;IGES Files (*.igs)")); - antModelClass result(filepath); - return result; -} - - -QtSARAntModelSettingClass::QtSARAntModelSettingClass(QWidget* parent) -{ - ui.setupUi(this); - this->simulationparams = std::make_shared(); // 参数初始化 - this->ui.lineEdit_TaskName->setText(this->simulationparams->taskName); - this->ui.lineEdit_farsourcePath->setText(this->simulationparams->AntennaRadiationFileName); - - this->Widgetfreqsetting=new QtFreqParamsSetting(this); - this->WidgetImageSetting = new QtWidgetsClass_ImageSetting(this); - // 添加成像模式 - this->WidgetISARMode = new QtWidgetsClass_ISAR(); - this->WidgetCirCleSARMode = new QtWidgetsClass_CircleSAR(); - this->WidgetScanMode = new QtWidgetsClass_Scan(); - this->WidgetstriMode = new QtWidgetsClass_Strip(); - - - - QObject::connect(this->WidgetISARMode, SIGNAL(OKClick()), this, SLOT(OKClickISAR( ))); - QObject::connect(this->WidgetstriMode,SIGNAL(OKClick()),this,SLOT(OKClickStrip( ))); - QObject::connect(this->WidgetCirCleSARMode, SIGNAL(OKClick()), this, SLOT(OKClickCircleSAR( ))); - QObject::connect(this->WidgetScanMode, SIGNAL(OKClick()), this, SLOT(OKClickScane( ))); - QObject::connect(this->Widgetfreqsetting, SIGNAL(OKClick()), this, SLOT(OKClickFreqSetting( ))); - QObject::connect(this->WidgetImageSetting, SIGNAL(OKClick()), this, SLOT(OKClickImageSetting( ))); - // 添加频率 - //this->Widgetfreqsetting->freqParams = this->freqSetting; - this->ui.tabWidget->removeTab(0); - this->ui.tabWidget->insertTab(0, this->Widgetfreqsetting, u8"频率设置"); - this->ui.tabWidget->removeTab(2); - this->ui.tabWidget->insertTab(2, this->WidgetImageSetting, u8"成像设置"); - - this->ui.comboBox_ImageMode->addItem(FEKOBase::FEKOImageModeenumToString(FEKOBase::FEKOImageMode::Strip)); - this->ui.comboBox_ImageMode->addItem(FEKOBase::FEKOImageModeenumToString(FEKOBase::FEKOImageMode::Scane)); - this->ui.comboBox_ImageMode->addItem(FEKOBase::FEKOImageModeenumToString(FEKOBase::FEKOImageMode::ISAR)); - this->ui.comboBox_ImageMode->addItem(FEKOBase::FEKOImageModeenumToString(FEKOBase::FEKOImageMode::CircleSAR)); - - this->ui.comboBox_LookSide->addItem(u8"左视"); - this->ui.comboBox_LookSide->addItem(u8"右视"); - - - // 绘制模型 - this->antModel = nullptr; - this->myContext = nullptr; - this->ui.tabantModeMove->setEnabled(false); - -} - -QtSARAntModelSettingClass::~QtSARAntModelSettingClass() -{ - -} - -void QtSARAntModelSettingClass::removeModeSettingWidget() -{ - this->ui.tabWidget->removeTab(1); - this->FEKOAntPoselist.clear(); -} - -void QtSARAntModelSettingClass::switchStripImageParamsWeight() -{ - this->removeModeSettingWidget(); - this->ui.tabWidget->insertTab(1, this->WidgetstriMode, u8"条带成像设置"); - this->ui.comboBox_LookSide->setEnabled(true); -} - -void QtSARAntModelSettingClass::switchScanImageParamsWeight() -{ - this->removeModeSettingWidget(); - this->ui.tabWidget->insertTab(1, this->WidgetScanMode, u8"扫描成像设置"); - this->ui.comboBox_LookSide->setEnabled(true); - -} - -void QtSARAntModelSettingClass::switchISARImageParamsWeight() -{ - this->removeModeSettingWidget(); - this->ui.tabWidget->insertTab(1, this->WidgetISARMode, u8"ISAR成像设置"); - this->ui.comboBox_LookSide->setEnabled(false); -} - -void QtSARAntModelSettingClass::switchCircleSARImageParamsWeight() -{ - this->removeModeSettingWidget(); - this->ui.tabWidget->insertTab(1, this->WidgetCirCleSARMode, u8"圆迹SAR成像设置"); - this->ui.comboBox_LookSide->setEnabled(false); -} - -void QtSARAntModelSettingClass::ReferenceWindows() -{ - this->ui.lineEdit_TaskName->setText(this->simulationparams->getTaskName()); - //this->ui.comboBox_ImageMode->setCurrentText(FEKOBase::FEKOImageModeenumToString(this->simulationparams->imagemode)); - - switch (this->simulationparams->imagemode) { - case FEKOBase::FEKOImageMode::Strip: - this->ui.comboBox_ImageMode->setCurrentIndex(0); - break; - case FEKOBase::FEKOImageMode::Scane: - this->ui.comboBox_ImageMode->setCurrentIndex(1); - break; - case FEKOBase::FEKOImageMode::ISAR: - this->ui.comboBox_ImageMode->setCurrentIndex(2); - break; - case FEKOBase::FEKOImageMode::CircleSAR: - this->ui.comboBox_ImageMode->setCurrentIndex(3); - break; - } - - if (this->simulationparams->isRight) { - this->ui.comboBox_LookSide->setCurrentIndex(1); - } - else { - this->ui.comboBox_LookSide->setCurrentIndex(0); - } - - this->ui.lineEdit_refRange->setText(QString::number(this->simulationparams->refRange)); - this->ui.lineEdit_incangle->setText(QString::number(this->simulationparams->incangle)); - - emit this->simulationparams->FEKOSimulationDataparamsChanged(); // 将参数修改发送到不同界面中 - - this->generator_FEKOSatelliteParams(); - -} - -void QtSARAntModelSettingClass::refreshFEKOSimulationParams() -{ - this->simulationparams->taskName = this->ui.lineEdit_TaskName->text(); - this->simulationparams->AntennaRadiationFileName = this->ui.lineEdit_farsourcePath->text(); - this->simulationparams->isRight = this->ui.comboBox_LookSide->currentIndex() == 1; - this->simulationparams->imagemode=FEKOBase::FEKOImageModeString2Enum(this->ui.comboBox_ImageMode->currentText().trimmed()); - this->simulationparams->refRange = this->ui.lineEdit_refRange->text().toDouble(); - this->simulationparams->incangle = this->ui.lineEdit_incangle->text().toDouble(); -} - -void QtSARAntModelSettingClass::setOCCTDocument(Handle(AIS_InteractiveContext) myContext) -{ - this->myContext = myContext; - - QString antFilePath=getOpenFilePath( - nullptr, - QString::fromUtf8(u8"导入雷达模型"), - QString::fromUtf8(u8"STL Files (*.stl);;STL Files (*.stla);;step Files (*.stp);;step Files (*.step);;IGES Files (*.iges);;IGES Files (*.igs)")); - - if (isExists(antFilePath)) { - this->antModel = new antModelClass(antFilePath); - } - else { - this->antModel = new antModelClass(); - } - this->ui.tabantModeMove->setEnabled(true); -} - - -void QtSARAntModelSettingClass::OKClickISAR( ) -{ - - this->refreshFEKOSimulationParams(); - this->generator_FEKOSatelliteParams(); - // 绘制展示模型 - if (this->myContext.IsNull()) { - this->ui.horizontalSlider_PRF->setValue(0); - //this->on_horizontalSlider_PRF_valueChanged(0); - } - emit this->simulationparams->FEKOSimulationDataparamsChanged(); -} -void QtSARAntModelSettingClass::OKClickStrip( ) -{ - qDebug() << u8"计算 Strip..."; - this->refreshFEKOSimulationParams(); - this->generator_FEKOSatelliteParams(); - if (this->myContext.IsNull()) { - this->ui.horizontalSlider_PRF->setValue(0); - } - emit this->simulationparams->FEKOSimulationDataparamsChanged(); -} -void QtSARAntModelSettingClass::OKClickCircleSAR( ) -{ - this->refreshFEKOSimulationParams(); - this->generator_FEKOSatelliteParams(); - // 绘制展示模型 - if (this->myContext.IsNull()) { - this->ui.horizontalSlider_PRF->setValue(0); - //this->on_horizontalSlider_PRF_valueChanged(0); - } - emit this->simulationparams->FEKOSimulationDataparamsChanged(); - -} -void QtSARAntModelSettingClass::OKClickScane( ) -{ - this->refreshFEKOSimulationParams(); - this->generator_FEKOSatelliteParams(); - if (this->myContext.IsNull()) { - this->ui.horizontalSlider_PRF->setValue(0); - } - emit this->simulationparams->FEKOSimulationDataparamsChanged(); -} - -void QtSARAntModelSettingClass::OKClickFreqSetting( ) -{ - this->refreshFEKOSimulationParams(); - emit this->simulationparams->FEKOSimulationDataparamsChanged(); -} - -void QtSARAntModelSettingClass::OKClickImageSetting( ) -{ - this->refreshFEKOSimulationParams(); - emit this->simulationparams->FEKOSimulationDataparamsChanged(); -} - -void QtSARAntModelSettingClass::on_comboBox_ImageMode_currentIndexChanged(int index) -{ - QString text = this->ui.comboBox_ImageMode->currentText(); - this->simulationparams->imagemode = FEKOBase::FEKOImageModeString2Enum(text.trimmed()); - if (this->simulationparams->imagemode == FEKOBase::FEKOImageMode::UNKNOW) { - QMessageBox::information(nullptr, QString::fromUtf8(u8"错误"), QString::fromUtf8(u8"未知的成像模式")); - return; - } - else if (this->simulationparams->imagemode == FEKOBase::FEKOImageMode::Strip) { - this->switchStripImageParamsWeight(); - } - else if (this->simulationparams->imagemode == FEKOBase::FEKOImageMode::Scane) { - this->switchScanImageParamsWeight(); - } - else if (this->simulationparams->imagemode == FEKOBase::FEKOImageMode::ISAR) { - this->switchISARImageParamsWeight(); - } - else if (this->simulationparams->imagemode == FEKOBase::FEKOImageMode::CircleSAR) { - this->switchCircleSARImageParamsWeight(); - } - else { - QMessageBox::information(nullptr, QString::fromUtf8(u8"错误"), QString::fromUtf8(u8"未知的成像模式")); - } -} - -void QtSARAntModelSettingClass::on_pushButton_ffe_clicked() -{ - QtWidgetsClass_FarSourceSetting* ffeselectwindows = new QtWidgetsClass_FarSourceSetting(this); - QObject::connect(ffeselectwindows, SIGNAL(setResultSelected(size_t, size_t, QString)), this, SLOT(SelectFFESourcePath(size_t, size_t, QString))); - ffeselectwindows->show(); -} - -void QtSARAntModelSettingClass::on_comboBox_LookSide_currentIndexChanged(int index) -{ - QString lookside = this->ui.comboBox_LookSide->currentText(); - if (lookside == u8"左视") { - this->simulationparams->isRight = false; - } - else { - this->simulationparams->isRight = true; - } -} - -void QtSARAntModelSettingClass::on_horizontalSlider_PRF_valueChanged(int value) -{ - if (this->FEKOAntPoselist.size() == 0) { - return; - } - - this->ui.horizontalSlider_PRF->setMinimum(0); - this->ui.horizontalSlider_PRF->setMaximum(this->FEKOAntPoselist.size()-1); - - - // 移除旧 - Handle(AIS_InteractiveObject) moveShapeold = this->antModel->get_antModelShow(); - this->myContext->Remove(moveShapeold,Standard_False); - - // 增加新 - FEKOBase::FEKOSatelliteParams temp = this->FEKOAntPoselist[value]; - this->antModel->applyAntModel(temp.pose.pos.Px, temp.pose.pos.Py, temp.pose.pos.Pz, temp.pose.vel.Vx, temp.pose.vel.Vy, temp.pose.vel.Vz, temp.incidenceAngle, temp.AzAngle, this->simulationparams->isRight); - Handle(AIS_InteractiveObject) moveShape = this->antModel->get_antModelShow(); - this->myContext->Display(moveShape, Standard_True); - - - if (this->simulationparams->imagemode == FEKOBase::FEKOImageMode::ISAR || this->simulationparams->imagemode == FEKOBase::FEKOImageMode::CircleSAR) { - this->ui.label_AZ_Angle->setText(u8"方位角:"); - } - else { - this->ui.label_AZ_Angle->setText(u8"侧摆角:"); - } - this->ui.lineEdit_PRF_Show->setText(QString::number(temp.PRFidx)); - this->ui.lineEdit_X_Show->setText(QString::number(temp.pose.pos.Px)); - this->ui.lineEdit_Y_Show->setText(QString::number(temp.pose.pos.Py)); - this->ui.lineEdit_Z_Show->setText(QString::number(temp.pose.pos.Pz)); - this->ui.lineEdit_Az_Show->setText(QString::number(temp.AzAngle)); - this->ui.lineEdit_incangle_Show->setText(QString::number(temp.incidenceAngle)); - - this->ui.lineEdit_X_Show->setReadOnly(true); - this->ui.lineEdit_Y_Show->setReadOnly(true); - this->ui.lineEdit_Z_Show->setReadOnly(true); - this->ui.lineEdit_Az_Show->setReadOnly(true); - this->ui.lineEdit_incangle_Show->setReadOnly(true); - - -} - -void QtSARAntModelSettingClass::on_pushButton_OK_clicked() -{ - this->refreshFEKOSimulationParams(); // 最后更新下参数 - this->saveFEKOImageSettingXML(); - - QString luatext = this->createLuaSciptString(0, this->FEKOAntPoselist.size()); - - // 写入文件 - QString filePath = this->workSpace + QDir::separator() + this->simulationparams->taskName + QString(u8"_%1.lua").arg(FEKOBase::FEKOImageModeenumToString(this->simulationparams->imagemode)); - // 创建文件对象 - QFile file(filePath); - - // 打开文件以供写入,如果文件不存在将创建新文件 - if (file.open(QIODevice::WriteOnly | QIODevice::Text)) { - // 创建文本流,并设置编码为UTF-8 - QTextStream stream(&file); - stream.setCodec("UTF-8"); - stream << luatext; - // 关闭文件 - file.close(); - // 提示文件写入成功 - QMessageBox::information(nullptr, QString::fromUtf8(u8"提示"), QString::fromUtf8(u8"文件写入成功!\n%1").arg(filePath)); - qDebug() << "File written successfully."; - } - else { - qDebug() << "Could not open file for writing."; - QMessageBox::information(nullptr, QString::fromUtf8(u8"提示"), QString::fromUtf8(u8"文件写入失败")); - } - // 询问用户是否关闭窗口 - QMessageBox::StandardButton reply; - reply = QMessageBox::question(this, QString::fromUtf8(u8"提示"), QString::fromUtf8(u8"是否关闭窗口?"), - QMessageBox::Yes | QMessageBox::No); - if (reply == QMessageBox::Yes) { - this->close(); - } - else { - return; - } -} - -void QtSARAntModelSettingClass::on_pushButton_Cancel_clicked() -{ - // 询问用户是否关闭窗口 - QMessageBox::StandardButton reply; - reply = QMessageBox::question(this, QString::fromUtf8(u8"提示"), QString::fromUtf8(u8"是否关闭窗口?"), - QMessageBox::Yes | QMessageBox::No); - if (reply == QMessageBox::Yes) { - this->close(); - } - else { - return; - } -} - -void QtSARAntModelSettingClass::on_lineEdit_Range_editingFinished() -{ - // 传播计算 - this->simulationparams->setRefRange(this->ui.lineEdit_refRange->text().toDouble()); - QMessageBox::StandardButton reply = QMessageBox::question(this, u8"提示", u8"是否重新计算姿态", QMessageBox::Yes | QMessageBox::No); - if (reply == QMessageBox::Yes) { - this->generator_FEKOSatelliteParams(); - } - else { - return; - } -} - -void QtSARAntModelSettingClass::SelectFFESourcePath(size_t thetaPoints, size_t phiPoints, QString ffePath) -{ - if (!isExists(ffePath)) { - // 警告文件不存在 - QMessageBox::information(nullptr, QString::fromUtf8(u8"错误"), QString::fromUtf8(u8"文件不存在")); - return; - } - QString filename = getFileNameFromPath(ffePath); - { - QFile sourceFile(ffePath); - - QString fullpath = QDir::cleanPath(this->workSpace + QDir::separator() + filename); - QFile destinationFile(fullpath); - - // 打开源文件以供读取 - if (sourceFile.open(QIODevice::ReadOnly)) { - // 打开目标文件以供写入 - if (destinationFile.open(QIODevice::WriteOnly)) { - // 将源文件内容复制到目标文件 - QByteArray data = sourceFile.readAll(); - destinationFile.write(data); - // 关闭文件 - destinationFile.close(); - } - else { - qDebug() << "Could not open destination file for writing."; - } - - // 关闭源文件 - sourceFile.close(); - } - else { - qDebug() << "Could not open source file for reading."; - } - - } - - - this->ui.lineEdit_farsourcePath->setText(filename); - this->simulationparams->setAntennaRadiationFileName(filename); - this->simulationparams->setFarsourceThetaPoints(thetaPoints); - this->simulationparams->setFarsourcePhiPoints(phiPoints); - - -} - -void QtSARAntModelSettingClass::FEKOSimulationDataparamsChanged_slots() -{ - qDebug() << u8"QtSARAntModelSettingClass::bandingsetFEKOSimulationDataparams()"; - - - - -} - -void QtSARAntModelSettingClass::bandingsetFEKOSimulationDataparams() -{ - QObject::connect(this->simulationparams.get(), SIGNAL(FEKOSimulationDataparamsChanged()), this, SLOT(FEKOSimulationDataparamsChanged_slots())); - - this->Widgetfreqsetting->setFEKOSimulationDataparams(this->simulationparams); - this->WidgetImageSetting->setFEKOSimulationDataparams(this->simulationparams); - // 添加成像模式 - this->WidgetISARMode->setFEKOSimulationDataparams(this->simulationparams); - this->WidgetCirCleSARMode->setFEKOSimulationDataparams(this->simulationparams); - this->WidgetScanMode->setFEKOSimulationDataparams(this->simulationparams); - this->WidgetstriMode->setFEKOSimulationDataparams(this->simulationparams); - emit this->simulationparams->FEKOSimulationDataparamsChanged(); - -} - - diff --git a/src/WBCLFZSystemModule/QtStripImageSettingClass.h b/src/WBCLFZSystemModule/QtStripImageSettingClass.h deleted file mode 100644 index 6c8c5e9..0000000 --- a/src/WBCLFZSystemModule/QtStripImageSettingClass.h +++ /dev/null @@ -1,19 +0,0 @@ -#pragma once - - - -#include "AllHead.h" -#include -#include "ui_QtStripImageSettingClass.h" - -class QtStripImageSettingClass : public QWidget -{ - Q_OBJECT - -public: - QtStripImageSettingClass(QWidget *parent = nullptr); - ~QtStripImageSettingClass(); - -private: - Ui::QtStripImageSettingClassClass ui; -}; diff --git a/src/WBCLFZSystemModule/QtWidgetsClass_ImageSetting.cpp b/src/WBCLFZSystemModule/QtWidgetsClass_ImageSetting.cpp deleted file mode 100644 index 19c0db0..0000000 --- a/src/WBCLFZSystemModule/QtWidgetsClass_ImageSetting.cpp +++ /dev/null @@ -1,45 +0,0 @@ -#include "QtWidgetsClass_ImageSetting.h" - - - -void QtWidgetsClass_ImageSetting::FEKOSimulationDataparamsChanged_slots() -{ - this->ui.lineEdit_minX->setText(QString::number(this->simulationparams->getX_min())); - this->ui.lineEdit__maxX->setText(QString::number(this->simulationparams->getX_max())); - this->ui.lineEdit__minY->setText(QString::number(this->simulationparams->getY_min())); - this->ui.lineEdit__maxY->setText(QString::number(this->simulationparams->getY_max())); - this->ui.lineEdit_planeZ->setText(QString::number(this->simulationparams->getZ_plane())); - this->ui.lineEdit_height->setText(QString::number(this->simulationparams->getImageheight())); - this->ui.lineEdit_width->setText(QString::number(this->simulationparams->getImagewidth())); -} - -void QtWidgetsClass_ImageSetting::bandingsetFEKOSimulationDataparams() -{ - QObject::connect(this->simulationparams.get(), SIGNAL(FEKOSimulationDataparamsChanged()), this, SLOT(FEKOSimulationDataparamsChanged_slots())); - -} - -QtWidgetsClass_ImageSetting::QtWidgetsClass_ImageSetting(QWidget *parent) - : QWidget(parent) -{ - ui.setupUi(this); -} - -QtWidgetsClass_ImageSetting::~QtWidgetsClass_ImageSetting() -{} - - - -void QtWidgetsClass_ImageSetting::on_pushButton_OK_clicked() { - - this->simulationparams->setX_min(this->ui.lineEdit_minX->text().toDouble()); - this->simulationparams->setX_max(this->ui.lineEdit__maxX->text().toDouble()); - this->simulationparams->setY_min(this->ui.lineEdit__minY->text().toDouble()); - this->simulationparams->setY_max(this->ui.lineEdit__maxY->text().toDouble()); - this->simulationparams->setZ_plane(this->ui.lineEdit_planeZ->text().toDouble()); - this->simulationparams->setImageheight(this->ui.lineEdit_height->text().toInt()); - this->simulationparams->setImagewidth(this->ui.lineEdit_width->text().toInt()); - - - emit this->OKClick(); -} \ No newline at end of file diff --git a/src/WBCLFZSystemModule/QtWidgetsClass_Scan.cpp b/src/WBCLFZSystemModule/QtWidgetsClass_Scan.cpp deleted file mode 100644 index 6cd4a52..0000000 --- a/src/WBCLFZSystemModule/QtWidgetsClass_Scan.cpp +++ /dev/null @@ -1,74 +0,0 @@ -#include "QtWidgetsClass_Scan.h" - - -void QtWidgetsClass_Scan::FEKOSimulationDataparamsChanged_slots() -{ - if (this->simulationparams->imagemode == FEKOBase::FEKOImageMode::Scane) { - this->ui.lineEdit_PRF->setText(QString::number(this->simulationparams->getPRFCount())); - this->ui.lineEdit_Start_x->setText(QString::number(this->simulationparams->start_x)); - this->ui.lineEdit_start_y->setText(QString::number(this->simulationparams->start_y)); - this->ui.lineEdit_start_z->setText(QString::number(this->simulationparams->start_z)); - this->ui.lineEdit_end_x->setText(QString::number(this->simulationparams->end_x)); - this->ui.lineEdit_end_y->setText(QString::number(this->simulationparams->end_y)); - this->ui.lineEdit_end_z->setText(QString::number(this->simulationparams->end_z)); - this->ui.lineEdit_startAzAngle->setText(QString::number(this->simulationparams->start_az_angle)); - this->ui.lineEdit_EndAzAngle->setText(QString::number(this->simulationparams->end_az_angle)); - } - else if (this->simulationparams->imagemode == FEKOBase::FEKOImageMode::Strip) { - this->ui.lineEdit_PRF->setText(QString::number(this->simulationparams->getPRFCount())); - this->ui.lineEdit_Start_x->setText(QString::number(this->simulationparams->start_x)); - this->ui.lineEdit_start_y->setText(QString::number(this->simulationparams->start_y)); - this->ui.lineEdit_start_z->setText(QString::number(this->simulationparams->start_z)); - this->ui.lineEdit_end_x->setText(QString::number(this->simulationparams->end_x)); - this->ui.lineEdit_end_y->setText(QString::number(this->simulationparams->end_y)); - this->ui.lineEdit_end_z->setText(QString::number(this->simulationparams->end_z)); - } - - else { - return; - } -} - -void QtWidgetsClass_Scan::bandingsetFEKOSimulationDataparams() -{ - QObject::connect(this->simulationparams.get(), SIGNAL(FEKOSimulationDataparamsChanged()), this, SLOT(FEKOSimulationDataparamsChanged_slots())); - -} - -QtWidgetsClass_Scan::QtWidgetsClass_Scan(QWidget *parent) - : QWidget(parent) -{ - ui.setupUi(this); - - - -} - -QtWidgetsClass_Scan::~QtWidgetsClass_Scan() -{ - - -} - - -void QtWidgetsClass_Scan::on_pushButton_OK_clicked() { - //参考void QtWidgetsClass_ISAR::on_pushButton_OK_clicked() 逻辑生成代码 - - //void OKClick(double incAngle, double refRange, double startAzAngle, double endAzAngle, double start_x, double start_y, double start_z, double end_x, double end_y, double end_z, size_t prfcount); - - this->simulationparams->setStart_az_angle(ui.lineEdit_startAzAngle->text().toDouble()); - this->simulationparams->setEnd_az_angle(ui.lineEdit_EndAzAngle->text().toDouble()); - this->simulationparams->setPRFCount(this->ui.lineEdit_PRF->text().toInt()); - this->simulationparams->setStart_x(this->ui.lineEdit_Start_x->text().toDouble()); - this->simulationparams->setStart_y(this->ui.lineEdit_start_y->text().toDouble()); - this->simulationparams->setStart_z(this->ui.lineEdit_start_z->text().toDouble()); - this->simulationparams->setEnd_x(this->ui.lineEdit_end_x->text().toDouble()); - this->simulationparams->setEnd_y(this->ui.lineEdit_end_y->text().toDouble()); - this->simulationparams->setEnd_z(this->ui.lineEdit_end_z->text().toDouble()); - this->simulationparams->setImagemode(FEKOBase::FEKOImageMode::Scane); - - - - emit this->OKClick(); - -} \ No newline at end of file diff --git a/src/WBCLFZSystemModule/QtWidgetsClass_Strip.cpp b/src/WBCLFZSystemModule/QtWidgetsClass_Strip.cpp deleted file mode 100644 index 1891524..0000000 --- a/src/WBCLFZSystemModule/QtWidgetsClass_Strip.cpp +++ /dev/null @@ -1,60 +0,0 @@ -#include "QtWidgetsClass_Strip.h" - - - -void QtWidgetsClass_Strip::FEKOSimulationDataparamsChanged_slots() -{ - if (this->simulationparams->imagemode == FEKOBase::FEKOImageMode::Strip) { - this->ui.lineEdit_PRF->setText(QString::number(this->simulationparams->getPRFCount())); - this->ui.lineEdit_Start_x->setText(QString::number(this->simulationparams->start_x)); - this->ui.lineEdit_start_y->setText(QString::number(this->simulationparams->start_y)); - this->ui.lineEdit_start_z->setText(QString::number(this->simulationparams->start_z)); - this->ui.lineEdit_end_x->setText(QString::number(this->simulationparams->end_x)); - this->ui.lineEdit_end_y->setText(QString::number(this->simulationparams->end_y)); - this->ui.lineEdit_end_z->setText(QString::number(this->simulationparams->end_z)); - } - else if (this->simulationparams->imagemode == FEKOBase::FEKOImageMode::Scane) { - this->ui.lineEdit_PRF->setText(QString::number(this->simulationparams->getPRFCount())); - this->ui.lineEdit_Start_x->setText(QString::number(this->simulationparams->start_x)); - this->ui.lineEdit_start_y->setText(QString::number(this->simulationparams->start_y)); - this->ui.lineEdit_start_z->setText(QString::number(this->simulationparams->start_z)); - this->ui.lineEdit_end_x->setText(QString::number(this->simulationparams->end_x)); - this->ui.lineEdit_end_y->setText(QString::number(this->simulationparams->end_y)); - this->ui.lineEdit_end_z->setText(QString::number(this->simulationparams->end_z)); - } - else { - return; - } - -} - -void QtWidgetsClass_Strip::bandingsetFEKOSimulationDataparams() -{ - QObject::connect(this->simulationparams.get(), SIGNAL(FEKOSimulationDataparamsChanged()), this, SLOT(FEKOSimulationDataparamsChanged_slots())); -} - -QtWidgetsClass_Strip::QtWidgetsClass_Strip(QWidget *parent) - : QWidget(parent) -{ - ui.setupUi(this); -} - -QtWidgetsClass_Strip::~QtWidgetsClass_Strip() -{} - - -void QtWidgetsClass_Strip::on_pushButton_OK_clicked() { - - - //void OKClick(double incAngle, double refRange, double start_x, double start_y, double start_z, double end_x, double end_y, double end_z, size_t prfcount); - this->simulationparams->setPRFCount(this->ui.lineEdit_PRF->text().toInt()); - this->simulationparams->setStart_x(this->ui.lineEdit_Start_x->text().toDouble()); - this->simulationparams->setStart_y(this->ui.lineEdit_start_y->text().toDouble()); - this->simulationparams->setStart_z(this->ui.lineEdit_start_z->text().toDouble()); - this->simulationparams->setEnd_x(this->ui.lineEdit_end_x->text().toDouble()); - this->simulationparams->setEnd_y(this->ui.lineEdit_end_y->text().toDouble()); - this->simulationparams->setEnd_z(this->ui.lineEdit_end_z->text().toDouble()); - this->simulationparams->setImagemode(FEKOBase::FEKOImageMode::Strip); - emit this->OKClick(); - -} \ No newline at end of file diff --git a/src/WBCLFZSystemModule/SharedModuleLib/CMDExcuteApp.ui b/src/WBCLFZSystemModule/SharedModuleLib/CMDExcuteApp.ui deleted file mode 100644 index 6473855..0000000 --- a/src/WBCLFZSystemModule/SharedModuleLib/CMDExcuteApp.ui +++ /dev/null @@ -1,26 +0,0 @@ - - - cmdExcuteWindows - - - - 0 - 0 - 568 - 260 - - - - cmd - - - - - - - - - - - - diff --git a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/icons.qrc b/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/icons.qrc deleted file mode 100644 index 3d31be5..0000000 --- a/src/WBCLFZSystemModule/SqliteDBProcess/src/icons/icons.qrc +++ /dev/null @@ -1,106 +0,0 @@ - - - database_add.png - database_go.png - database_refresh.png - database_save.png - table_add.png - table_delete.png - table_edit.png - tag_blue_add.png - tag_blue_delete.png - page_edit.png - page_delete.png - page_add.png - page_green.png - table.png - tag_blue.png - view-refresh.png - picture_delete.png - picture.png - picture_add.png - script.png - script_add.png - script_delete.png - wrench.png - help.png - tab_add.png - resultset_next.png - page_save.png - page_white_database.png - plugin_add.png - plugin_delete.png - table_save.png - resultset_last.png - layout_sidebar.png - bullet_arrow_down.png - bullet_arrow_up.png - sqlitebrowser.png - internet-web-browser.png - package.png - package_go.png - page_key.png - key.png - document-open.png - chart_curve.png - cog.png - clear_filters.png - page_copy.png - resultset_previous.png - resultset_first.png - picture_edit.png - script_edit.png - tag_blue_edit.png - folder.png - database.png - cog_go.png - page_paste.png - folder_user.png - server_go.png - page_find.png - cross.png - page_white_copy.png - page_copy_sql.png - text_replace.png - picture_save.png - application_side_list.png - database_link.png - text_indent.png - printer.png - package_save.png - cancel.png - comment_block.png - hourglass.png - table_row_delete.png - table_row_insert.png - textfield_delete.png - filter.png - tab.png - package_rename.png - page_foreign_key.png - save_all.png - page_white_text.png - color_swatch.png - edit_cond_formats.png - clear_sorting.png - bullet_arrow_bottom.png - bullet_arrow_top.png - text_bold.png - text_italic.png - text_underline.png - text_align_center.png - text_align_justify.png - text_align_left.png - text_align_right.png - page_paintbrush.png - text_paintbrush.png - style.png - style_edit.png - style_delete.png - style_add.png - application_link.png - document-link.png - application_go.png - server_add.png - - diff --git a/src/WBCLFZSystemModule/TableProcess/TableFieldConfigClass.h b/src/WBCLFZSystemModule/TableProcess/TableFieldConfigClass.h deleted file mode 100644 index 8203c9d..0000000 --- a/src/WBCLFZSystemModule/TableProcess/TableFieldConfigClass.h +++ /dev/null @@ -1,16 +0,0 @@ -#pragma once - -#include -#include "ui_TableFieldConfigClass.h" - -class TableFieldConfigClass : public QMainWindow -{ - Q_OBJECT - -public: - TableFieldConfigClass(QWidget *parent = nullptr); - ~TableFieldConfigClass(); - -private: - Ui::TableFieldConfigClassClass ui; -}; diff --git a/src/WBCLFZSystemModule/TableProcess/TableFieldFindTool.h b/src/WBCLFZSystemModule/TableProcess/TableFieldFindTool.h deleted file mode 100644 index 3dab4e4..0000000 --- a/src/WBCLFZSystemModule/TableProcess/TableFieldFindTool.h +++ /dev/null @@ -1,16 +0,0 @@ -#pragma once - -#include -#include "ui_TableFieldFindTool.h" - -class TableFieldFindTool : public QDialog -{ - Q_OBJECT - -public: - TableFieldFindTool(QWidget *parent = nullptr); - ~TableFieldFindTool(); - -private: - Ui::TableFieldFindToolClass ui; -}; diff --git a/src/WBCLFZSystemModule/TaskXml/TaskTreeClass.cpp b/src/WBCLFZSystemModule/TaskXml/TaskTreeClass.cpp deleted file mode 100644 index ae5c9e3..0000000 --- a/src/WBCLFZSystemModule/TaskXml/TaskTreeClass.cpp +++ /dev/null @@ -1,226 +0,0 @@ -#include "TaskTreeClass.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - - - - -TaskNode::TaskNode(QWidget* parent) :QCheckBox(parent) -{ - this->status = TaskStatusEnum::wait; - this->setText("TaskNode"); - this->description = "TaskNode"; - this->TaskXmlPath = ""; - - this->setContextMenuPolicy(Qt::CustomContextMenu); - this->ContentListContextMenu = new QMenu(this); // 表格控件的右键菜单 - QObject::connect(this, SIGNAL(customContextMenuRequested(QPoint)), this, SLOT(ShowContentListContextMenu(QPoint))); - - //// 加载数据 - //QAction* action_Node_ExcuteTask_Action = this->ContentListContextMenu->addAction(u8"加载"); - //QObject::connect(action_Node_ExcuteTask_Action, SIGNAL(triggered()), this, SLOT(ExcuteTask())); - - // 重命名 - QAction* action_rename=this->ContentListContextMenu->addAction(u8"重命名"); - QObject::connect(action_rename, SIGNAL(triggered()), this, SLOT(renameNode())); - - // 移除 - QAction* action_remove = this->ContentListContextMenu->addAction(u8"移除"); - QObject::connect(action_remove, SIGNAL(triggered()), this, SLOT(deleteNode())); - -} - -TaskNode::~TaskNode() -{ - this->Nodelist.clear(); -} - -QString TaskNode::getName() -{ - return this->text(); -} - -int TaskNode::setName(QString name) -{ - this->setText(name); - return 0; -} - -QString TaskNode::getTaskName() -{ - return this->text(); -} - -int TaskNode::loadXmlDocument(QString xmlFilePath, QDomDocument& doc) -{ - QFile file(xmlFilePath.toUtf8().constData()); //相对路径、绝对路径、资源路径都可以 - if (!file.open(QFile::ReadOnly)) //可以用QIODevice,Truncate表示清空原来的内容 - { - QString tiptext = "File isn't opened in readonly mode ,file path "+ xmlFilePath; - qDebug() << tiptext.toUtf8().constData(); - return 2; - } - - QTextStream stream(&file); - QTextCodec* codec = QTextCodec::codecForName(u8"UTF-8"); - stream.setCodec(codec); - QString content = stream.readAll(); - file.close(); - if (!doc.setContent(content)) // 关联文件流 - { - QString tiptext = u8"File isn't readed in xml format ,file path " + xmlFilePath; - qDebug() << tiptext.toUtf8().constData(); - file.close(); - return 3; - } - file.close(); // 文件读取结束 - return -1; -} - -int TaskNode::writeXmlDocument(QDomDocument& doc) -{ - - QFile wfile(this->TaskXmlPath.toUtf8().constData()); // 保存 XML 文件 - if (wfile.open(QFile::ReadWrite | QFile::Text)) - { - QTextStream out(&wfile); - doc.save(out, QDomNode::EncodingFromDocument); - wfile.close(); - } - return -1; -} - -int TaskNode::loadXmlFile(QString xmlFilePath) -{ - return 0; -} - -int TaskNode::saveXmlFile() -{ - return 0; -} - - -int TaskNode::addNode(std::shared_ptr n) -{ - this->Nodelist.push_back(n); - return 0; -} - -std::shared_ptr TaskNode::getNode(int nid) -{ - if (nid < this->Nodelist.size()) { - return this->Nodelist[nid]; - } - return std::shared_ptr(nullptr); -} - -std::shared_ptr TaskNode::getNode(QString nodename) -{ - for (int i = 0; i < this->Nodelist.size(); i++) { - if (strcmp(nodename.toUtf8().constData(), this->Nodelist[i]->getName().toUtf8().constData()) == 0) { - return this->Nodelist[i]; - } - } - return std::shared_ptr(nullptr); -} - -std::shared_ptr TaskNode::removeAt(int nid) -{ - if (nid < this->Nodelist.size()) { - std::shared_ptr result = this->Nodelist[nid]; - this->Nodelist.erase(this->Nodelist.begin()+nid); // 删除 nid - return result; - } - return std::shared_ptr(nullptr); -} - -std::shared_ptr TaskNode::removeByName(QString nodename) -{ - for (int i = 0; i < this->Nodelist.size(); i++) { - if (strcmp(nodename.toUtf8().constData(), this->Nodelist[i]->getName().toUtf8().constData()) == 0) { - std::shared_ptr result = this->Nodelist[i]; - this->Nodelist.erase(this->Nodelist.begin() + i); // 删除 nid - return result; - } - } - return std::shared_ptr(nullptr); -} - -TaskStatusEnum TaskNode::getStatus() -{ - return this->status; - // return TaskStatusEnum(); -} - -int TaskNode::setStatus(TaskStatusEnum taskstatus) -{ - this->status = taskstatus; - return 0; -} - -void TaskNode::renameNode() -{ - QString newName=QInputDialog::getText(this, u8"重命名", u8"请输入新的名称", QLineEdit::Normal, this->text()); - emit this->renameNode(this->text(), newName); -} - -void TaskNode::deleteNode() -{ - this->FinishTask(); - emit this->deleteNode(this->text()); -} - -void TaskNode::copyNewNode() -{ - - emit this->copyNewNode(this->CopyToNew()); -} - -void TaskNode::ShowContentListContextMenu(QPoint p) -{ - this->ContentListContextMenu->exec(QCursor::pos()); -} - -int TaskNode::ExcuteTask() -{ - this->status = TaskStatusEnum::excuting; - return 0; -} - -int TaskNode::FinishTask() -{ - return 0; -} - -TaskNode* TaskNode::CopyToNew() -{ - return nullptr; -} - -int TaskNode::preView() -{ - return 0; -} - - -int TaskTreeClass::loadXmlFile(QString xmlFilePath) -{ - return 0; -} - -int TaskTreeClass::saveXmlFile() -{ - return 0; -} - diff --git a/src/WBCLFZSystemModule/TaskXml/TaskTreeClass.h b/src/WBCLFZSystemModule/TaskXml/TaskTreeClass.h deleted file mode 100644 index 89ba235..0000000 --- a/src/WBCLFZSystemModule/TaskXml/TaskTreeClass.h +++ /dev/null @@ -1,112 +0,0 @@ -#pragma once -/* -* 所有的功能指针传递 都是使用 共享指针,不手动释放 -* 定义各种任务管理类 -* 任务管理类以树状节点进行保存, -* 树状节点都是一个树,具有完整的任务管理能力 -* 任务按照 制备任务、测量任务、仿真任务 -* 任务基类: -* 1.任务名 -* 2. 任务描述 -* 3. 子任务项 -* 4. 节点类型 -- 文件节点、任务节点、 -* 5. 当前节点操作窗口 -* 仿真任务: -* -* -* -* -***/ - -#ifndef TASKTREECLASS_H -#define TASKTREECLASS_H - -#include "AllHead.h" -#include -#include -#include -#include -#include -#include -#include -#include //rapidxml::file -#include //rapidxml::print -#include // QObject 借助 QOject 中的信号槽机制,完成任务的回调,相当于 事件的劣化版 -#include - -enum TaskStatusEnum { - wait, - success, - fail, - excuting, - finish, -}; - - -// 任务列表 -class TaskNode :public QCheckBox -{ - Q_OBJECT // 每个子类必须使用这个宏 -public: - QString TaskXmlPath; -public: - QMenu* ContentListContextMenu; - QString description; // 描述 - TaskStatusEnum status; - std::vector> Nodelist; -public: - TaskNode(QWidget* parent = nullptr); - ~TaskNode(); -public: - QString getName(); - int setName(QString anme); - QString getTaskName(); - virtual int ExcuteTask(); // 任务执行操作 - virtual int FinishTask(); - virtual TaskNode* CopyToNew(); - - - int loadXmlDocument(QString xmlfilepath, QDomDocument& doc); - int writeXmlDocument(QDomDocument& doc); - virtual int preView(); // 预览信息 - - virtual int loadXmlFile(QString xmlFilePath); // 加载任务文件,必须重写 - virtual int saveXmlFile(); // 保存任务文件,必须重写 - - virtual int addNode(std::shared_ptr n); - virtual std::shared_ptr getNode(int nid); - virtual std::shared_ptr getNode(QString nodename); - virtual std::shared_ptr removeAt(int nid); - virtual std::shared_ptr removeByName(QString nodename); - virtual TaskStatusEnum getStatus(); - virtual int setStatus(TaskStatusEnum taskstatus); - -public slots: - void ShowContentListContextMenu(QPoint p); - void renameNode(); - void deleteNode(); - void copyNewNode(); - -signals: - void renameNode(QString oldname,QString newname); - void deleteNode(QString name); - void copyNewNode(TaskNode* sendernode); -}; - - -/// -/// 任务管理地址 -/// -class TaskTreeClass -{ -public: - QString TaskName; - std::vector tasknodes; -public: - virtual int loadXmlFile(QString xmlFilePath); // 加载任务文件,必须重写 - virtual int saveXmlFile(); // 保存任务文件,必须重写 -}; - - - -#endif \ No newline at end of file diff --git a/src/WBCLFZSystemModule/cpp.hint b/src/WBCLFZSystemModule/cpp.hint deleted file mode 100644 index eaabbfc..0000000 --- a/src/WBCLFZSystemModule/cpp.hint +++ /dev/null @@ -1,4 +0,0 @@ -// 提示文件帮助 Visual Studio IDE 解释 Visual C++ 标识符, -// 如函数和宏的名称。 -// 有关详细信息,请参见 https://go.microsoft.com/fwlink/?linkid=865984 - diff --git a/src/WBCLFZSystemModule/main.cpp b/src/WBCLFZSystemModule/main.cpp deleted file mode 100644 index 4835a5c..0000000 --- a/src/WBCLFZSystemModule/main.cpp +++ /dev/null @@ -1,199 +0,0 @@ -#include "HeaderSort.h" -#include "AllHead.h" -#include "WBCLFZSystemModule.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include "SqliteDBProcess/src/Application.h" -#include "SqliteDBProcess/src/sqlite.h" - - - - -void LoadProgramParams() { - - // 创建QSettings对象,指定配置文件路径 - QSettings settings("config.ini", QSettings::IniFormat); - - QString variable = settings.value("variable", "Default Value").toString(); - qDebug() << "Loaded variable:" << variable; - - // 修改程序变量 - variable = "New Value"; - settings.setValue("variable", variable); - qDebug() << "Updated variable:" << variable; -} - - -void TestOCCT() { - gp_Vec Z_vec(gp_Pnt(0, 0, 0), gp_Pnt(0, 0, 1)); - gp_Vec X_vec(gp_Pnt(0, 0, 0), gp_Pnt(1, 0, 0)); - gp_Vec Y_vec(gp_Pnt(0, 0, 0), gp_Pnt(0, 1, 0)); - Standard_Real rotationAngle = 90; - rotationAngle = rotationAngle * M_PI / 180; - - gp_Trsf fly_Z_trsf; - fly_Z_trsf.SetRotation(gp_Ax1(gp_Pnt(0, 0, 0), X_vec), rotationAngle); // Y --> Z 逆时针为 正 - - qDebug() << QString("Y_vec before:( %1 , %2 , %3 )").arg(Y_vec.X()).arg(Y_vec.Y()).arg(Y_vec.Z()); - Y_vec.Transform(fly_Z_trsf); - qDebug() << QString("Y_vec after:( %1 , %2 , %3 )").arg(Y_vec.X()).arg(Y_vec.Y()).arg(Y_vec.Z()); - - qDebug() << QString("X_vec before:( %1 , %2 , %3 )").arg(X_vec.X()).arg(X_vec.Y()).arg(X_vec.Z()); - X_vec.Transform(fly_Z_trsf); - qDebug() << QString("Y_vec after:( %1 , %2 , %3 )").arg(X_vec.X()).arg(X_vec.Y()).arg(X_vec.Z()); - - qDebug() << QString("Z_vec before:( %1 , %2 , %3 )").arg(Z_vec.X()).arg(Z_vec.Y()).arg(Z_vec.Z()); - Z_vec.Transform(fly_Z_trsf); - qDebug() << QString("Z_vec after:( %1 , %2 , %3 )").arg(Z_vec.X()).arg(Z_vec.Y()).arg(Z_vec.Z()); -} - - -// 自定义消息处理程序 -void LogTextcustomMessageHandler(QtMsgType type, const QMessageLogContext& context, const QString& msg) -{ - - // -------- 日志输出 ---------------------------------------------------------------------------------- - - // 获取应用程序执行文件的路径 - QString exePath = QCoreApplication::applicationFilePath(); - - // 使用QFileInfo获取父目录 - QFileInfo fileInfo(exePath); - QString parentDir = fileInfo.dir().path(); - - // 获取当前日期和时间 - QDateTime currentDateTime = QDateTime::currentDateTime(); - // 格式化日期和时间为字符串,精确到秒 - QString dateTimeString = currentDateTime.toString("yyyyMMdd_hh"); - // 创建文件名 - QString fileName = parentDir + "/logs/" + "log_" + dateTimeString + ".log"; - // 创建一个日志文件 - QFile logFile(fileName); - logFile.open(QIODevice::WriteOnly | QIODevice::Append); - QTextStream textStream(&logFile); - // 输出到控制台 - QTextStream consoleStream(stdout); - - // 写入日志信息 - switch (type) { - case QtDebugMsg: - textStream << "[Debug] ["+ currentDateTime.toString("yyyy-MM-dd hh:mm:ss")+"] "; - consoleStream << "[Debug] [" + currentDateTime.toString("yyyy-MM-dd hh:mm:ss") + "] "; - break; - case QtWarningMsg: - textStream << "[Warning] [" + currentDateTime.toString("yyyy-MM-dd hh:mm:ss") + "] "; - consoleStream << "[Warning] [" + currentDateTime.toString("yyyy-MM-dd hh:mm:ss") + "] "; - break; - case QtCriticalMsg: - textStream << "[Critical] [" + currentDateTime.toString("yyyy-MM-dd hh:mm:sss") + "] "; - consoleStream << "[Critical] [" + currentDateTime.toString("yyyy-MM-dd hh:mm:sss") + "] "; - break; - case QtFatalMsg: - textStream << "[Fatal] [" + currentDateTime.toString("yyyy-MM-dd hh:mm:ss") + "] "; - consoleStream << "[Fatal] [" + currentDateTime.toString("yyyy-MM-dd hh:mm:ss") + "] "; - break; - } - //QByteArray localMsg = msg.toLocal8Bit(); - //const char* file = context.file ? context.file : ""; - //const char* function = context.function ? context.function : ""; - //localMsg = QString("%1 (%2, %3:%4)\n").arg(msg).arg(function).arg(file).arg(context.line).toLocal8Bit(); - consoleStream << msg << Qt::endl; // 输出到控制台 - textStream << msg << Qt::endl;// 设置文本流 - -} - - - -static QString message = QString(); - -void db4sMessageOutput(QtMsgType type, const QMessageLogContext& context, const QString& msg) -{ - QByteArray localMsg = msg.toLocal8Bit(); - - // Emulate the default Qt treatment. This might not work in some OS, like Windows. - fprintf(stderr, "%s\n", localMsg.constData()); - - const char* file = context.file ? context.file : ""; - const char* function = context.function ? context.function : ""; - localMsg = QString("%1 (%2, %3:%4)\n").arg(msg).arg(function).arg(file).arg(context.line).toLocal8Bit(); - - // Log using the SQLite log mechanism, so it gets the same treatment than messages - // reported by SQLite itself. This will allow these messages to be seen in our Log window. - // Error code will be the type - sqlite3_log(static_cast(type), localMsg.constData()); -} - -void boxMessageOutput(QtMsgType, const QMessageLogContext&, const QString& msg) -{ - message += msg + "\n"; -} - - - -int ProcessdBTestmain(int argc, char** argv) -{ - -#ifdef Q_OS_WIN - // In Windows, there is no output to terminal for a graphical application, so we install - // the output to message box, until the main window is shown or the application exits. - qInstallMessageHandler(LogTextcustomMessageHandler); -#endif - - // Create application object. All the initialisation stuff happens in there - Application a(argc, argv); - - // If there has been invocations to the message handler, show it to user in a message box. - if (!message.isEmpty()) { - QMessageBox messageBox; - messageBox.setTextFormat(Qt::RichText); - messageBox.setText("
" + message.toHtmlEscaped() + "
"); - messageBox.exec(); - } - - // Quit application now if user doesn't want to see the UI - if (a.dontShowMainWindow()) - return 0; - - qInstallMessageHandler(LogTextcustomMessageHandler); - - // Run application - return a.exec(); -} - - -int main(int argc, char *argv[]) -{ - - // ProcessdBTestmain(argc, argv); - - QApplication a(argc, argv); - qInstallMessageHandler(LogTextcustomMessageHandler); - TestOCCT(); - // 示例输出 - qDebug() << "Program is init debug log out ..."; - qWarning() << "Program is init waring log out ..."; - qCritical() << "Program is init Critical log out ..."; - - // -------- 测试程序正式执行 ---------------------------------------------------------------------------------- - WBCLFZSystemModule* w=new WBCLFZSystemModule(); // - w->show(); - return a.exec(); - -} - - - - - - - - diff --git a/src/json/CMakeLists.txt b/src/json/CMakeLists.txt index 16b4d37..b77af52 100644 --- a/src/json/CMakeLists.txt +++ b/src/json/CMakeLists.txt @@ -12,7 +12,7 @@ set(CMAKE_INCLUDE_CURRENT_DIR ON) # 源码扫描 #----------------------------------------------------------------------------- file(GLOB _ui "*.ui") -file(GLOB _header "*.h*") +file(GLOB _header "*.hpp") file(GLOB _source "*.cpp") qt5_wrap_ui(_interface ${_ui}) @@ -25,6 +25,12 @@ add_library(json ${_header} ${_source} ) - +list(APPEND _runtimes_libraries +) -target_include_directories(json PRIVATE ${Qwt_INCLUDE_DIRS}) +list(APPEND _depend_library) + +target_link_libraries(json PRIVATE + ${_runtimes_libraries} + ${_depend_library} +) \ No newline at end of file diff --git a/src/qrc/WBCLFZSystemModule.qrc b/src/qrc/WBCLFZSystemModule.qrc index 76db7c6..f0c47a6 100644 --- a/src/qrc/WBCLFZSystemModule.qrc +++ b/src/qrc/WBCLFZSystemModule.qrc @@ -1,91 +1,194 @@ - - PointCloudProcess/images/back.png - PointCloudProcess/images/bottom.png - PointCloudProcess/images/color.png - PointCloudProcess/images/front.png - PointCloudProcess/images/keda.ico - PointCloudProcess/images/left.png - PointCloudProcess/images/lock.png - PointCloudProcess/images/open.png - PointCloudProcess/images/redo.png - PointCloudProcess/images/reset.png - PointCloudProcess/images/right.png - PointCloudProcess/images/rotate270.png - PointCloudProcess/images/undo.png - PointCloudProcess/images/up.png - PointCloudProcess/images/zoomin.png - PointCloudProcess/images/zoomout.png - PointCloudProcess/images/rotate0.png - PointCloudProcess/images/ic-redo.png - PointCloudProcess/images/ic-undo.png - PointCloudProcess/images/files/add.png - PointCloudProcess/images/files/cloud.png - PointCloudProcess/images/files/copy.png - PointCloudProcess/images/files/CSV.png - PointCloudProcess/images/files/cut.png - PointCloudProcess/images/files/log.png - PointCloudProcess/images/files/new1.png - PointCloudProcess/images/files/new2.png - PointCloudProcess/images/files/paste.png - PointCloudProcess/images/files/search.png - PointCloudProcess/images/files/star.png - PointCloudProcess/images/files/txt.png - PointCloudProcess/images/algorithm/binary.png - PointCloudProcess/images/algorithm/chooseMatrix.png - PointCloudProcess/images/algorithm/DASHBOARD.png - PointCloudProcess/images/algorithm/DBSCAN.png - PointCloudProcess/images/algorithm/density.png - PointCloudProcess/images/algorithm/filter.png - PointCloudProcess/images/algorithm/help.png - PointCloudProcess/images/algorithm/Histogram.png - PointCloudProcess/images/algorithm/KMeans.png - PointCloudProcess/images/algorithm/matrix.png - PointCloudProcess/images/algorithm/more.png - PointCloudProcess/images/algorithm/nihe.png - PointCloudProcess/images/algorithm/person.png - PointCloudProcess/images/algorithm/pingjie.png - PointCloudProcess/images/algorithm/transform.png - PointCloudProcess/images/algorithm/tree.png - PointCloudProcess/images/camera.png - PointCloudProcess/images/rotate90.png - PointCloudProcess/images/rotate180.png - PointCloudProcess/images/files/cloud2.png - PointCloudProcess/images/files/pointCloud.png - PointCloudProcess/images/files/snapshot.png - PointCloudProcess/images/algorithm/extract.png - PointCloudProcess/images/seting.png - PointCloudProcess/images/coodinate.png - PointCloudProcess/images/grey.png - PointCloudProcess/images/RGB.png - PointCloudProcess/images/files/bgColor.png - PointCloudProcess/images/1.gif - - - OCCViewer/res/lamp.png - OCCViewer/res/view_axo.png - OCCViewer/res/view_back.png - OCCViewer/res/view_bottom.png - OCCViewer/res/view_comp_off.png - OCCViewer/res/view_comp_on.png - OCCViewer/res/view_fitall.png - OCCViewer/res/view_front.png - OCCViewer/res/view_left.png - OCCViewer/res/view_reset.png - OCCViewer/res/view_top.png - OCCViewer/res/antialiasing.png - OCCViewer/res/raytracing.png - OCCViewer/res/reflections.png - OCCViewer/res/shadows.png - OCCViewer/res/view_right.png - OCCViewer/res/tool_material.png - OCCViewer/res/tool_color.png - OCCViewer/res/tool_delete.png - OCCViewer/res/tool_shading.png - OCCViewer/res/tool_transparency.png - OCCViewer/res/tool_wireframe.png - OCCViewer/res/help.png - OCCViewer/res/cursor_rotate.png - OCCViewer/res/cursor_zoom.png - + + PointCloudProcess/images/back.png + PointCloudProcess/images/bottom.png + PointCloudProcess/images/color.png + PointCloudProcess/images/front.png + PointCloudProcess/images/keda.ico + PointCloudProcess/images/left.png + PointCloudProcess/images/lock.png + PointCloudProcess/images/open.png + PointCloudProcess/images/redo.png + PointCloudProcess/images/reset.png + PointCloudProcess/images/right.png + PointCloudProcess/images/rotate270.png + PointCloudProcess/images/undo.png + PointCloudProcess/images/up.png + PointCloudProcess/images/zoomin.png + PointCloudProcess/images/zoomout.png + PointCloudProcess/images/rotate0.png + PointCloudProcess/images/ic-redo.png + PointCloudProcess/images/ic-undo.png + PointCloudProcess/images/files/add.png + PointCloudProcess/images/files/cloud.png + PointCloudProcess/images/files/copy.png + PointCloudProcess/images/files/CSV.png + PointCloudProcess/images/files/cut.png + PointCloudProcess/images/files/log.png + PointCloudProcess/images/files/new1.png + PointCloudProcess/images/files/new2.png + PointCloudProcess/images/files/paste.png + PointCloudProcess/images/files/search.png + PointCloudProcess/images/files/star.png + PointCloudProcess/images/files/txt.png + PointCloudProcess/images/algorithm/binary.png + PointCloudProcess/images/algorithm/chooseMatrix.png + PointCloudProcess/images/algorithm/DASHBOARD.png + PointCloudProcess/images/algorithm/DBSCAN.png + PointCloudProcess/images/algorithm/density.png + PointCloudProcess/images/algorithm/filter.png + PointCloudProcess/images/algorithm/help.png + PointCloudProcess/images/algorithm/Histogram.png + PointCloudProcess/images/algorithm/KMeans.png + PointCloudProcess/images/algorithm/matrix.png + PointCloudProcess/images/algorithm/more.png + PointCloudProcess/images/algorithm/nihe.png + PointCloudProcess/images/algorithm/person.png + PointCloudProcess/images/algorithm/pingjie.png + PointCloudProcess/images/algorithm/transform.png + PointCloudProcess/images/algorithm/tree.png + PointCloudProcess/images/camera.png + PointCloudProcess/images/rotate90.png + PointCloudProcess/images/rotate180.png + PointCloudProcess/images/files/cloud2.png + PointCloudProcess/images/files/pointCloud.png + PointCloudProcess/images/files/snapshot.png + PointCloudProcess/images/algorithm/extract.png + PointCloudProcess/images/seting.png + PointCloudProcess/images/coodinate.png + PointCloudProcess/images/grey.png + PointCloudProcess/images/RGB.png + PointCloudProcess/images/files/bgColor.png + PointCloudProcess/images/1.gif + + + icons/application_go.png + icons/application_link.png + icons/application_side_list.png + icons/bullet_arrow_bottom.png + icons/bullet_arrow_down.png + icons/bullet_arrow_top.png + icons/bullet_arrow_up.png + icons/cancel.png + icons/chart_curve.png + icons/clear_filters.png + icons/clear_sorting.png + icons/cog.png + icons/cog_go.png + icons/color_swatch.png + icons/comment_block.png + icons/cross.png + icons/database.png + icons/database_add.png + icons/database_go.png + icons/database_link.png + icons/database_refresh.png + icons/database_save.png + icons/document-link.png + icons/document-open.png + icons/edit_cond_formats.png + icons/filter.png + icons/folder.png + icons/folder_user.png + icons/help.png + icons/hourglass.png + icons/icons.qrc + icons/internet-web-browser.png + icons/key.png + icons/layout_sidebar.png + icons/package.png + icons/package_go.png + icons/package_rename.png + icons/package_save.png + icons/page_add.png + icons/page_copy.png + icons/page_copy_sql.png + icons/page_delete.png + icons/page_edit.png + icons/page_find.png + icons/page_foreign_key.png + icons/page_green.png + icons/page_key.png + icons/page_paintbrush.png + icons/page_paste.png + icons/page_save.png + icons/page_white_copy.png + icons/page_white_database.png + icons/page_white_text.png + icons/picture.png + icons/picture_add.png + icons/picture_delete.png + icons/picture_edit.png + icons/picture_save.png + icons/plugin_add.png + icons/plugin_delete.png + icons/printer.png + icons/resultset_first.png + icons/resultset_last.png + icons/resultset_next.png + icons/resultset_previous.png + icons/save_all.png + icons/script.png + icons/script_add.png + icons/script_delete.png + icons/script_edit.png + icons/server_add.png + icons/server_go.png + icons/sqlitebrowser.png + icons/style.png + icons/style_add.png + icons/style_delete.png + icons/style_edit.png + icons/tab.png + icons/tab_add.png + icons/table.png + icons/table_add.png + icons/table_delete.png + icons/table_edit.png + icons/table_row_delete.png + icons/table_row_insert.png + icons/table_save.png + icons/tag_blue.png + icons/tag_blue_add.png + icons/tag_blue_delete.png + icons/tag_blue_edit.png + icons/text_align_center.png + icons/text_align_justify.png + icons/text_align_left.png + icons/text_align_right.png + icons/text_bold.png + icons/text_indent.png + icons/text_italic.png + icons/text_paintbrush.png + icons/text_replace.png + icons/text_underline.png + icons/textfield_delete.png + icons/view-refresh.png + icons/wrench.png + OCCViewer/res/lamp.png + OCCViewer/res/view_axo.png + OCCViewer/res/view_back.png + OCCViewer/res/view_bottom.png + OCCViewer/res/view_comp_off.png + OCCViewer/res/view_comp_on.png + OCCViewer/res/view_fitall.png + OCCViewer/res/view_front.png + OCCViewer/res/view_left.png + OCCViewer/res/view_reset.png + OCCViewer/res/view_top.png + OCCViewer/res/antialiasing.png + OCCViewer/res/raytracing.png + OCCViewer/res/reflections.png + OCCViewer/res/shadows.png + OCCViewer/res/view_right.png + OCCViewer/res/tool_material.png + OCCViewer/res/tool_color.png + OCCViewer/res/tool_delete.png + OCCViewer/res/tool_shading.png + OCCViewer/res/tool_transparency.png + OCCViewer/res/tool_wireframe.png + OCCViewer/res/help.png + OCCViewer/res/cursor_rotate.png + OCCViewer/res/cursor_zoom.png + diff --git a/src/qrc/qianfan.qrc b/src/qrc/qianfan.qrc index f05dcd7..f08edf1 100644 --- a/src/qrc/qianfan.qrc +++ b/src/qrc/qianfan.qrc @@ -1,5 +1,108 @@ + icons/application_go.png + icons/application_link.png + icons/application_side_list.png + icons/bullet_arrow_bottom.png + icons/bullet_arrow_down.png + icons/bullet_arrow_top.png + icons/bullet_arrow_up.png + icons/cancel.png + icons/chart_curve.png + icons/clear_filters.png + icons/clear_sorting.png + icons/cog.png + icons/cog_go.png + icons/color_swatch.png + icons/comment_block.png + icons/cross.png + icons/database.png + icons/database_add.png + icons/database_go.png + icons/database_link.png + icons/database_refresh.png + icons/database_save.png + icons/document-link.png + icons/document-open.png + icons/edit_cond_formats.png + icons/filter.png + icons/folder.png + icons/folder_user.png + icons/help.png + icons/hourglass.png + icons/icons.qrc + icons/internet-web-browser.png + icons/key.png + icons/layout_sidebar.png + icons/package.png + icons/package_go.png + icons/package_rename.png + icons/package_save.png + icons/page_add.png + icons/page_copy.png + icons/page_copy_sql.png + icons/page_delete.png + icons/page_edit.png + icons/page_find.png + icons/page_foreign_key.png + icons/page_green.png + icons/page_key.png + icons/page_paintbrush.png + icons/page_paste.png + icons/page_save.png + icons/page_white_copy.png + icons/page_white_database.png + icons/page_white_text.png + icons/picture.png + icons/picture_add.png + icons/picture_delete.png + icons/picture_edit.png + icons/picture_save.png + icons/plugin_add.png + icons/plugin_delete.png + icons/printer.png + icons/resultset_first.png + icons/resultset_last.png + icons/resultset_next.png + icons/resultset_previous.png + icons/save_all.png + icons/script.png + icons/script_add.png + icons/script_delete.png + icons/script_edit.png + icons/server_add.png + icons/server_go.png + icons/sqlitebrowser.png + icons/style.png + icons/style_add.png + icons/style_delete.png + icons/style_edit.png + icons/tab.png + icons/tab_add.png + icons/table.png + icons/table_add.png + icons/table_delete.png + icons/table_edit.png + icons/table_row_delete.png + icons/table_row_insert.png + icons/table_save.png + icons/tag_blue.png + icons/tag_blue_add.png + icons/tag_blue_delete.png + icons/tag_blue_edit.png + icons/text_align_center.png + icons/text_align_justify.png + icons/text_align_left.png + icons/text_align_right.png + icons/text_bold.png + icons/text_indent.png + icons/text_italic.png + icons/text_paintbrush.png + icons/text_replace.png + icons/text_underline.png + icons/textfield_delete.png + icons/view-refresh.png + icons/wrench.png QUI/main.ico QUI/icon/createNew.png QUI/icon/exportGeometry.png @@ -187,6 +290,111 @@ QUI/post/isocurve.png QUI/post/open.png + + application_go.png + application_link.png + application_side_list.png + bullet_arrow_bottom.png + bullet_arrow_down.png + bullet_arrow_top.png + bullet_arrow_up.png + cancel.png + chart_curve.png + clear_filters.png + clear_sorting.png + cog.png + cog_go.png + color_swatch.png + comment_block.png + cross.png + database.png + database_add.png + database_go.png + database_link.png + database_refresh.png + database_save.png + document-link.png + document-open.png + edit_cond_formats.png + filter.png + folder.png + folder_user.png + Hello.png + help.png + hourglass.png + internet-web-browser.png + key.png + layout_sidebar.png + package.png + package_go.png + package_rename.png + package_save.png + page_add.png + page_copy.png + page_copy_sql.png + page_delete.png + page_edit.png + page_find.png + page_foreign_key.png + page_green.png + page_key.png + page_paintbrush.png + page_paste.png + page_save.png + page_white_copy.png + page_white_database.png + page_white_text.png + picture.png + picture_add.png + picture_delete.png + picture_edit.png + picture_save.png + plugin_add.png + plugin_delete.png + printer.png + resultset_first.png + resultset_last.png + resultset_next.png + resultset_previous.png + save_all.png + script.png + script_add.png + script_delete.png + script_edit.png + server_add.png + server_go.png + sqlitebrowser.png + style.png + style_add.png + style_delete.png + style_edit.png + tab.png + tab_add.png + table.png + table_add.png + table_delete.png + table_edit.png + table_row_delete.png + table_row_insert.png + table_save.png + tag_blue.png + tag_blue_add.png + tag_blue_delete.png + tag_blue_edit.png + text_align_center.png + text_align_justify.png + text_align_left.png + text_align_right.png + text_bold.png + text_indent.png + text_italic.png + text_paintbrush.png + text_replace.png + text_underline.png + textfield_delete.png + view-refresh.png + wrench.png + mesh/delete_face.png mesh/delete_facevert.png @@ -276,4 +484,108 @@ QUI/beauty/tree_item_unchecked.png QUI/beauty/Sticker_Star.png + + database_add.png + database_go.png + database_refresh.png + database_save.png + table_add.png + table_delete.png + table_edit.png + tag_blue_add.png + tag_blue_delete.png + page_edit.png + page_delete.png + page_add.png + page_green.png + table.png + tag_blue.png + view-refresh.png + picture_delete.png + picture.png + picture_add.png + script.png + script_add.png + script_delete.png + wrench.png + help.png + tab_add.png + resultset_next.png + page_save.png + page_white_database.png + plugin_add.png + plugin_delete.png + table_save.png + resultset_last.png + layout_sidebar.png + bullet_arrow_down.png + bullet_arrow_up.png + sqlitebrowser.png + internet-web-browser.png + package.png + package_go.png + page_key.png + key.png + document-open.png + chart_curve.png + cog.png + clear_filters.png + page_copy.png + resultset_previous.png + resultset_first.png + picture_edit.png + script_edit.png + tag_blue_edit.png + folder.png + database.png + cog_go.png + page_paste.png + folder_user.png + server_go.png + page_find.png + cross.png + page_white_copy.png + page_copy_sql.png + text_replace.png + picture_save.png + application_side_list.png + database_link.png + text_indent.png + printer.png + package_save.png + cancel.png + comment_block.png + hourglass.png + table_row_delete.png + table_row_insert.png + textfield_delete.png + filter.png + tab.png + package_rename.png + page_foreign_key.png + save_all.png + page_white_text.png + color_swatch.png + edit_cond_formats.png + clear_sorting.png + bullet_arrow_bottom.png + bullet_arrow_top.png + text_bold.png + text_italic.png + text_underline.png + text_align_center.png + text_align_justify.png + text_align_left.png + text_align_right.png + page_paintbrush.png + text_paintbrush.png + style.png + style_edit.png + style_delete.png + style_add.png + application_link.png + document-link.png + application_go.png + server_add.png +