PCL1.8.0/ Qt5.7.0开发环境配置

配置了几天pcl+vs+qt的开发环境未成功,退而求其次配置了qt+pcl的开发环境,特写下这篇文章备忘,本文参考了以下文章,感谢博主。

https://blog.csdn.net/qq_34719188/article/details/80601642

软件版本一览:PCL1.8.0(MSVC2013) / Qt5.7.0(MSVC2013)

软件版本号安装目录
PCLPCL-1.8.0-AllInOne-msvc2013-win64D:\PCL1.8_MSVC2013
PDB点云文件PCL-1.8.0-AllInOne-msvc2013-win64-pdbD:\PCL1.8_MSVC2013\bin
Qt Creatorqt-opensource-windows-x86-msvc2013_64-5.7.0D:\Qt
WDK10.0.17134.12D:\DebuggingToolsForWindows

一、注意事项

读者安装时最好按照我的安装路径和版本号安装,避免出错,配套软件上传至百度云。
https://pan.baidu.com/s/11bHMmtKGis6iX7hmtJ3X9Q
注意:PCL安装时选择Add PCL to the system Path for all users,默认安装路径为PCL 1.8.0,需要去掉中间的空格,因为Qt无法读取到带空格的安装路径。

PCL安装好后,将PDB点云文件解压,放在D:\PCL1.8_MSVC2013\bin路径下。

二、配置步骤

  1. 将三个软件按照给定安装路径一步步安装,不赘余。注意安装PCL时,会弹出Open Nl的安装,设置他的安装路径为D:\PCL1.8_MSVC2013\3rdParty\OpenNI2。WDK安装时,先点击winsdksetup.exe,只勾选下载Debugging tools for Windows并安装。
    在这里插入图片描述
  2. PCL环境变量配置
    首先打开环境变量设置界面:此电脑->右键属性->高级系统变量->环境变量->系统变量:
    在这里插入图片描述
    在其中新建,添加以下几项。
    在这里插入图片描述
    为防止出错,给出以下几项。

%PCL_ROOT%\3rdParty\FLANN\bin
%PCL_ROOT%\3rdParty\Qhull\bin
%PCL_ROOT%\bin
%PCL_ROOT%\3rdParty\VTK\bin
%PCL_ROOT%\3rdParty\OpenNI2\Tools
%OPENNI2_REDIST64%
%OPENNI2_LIB64%
%OPENNI2_INCLUDE64%

  1. 在 Qt -> 工具 -> 选项 中设置如下


    4.新建一个项目

    全部按照下一步建立项目,点击.pro文件,在里面添加以下内容。
    在这里插入图片描述
    按照自己的路径更改内容。
INCLUDEPATH += D:\PCL1.8_MSVC2013\3rdParty\OpenNI2\Include
INCLUDEPATH += D:\PCL1.8_MSVC2013\include\pcl-1.8
INCLUDEPATH += D:\PCL1.8_MSVC2013\include\pcl-1.8\pcl
INCLUDEPATH += D:\PCL1.8_MSVC2013\3rdParty\Boost\include\boost-1_59
INCLUDEPATH += D:\PCL1.8_MSVC2013\3rdParty\Eigen\eigen3
INCLUDEPATH += D:\PCL1.8_MSVC2013\3rdParty\FLANN\include
INCLUDEPATH += D:\PCL1.8_MSVC2013\3rdParty\Qhull\include
INCLUDEPATH += D:\PCL1.8_MSVC2013\3rdParty\VTK\include\vtk-7.0

