2024-04-07 16:19:33 +00:00
|
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
|
|
# 将点云与 mesh 表达合并,不再单独处理点云
|
|
|
|
|
|
# 加载: 点云-> mesh
|
|
|
|
|
|
# 处理: mesh->点云-> 处理模块 -> mesh
|
|
|
|
|
|
#
|
|
|
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
|
|
# 头文件搜索路径
|
|
|
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
|
|
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)
|
|
|
|
|
|
|
|
|
|
|
|
# qt5
|
|
|
|
|
|
include_directories(C:/Qt/5.15.2/msvc2019_64/include/QtQml)
|
|
|
|
|
|
|
2024-04-11 08:13:53 +00:00
|
|
|
|
# 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)
|
2024-07-02 03:07:44 +00:00
|
|
|
|
# opencv
|
|
|
|
|
|
include_directories(${OpenCV_INCLUDE_DIRS})
|
2024-04-11 08:13:53 +00:00
|
|
|
|
|
|
|
|
|
|
# 内部结构
|
|
|
|
|
|
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)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2024-04-07 16:19:33 +00:00
|
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
|
|
# 链接库
|
|
|
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
|
|
# 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)
|
2024-04-11 08:13:53 +00:00
|
|
|
|
set(CMAKE_AUTOUIC ON)
|
|
|
|
|
|
set(CMAKE_AUTOMOC ON)
|
|
|
|
|
|
set(CMAKE_AUTORCC ON)
|
2024-04-07 16:19:33 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
|
|
# 添加资源文件
|
|
|
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
|
|
set(_qrc "${CMAKE_CURRENT_SOURCE_DIR}/../qrc/qianfan.qrc")
|
|
|
|
|
|
set(_lang "${CMAKE_CURRENT_SOURCE_DIR}/../qrc/translations.qrc")
|
|
|
|
|
|
qt5_add_resources(_resource ${_qrc} ${_lang})
|
|
|
|
|
|
|
|
|
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
|
|
# 源码扫描
|
|
|
|
|
|
#-----------------------------------------------------------------------------
|
2024-04-11 08:13:53 +00:00
|
|
|
|
file(GLOB_RECURSE _ui "*.ui")
|
|
|
|
|
|
file(GLOB_RECURSE _header "*.h" )
|
|
|
|
|
|
file(GLOB_RECURSE _source "*.cpp")
|
2024-04-07 16:19:33 +00:00
|
|
|
|
qt5_wrap_ui(_interface ${_ui})
|
2024-04-11 08:13:53 +00:00
|
|
|
|
qt5_wrap_cpp(MOC_SOURCES ${_header})
|
2024-04-07 16:19:33 +00:00
|
|
|
|
|
2024-04-11 08:13:53 +00:00
|
|
|
|
# 将生成的 MOC 文件添加到源文件列表中
|
|
|
|
|
|
list(APPEND SOURCES ${MOC_SOURCES})
|
2024-04-07 16:19:33 +00:00
|
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
|
|
# 添加动态库目标
|
|
|
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
|
|
add_library(PluginWBFZExchangePlugin
|
|
|
|
|
|
${_resource}
|
|
|
|
|
|
${_interface}
|
|
|
|
|
|
${_header}
|
|
|
|
|
|
${_source}
|
2024-04-11 08:13:53 +00:00
|
|
|
|
${SOURCES}
|
2024-07-02 07:48:59 +00:00
|
|
|
|
../PluginMeshDataExchange/dialogimportmodeldataset.cpp
|
|
|
|
|
|
../PluginMeshDataExchange/dialogimportmodeldataset.h
|
|
|
|
|
|
../PluginMeshDataExchange/dialogimportmodeldataset.ui
|
2024-04-07 16:19:33 +00:00
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
|
|
# 链接库
|
|
|
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
|
|
|
|
|
|
|
|
# pcl
|
|
|
|
|
|
link_directories("C:/PCL/3rdParty/FLANN/lib")
|
|
|
|
|
|
link_directories("C:/VTK/lib")
|
|
|
|
|
|
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 )
|
|
|
|
|
|
|
2024-06-19 11:39:12 +00:00
|
|
|
|
#gdal
|
|
|
|
|
|
find_package(GDAL REQUIRED)
|
|
|
|
|
|
include_directories(${GDAL_INCLUDE_DIRS})
|
|
|
|
|
|
link_directories(${GDAL_LIBRARIES})
|
2024-04-11 08:13:53 +00:00
|
|
|
|
|
2024-04-07 16:19:33 +00:00
|
|
|
|
# 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)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
include_directories(${PCL_INCLUDE_DIRS})
|
|
|
|
|
|
link_directories(${PCL_LIBRARY_DIRS})
|
|
|
|
|
|
add_definitions(${PCL_DEFINITIONS})
|
|
|
|
|
|
|
2024-05-28 00:53:55 +00:00
|
|
|
|
# qwt
|
|
|
|
|
|
include_directories(${Qwt_INCLUDE_DIRS})
|
|
|
|
|
|
link_directories(${Qwt_LIBRARY_DIRS})
|
2024-06-19 11:39:12 +00:00
|
|
|
|
# gdal
|
|
|
|
|
|
include_directories(${GDAL_INCLUDE_DIRS})
|
2024-05-28 00:53:55 +00:00
|
|
|
|
message("qwt dir ${Qwt_INCLUDE_DIRS}")
|
|
|
|
|
|
|
2024-04-07 16:19:33 +00:00
|
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
|
|
# 添加接口声明宏
|
|
|
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
|
|
target_compile_definitions(PluginWBFZExchangePlugin PRIVATE "NOMINMAX") # 禁用vc++ 中的min max 定义,避免与 pcl 的中 std::min,pcl::max 函数冲突
|
|
|
|
|
|
target_compile_definitions(PluginWBFZExchangePlugin PRIVATE "WBFZ_API")
|
2024-04-11 08:13:53 +00:00
|
|
|
|
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)
|
2024-04-07 16:19:33 +00:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2024-04-11 08:13:53 +00:00
|
|
|
|
list(APPEND _depend_library
|
2024-05-28 00:53:55 +00:00
|
|
|
|
PointCloudOperator qcustomplot qhexedit qscintilla2 Common Settings PythonModule DataProperty MeshData Material Geometry BCBase ConfigOptions SelfDefObject ModelData ModuleBase PluginManager GeometryCommand GeometryWidgets IO MainWidgets MainWindow
|
2024-04-11 08:13:53 +00:00
|
|
|
|
)
|
|
|
|
|
|
|
2024-04-07 16:19:33 +00:00
|
|
|
|
|
2024-06-19 11:39:12 +00:00
|
|
|
|
|
2024-04-07 16:19:33 +00:00
|
|
|
|
list(APPEND _runtimes_libraries
|
2024-05-28 00:53:55 +00:00
|
|
|
|
LAMPCAE::CGNS Qt5::Core Qt5::Gui Qt5::Widgets Qt5::Xml LAMPCAE::QWT LAMPCAE::QWTPOLAR
|
2024-04-07 16:19:33 +00:00
|
|
|
|
)
|
|
|
|
|
|
|
2024-04-11 08:13:53 +00:00
|
|
|
|
|
2024-04-07 16:19:33 +00:00
|
|
|
|
list(APPEND _runtimes_libraries
|
2024-04-11 08:13:53 +00:00
|
|
|
|
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
|
2024-04-07 16:19:33 +00:00
|
|
|
|
)
|
|
|
|
|
|
|
2024-04-11 08:13:53 +00:00
|
|
|
|
list(APPEND _runtimes_libraries
|
2024-06-19 11:39:12 +00:00
|
|
|
|
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
|
2024-04-11 08:13:53 +00:00
|
|
|
|
)
|
2024-04-07 16:19:33 +00:00
|
|
|
|
|
|
|
|
|
|
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
|
|
|
|
|
|
)
|
|
|
|
|
|
|
2024-07-02 03:07:44 +00:00
|
|
|
|
message("OpenCV_LIBRARIES ${OpenCV_LIBRARIES}")
|
2024-04-11 08:13:53 +00:00
|
|
|
|
|
|
|
|
|
|
target_include_directories(PluginWBFZExchangePlugin PRIVATE ${Qwt_INCLUDE_DIRS})
|
2024-04-07 16:19:33 +00:00
|
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
|
|
# 链接依赖库
|
|
|
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
|
|
target_link_libraries(PluginWBFZExchangePlugin PRIVATE
|
|
|
|
|
|
${_runtimes_libraries}
|
|
|
|
|
|
${_depend_library}
|
|
|
|
|
|
${PCL_LIBRARIES}
|
2024-07-02 03:07:44 +00:00
|
|
|
|
${OpenCV_LIBRARIES}
|
|
|
|
|
|
${OpenCV_LIBS}
|
|
|
|
|
|
|
2024-04-11 08:13:53 +00:00
|
|
|
|
unofficial::sqlite3::sqlite3
|
|
|
|
|
|
GDAL::GDAL
|
|
|
|
|
|
FFTW3::fftw3
|
|
|
|
|
|
GSL::gsl GSL::gslcblas
|
|
|
|
|
|
|
2024-04-07 16:19:33 +00:00
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
|
|
# 添加依赖关系
|
|
|
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
|
|
add_dependencies(PluginWBFZExchangePlugin ${_depend_library})
|
|
|
|
|
|
|
|
|
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
|
|
# 添加运行时依赖关系
|
|
|
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
|
|
set(LAMPCAE_PluginWBFZExchangePlugin_Runtimes_Libraries ${_runtimes_libraries} PARENT_SCOPE)
|
|
|
|
|
|
|
|
|
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
|
|
# 设置插件的输出目录
|
|
|
|
|
|
#-----------------------------------------------------------------------------
|
|
|
|
|
|
set_target_properties(PluginWBFZExchangePlugin
|
|
|
|
|
|
PROPERTIES
|
|
|
|
|
|
ARCHIVE_OUTPUT_DIRECTORY_RELEASE $<TARGET_FILE_DIR:${PROJECT_NAME}>/plugins
|
|
|
|
|
|
LIBRARY_OUTPUT_DIRECTORY_RELEASE $<TARGET_FILE_DIR:${PROJECT_NAME}>/plugins
|
|
|
|
|
|
RUNTIME_OUTPUT_DIRECTORY_RELEASE $<TARGET_FILE_DIR:${PROJECT_NAME}>/plugins
|
|
|
|
|
|
ARCHIVE_OUTPUT_DIRECTORY_DEBUG $<TARGET_FILE_DIR:${PROJECT_NAME}>/plugins
|
|
|
|
|
|
LIBRARY_OUTPUT_DIRECTORY_DEBUG $<TARGET_FILE_DIR:${PROJECT_NAME}>/plugins
|
|
|
|
|
|
RUNTIME_OUTPUT_DIRECTORY_DEBUG $<TARGET_FILE_DIR:${PROJECT_NAME}>/plugins
|
2024-05-28 00:53:55 +00:00
|
|
|
|
)
|
|
|
|
|
|
|