CONFIG(debug,debug | release ){
LIBS += D:\PCL1.8_MSVC2013\lib\pcl_apps_debug.lib\
        D:\PCL1.8_MSVC2013\lib\pcl_common_debug.lib\
        D:\PCL1.8_MSVC2013\lib\pcl_features_debug.lib\
        D:\PCL1.8_MSVC2013\lib\pcl_filters_debug.lib\
        D:\PCL1.8_MSVC2013\lib\pcl_io_debug.lib\
        D:\PCL1.8_MSVC2013\lib\pcl_io_ply_debug.lib\
        D:\PCL1.8_MSVC2013\lib\pcl_kdtree_debug.lib\
        D:\PCL1.8_MSVC2013\lib\pcl_keypoints_debug.lib\
        D:\PCL1.8_MSVC2013\lib\pcl_ml_debug.lib\
        D:\PCL1.8_MSVC2013\lib\pcl_octree_debug.lib\
        D:\PCL1.8_MSVC2013\lib\pcl_outofcore_debug.lib\
        D:\PCL1.8_MSVC2013\lib\pcl_people_debug.lib\
        D:\PCL1.8_MSVC2013\lib\pcl_recognition_debug.lib\
        D:\PCL1.8_MSVC2013\lib\pcl_registration_debug.lib\
        D:\PCL1.8_MSVC2013\lib\pcl_sample_consensus_debug.lib\
        D:\PCL1.8_MSVC2013\lib\pcl_search_debug.lib\
        D:\PCL1.8_MSVC2013\lib\pcl_segmentation_debug.lib\
        D:\PCL1.8_MSVC2013\lib\pcl_simulation_debug.lib\
        D:\PCL1.8_MSVC2013\lib\pcl_stereo_debug.lib\
        D:\PCL1.8_MSVC2013\lib\pcl_surface_debug.lib\
        D:\PCL1.8_MSVC2013\lib\pcl_tracking_debug.lib\
        D:\PCL1.8_MSVC2013\lib\pcl_visualization_debug.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_atomic-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_chrono-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_container-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_context-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_coroutine-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_date_time-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_exception-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_filesystem-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_graph-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_iostreams-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_locale-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_log_setup-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_log-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_math_c99f-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_math_c99l-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_math_c99-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_math_tr1f-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_math_tr1l-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_math_tr1-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_mpi-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_prg_exec_monitor-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_program_options-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_random-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_regex-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_serialization-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_signals-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_system-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_test_exec_monitor-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_thread-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_timer-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_unit_test_framework-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_wave-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Boost\lib\libboost_wserialization-vc120-mt-gd-1_59.lib\
        D:\PCL1.8_MSVC2013\3rdParty\FLANN\lib\flann_cpp_s-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\FLANN\lib\flann_s-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\FLANN\lib\flann-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\OpenNI2\Lib\OpenNI2.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Qhull\lib\qhull_p-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Qhull\lib\qhull_r-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Qhull\lib\qhullcpp-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Qhull\lib\qhull-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Qhull\lib\qhullstatic_r-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\Qhull\lib\qhullstatic-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkalglib-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkChartsCore-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkCommonColor-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkCommonComputationalGeometry-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkCommonCore-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkCommonDataModel-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkCommonExecutionModel-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkCommonMath-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkCommonMisc-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkCommonSystem-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkCommonTransforms-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkDICOMParser-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkDomainsChemistry-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkDomainsChemistryOpenGL2-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkexoIIc-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkexpat-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkFiltersAMR-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkFiltersCore-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkFiltersExtraction-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkFiltersFlowPaths-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkFiltersGeneral-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkFiltersGeneric-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkFiltersGeometry-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkFiltersHybrid-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkFiltersHyperTree-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkFiltersImaging-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkFiltersModeling-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkFiltersParallel-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkFiltersParallelImaging-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkFiltersProgrammable-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkFiltersSelection-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkFiltersSMP-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkFiltersSources-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkFiltersStatistics-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkFiltersTexture-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkFiltersVerdict-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkfreetype-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkGeovisCore-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkglew-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkGUISupportQt-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkGUISupportQtSQL-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkhdf5_hl-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkhdf5-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkImagingColor-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkImagingCore-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkImagingFourier-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkImagingGeneral-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkImagingHybrid-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkImagingMath-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkImagingMorphological-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkImagingSources-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkImagingStatistics-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkImagingStencil-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkInfovisCore-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkInfovisLayout-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkInteractionImage-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkInteractionStyle-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkInteractionWidgets-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkIOAMR-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkIOCore-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkIOEnSight-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkIOExodus-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkIOExport-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkIOGeometry-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkIOImage-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkIOImport-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkIOInfovis-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkIOLegacy-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkIOLSDyna-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkIOMINC-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkIOMovie-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkIONetCDF-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkIOParallel-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkIOParallelXML-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkIOPLY-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkIOSQL-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkIOVideo-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkIOXML-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkIOXMLParser-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkjpeg-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkjsoncpp-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtklibxml2-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkmetaio-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkNetCDF_cxx-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkNetCDF-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkoggtheora-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkParallelCore-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkpng-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkproj4-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkRenderingAnnotation-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkRenderingContext2D-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkRenderingContextOpenGL2-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkRenderingCore-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkRenderingFreeType-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkRenderingImage-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkRenderingLabel-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkRenderingLOD-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkRenderingOpenGL2-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkRenderingQt-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkRenderingVolume-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkRenderingVolumeOpenGL2-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtksqlite-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtksys-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtktiff-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkverdict-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkViewsContext2D-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkViewsCore-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkViewsInfovis-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkViewsQt-7.0-gd.lib\
        D:\PCL1.8_MSVC2013\3rdParty\VTK\lib\vtkzlib-7.0-gd.lib
}else{

}

右键项目->执行qmake
5. 验证是否配置成功,在刚建立的项目main.cpp中添加以下代码:

#include <pcl/visualization/cloud_viewer.h>
#include <iostream>
#include <pcl/io/io.h>
#include <pcl/io/pcd_io.h>

int user_data;

void viewerOneOff(pcl::visualization::PCLVisualizer& viewer)
{
    viewer.setBackgroundColor(1.0, 0.5, 1.0);
    pcl::PointXYZ o;
    o.x = 1.0;
    o.y = 0;
    o.z = 0;
    viewer.addSphere(o, 0.25, "sphere", 0);
    std::cout << "i only run once" << std::endl;

}

void viewerPsycho(pcl::visualization::PCLVisualizer& viewer)
{
    static unsigned count = 0;
    std::stringstream ss;
    ss << "Once per viewer loop: " << count++;
    viewer.removeShape("text", 0);
    viewer.addText(ss.str(), 200, 300, "text", 0);

    //FIXME: possible race condition here:
    user_data++;
}

int main()
{
    pcl::PointCloud<pcl::PointXYZRGBA>::Ptr cloud(new pcl::PointCloud<pcl::PointXYZRGBA>);
    pcl::io::loadPCDFile("my_point_cloud.pcd", *cloud);

    pcl::visualization::CloudViewer viewer("Cloud Viewer");



    //blocks until the cloud is actually rendered
    viewer.showCloud(cloud);

    //use the following functions to get access to the underlying more advanced/powerful
    //PCLVisualizer

    //This will only get called once
    viewer.runOnVisualizationThreadOnce(viewerOneOff);

    //This will get called once per visualization iteration
    viewer.runOnVisualizationThread(viewerPsycho);
    while (!viewer.wasStopped())
    {
        //you can also do cool processing here
        //FIXME: Note that this is running in a separate thread from viewerPsycho
        //and you should guard against race conditions yourself...
        user_data++;
    }
    return 0;
}

运行,若输出以下画面,表示配置成功。
在这里插入图片描述

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值