[packages/pcl] - up to 1.9.1
baggins
baggins at pld-linux.org
Wed May 8 23:33:25 CEST 2019
commit f42dc93cedd09c33e20f5183820e1512ecb1ffee
Author: Jan Rękorajski <baggins at pld-linux.org>
Date: Wed May 8 23:33:07 2019 +0200
- up to 1.9.1
eigen-dependency.patch | 11 --
fix-return-type.patch | 22 ----
pcl-fz_api.patch | 19 ---
pcl-openni.patch | 71 ----------
pcl-tawara.patch | 276 ---------------------------------------
pcl.spec | 128 +++++++++---------
vtk7.patch | 109 ----------------
vtk71.patch | 129 -------------------
vtkOpenGL2.patch | 343 -------------------------------------------------
9 files changed, 65 insertions(+), 1043 deletions(-)
---
diff --git a/pcl.spec b/pcl.spec
index 59da151..2fa9765 100644
--- a/pcl.spec
+++ b/pcl.spec
@@ -10,21 +10,13 @@
Summary: Point Cloud Library - library for point cloud processing
Summary(pl.UTF-8): Point Cloud Library - biblioteka do operacji na chmurze punktów
Name: pcl
-Version: 1.7.2
-Release: 13
+Version: 1.9.1
+Release: 1
License: BSD
Group: Libraries
#Source0Download: http://pointclouds.org/downloads/
Source0: https://github.com/PointCloudLibrary/pcl/archive/%{name}-%{version}.tar.gz
-# Source0-md5: 02c72eb6760fcb1f2e359ad8871b9968
-Patch0: %{name}-fz_api.patch
-Patch1: %{name}-tawara.patch
-Patch2: %{name}-openni.patch
-Patch3: eigen-dependency.patch
-Patch4: vtk7.patch
-Patch5: vtk71.patch
-Patch6: vtkOpenGL2.patch
-Patch7: fix-return-type.patch
+# Source0-md5: 4d4cfb6bf87cc1f08703deeeac1eb6e2
URL: http://pointclouds.org/
BuildRequires: OpenGL-devel
BuildRequires: OpenGL-GLU-devel
@@ -43,6 +35,7 @@ BuildRequires: libpcap-devel
BuildRequires: libpng-devel
BuildRequires: libstdc++-devel
BuildRequires: libusb-devel >= 1.0
+BuildRequires: netcdf-cxx-devel
BuildRequires: qhull-devel
BuildRequires: qt4-build >= 4
BuildRequires: python
@@ -113,14 +106,6 @@ Dokumentacja API oraz wprowadzenie do biblioteki PCL.
%prep
%setup -q -n pcl-pcl-%{version}
-%patch0 -p1
-%patch1 -p1
-%patch2 -p1
-%patch3 -p1
-%patch4 -p1
-%patch5 -p1
-%patch6 -p1
-%patch7 -p1
%build
mkdir build
@@ -160,7 +145,9 @@ rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_bindir}/pcl_compute_hausdorff
%attr(755,root,root) %{_bindir}/pcl_compute_hull
%attr(755,root,root) %{_bindir}/pcl_concatenate_points_pcd
+%attr(755,root,root) %{_bindir}/pcl_converter
%attr(755,root,root) %{_bindir}/pcl_convert_pcd_ascii_binary
+%attr(755,root,root) %{_bindir}/pcl_crf_segmentation
%attr(755,root,root) %{_bindir}/pcl_demean_cloud
%attr(755,root,root) %{_bindir}/pcl_fast_bilateral_filter
%attr(755,root,root) %{_bindir}/pcl_generate
@@ -174,7 +161,9 @@ rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_bindir}/pcl_ndt2d
%attr(755,root,root) %{_bindir}/pcl_ndt3d
%attr(755,root,root) %{_bindir}/pcl_obj2pcd
+%attr(755,root,root) %{_bindir}/pcl_obj2ply
%attr(755,root,root) %{_bindir}/pcl_oni2pcd
+%attr(755,root,root) %{_bindir}/pcl_openni2_viewer
%attr(755,root,root) %{_bindir}/pcl_openni_grabber_depth_example
%attr(755,root,root) %{_bindir}/pcl_openni_grabber_example
%attr(755,root,root) %{_bindir}/pcl_openni_pcd_recorder
@@ -183,6 +172,7 @@ rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_bindir}/pcl_outofcore_viewer
%attr(755,root,root) %{_bindir}/pcl_pcd_change_viewpoint
%attr(755,root,root) %{_bindir}/pcl_pcd_convert_NaN_nan
+%attr(755,root,root) %{_bindir}/pcl_pcd_introduce_nan
%attr(755,root,root) %{_bindir}/pcl_pclzf2pcd
%attr(755,root,root) %{_bindir}/pcl_ply2obj
%attr(755,root,root) %{_bindir}/pcl_ply2ply
@@ -192,7 +182,10 @@ rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_bindir}/pcl_radius_filter
%attr(755,root,root) %{_bindir}/pcl_sac_segmentation_plane
%attr(755,root,root) %{_bindir}/pcl_train_linemod_template
+%attr(755,root,root) %{_bindir}/pcl_train_unary_classifier
+%attr(755,root,root) %{_bindir}/pcl_unary_classifier_segment
%attr(755,root,root) %{_bindir}/pcl_uniform_sampling
+%attr(755,root,root) %{_bindir}/pcl_vlp_viewer
%attr(755,root,root) %{_bindir}/pcl_xyz2pcd
%if %{with vtk}
%attr(755,root,root) %{_bindir}/pcl_add_gaussian_noise
@@ -260,42 +253,46 @@ rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_bindir}/pcl_vtk2ply
%endif
%attr(755,root,root) %{_libdir}/libpcl_common.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libpcl_common.so.1.7
+%attr(755,root,root) %ghost %{_libdir}/libpcl_common.so.1.9
%attr(755,root,root) %{_libdir}/libpcl_features.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libpcl_features.so.1.7
+%attr(755,root,root) %ghost %{_libdir}/libpcl_features.so.1.9
%attr(755,root,root) %{_libdir}/libpcl_filters.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libpcl_filters.so.1.7
+%attr(755,root,root) %ghost %{_libdir}/libpcl_filters.so.1.9
%attr(755,root,root) %{_libdir}/libpcl_io.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libpcl_io.so.1.7
+%attr(755,root,root) %ghost %{_libdir}/libpcl_io.so.1.9
%attr(755,root,root) %{_libdir}/libpcl_io_ply.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libpcl_io_ply.so.1.7
+%attr(755,root,root) %ghost %{_libdir}/libpcl_io_ply.so.1.9
%attr(755,root,root) %{_libdir}/libpcl_kdtree.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libpcl_kdtree.so.1.7
+%attr(755,root,root) %ghost %{_libdir}/libpcl_kdtree.so.1.9
%attr(755,root,root) %{_libdir}/libpcl_keypoints.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libpcl_keypoints.so.1.7
+%attr(755,root,root) %ghost %{_libdir}/libpcl_keypoints.so.1.9
%attr(755,root,root) %{_libdir}/libpcl_octree.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libpcl_octree.so.1.7
+%attr(755,root,root) %ghost %{_libdir}/libpcl_octree.so.1.9
%attr(755,root,root) %{_libdir}/libpcl_outofcore.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libpcl_outofcore.so.1.7
+%attr(755,root,root) %ghost %{_libdir}/libpcl_outofcore.so.1.9
%attr(755,root,root) %{_libdir}/libpcl_recognition.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libpcl_recognition.so.1.7
+%attr(755,root,root) %ghost %{_libdir}/libpcl_recognition.so.1.9
%attr(755,root,root) %{_libdir}/libpcl_registration.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libpcl_registration.so.1.7
+%attr(755,root,root) %ghost %{_libdir}/libpcl_registration.so.1.9
%attr(755,root,root) %{_libdir}/libpcl_sample_consensus.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libpcl_sample_consensus.so.1.7
+%attr(755,root,root) %ghost %{_libdir}/libpcl_sample_consensus.so.1.9
%attr(755,root,root) %{_libdir}/libpcl_search.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libpcl_search.so.1.7
+%attr(755,root,root) %ghost %{_libdir}/libpcl_search.so.1.9
%attr(755,root,root) %{_libdir}/libpcl_segmentation.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libpcl_segmentation.so.1.7
+%attr(755,root,root) %ghost %{_libdir}/libpcl_segmentation.so.1.9
%attr(755,root,root) %{_libdir}/libpcl_surface.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libpcl_surface.so.1.7
+%attr(755,root,root) %ghost %{_libdir}/libpcl_surface.so.1.9
%attr(755,root,root) %{_libdir}/libpcl_tracking.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libpcl_tracking.so.1.7
+%attr(755,root,root) %ghost %{_libdir}/libpcl_tracking.so.1.9
+%attr(755,root,root) %{_libdir}/libpcl_ml.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libpcl_ml.so.1.9
+%attr(755,root,root) %{_libdir}/libpcl_stereo.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libpcl_stereo.so.1.9
%if %{with vtk}
%attr(755,root,root) %{_libdir}/libpcl_people.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libpcl_people.so.1.7
+%attr(755,root,root) %ghost %{_libdir}/libpcl_people.so.1.9
%attr(755,root,root) %{_libdir}/libpcl_visualization.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libpcl_visualization.so.1.7
+%attr(755,root,root) %ghost %{_libdir}/libpcl_visualization.so.1.9
%endif
%files devel
@@ -303,10 +300,11 @@ rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_libdir}/libpcl_common.so
%attr(755,root,root) %{_libdir}/libpcl_features.so
%attr(755,root,root) %{_libdir}/libpcl_filters.so
-%attr(755,root,root) %{_libdir}/libpcl_io.so
%attr(755,root,root) %{_libdir}/libpcl_io_ply.so
+%attr(755,root,root) %{_libdir}/libpcl_io.so
%attr(755,root,root) %{_libdir}/libpcl_kdtree.so
%attr(755,root,root) %{_libdir}/libpcl_keypoints.so
+%attr(755,root,root) %{_libdir}/libpcl_ml.so
%attr(755,root,root) %{_libdir}/libpcl_octree.so
%attr(755,root,root) %{_libdir}/libpcl_outofcore.so
%attr(755,root,root) %{_libdir}/libpcl_recognition.so
@@ -314,41 +312,45 @@ rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_libdir}/libpcl_sample_consensus.so
%attr(755,root,root) %{_libdir}/libpcl_search.so
%attr(755,root,root) %{_libdir}/libpcl_segmentation.so
+%attr(755,root,root) %{_libdir}/libpcl_stereo.so
%attr(755,root,root) %{_libdir}/libpcl_surface.so
%attr(755,root,root) %{_libdir}/libpcl_tracking.so
%if %{with vtk}
%attr(755,root,root) %{_libdir}/libpcl_people.so
%attr(755,root,root) %{_libdir}/libpcl_visualization.so
%endif
-%{_includedir}/pcl-1.7
-%{_pkgconfigdir}/pcl_common-1.7.pc
-%{_pkgconfigdir}/pcl_features-1.7.pc
-%{_pkgconfigdir}/pcl_filters-1.7.pc
-%{_pkgconfigdir}/pcl_geometry-1.7.pc
-%{_pkgconfigdir}/pcl_io-1.7.pc
-%{_pkgconfigdir}/pcl_kdtree-1.7.pc
-%{_pkgconfigdir}/pcl_keypoints-1.7.pc
-%{_pkgconfigdir}/pcl_octree-1.7.pc
-%{_pkgconfigdir}/pcl_outofcore-1.7.pc
-%{_pkgconfigdir}/pcl_recognition-1.7.pc
-%{_pkgconfigdir}/pcl_registration-1.7.pc
-%{_pkgconfigdir}/pcl_sample_consensus-1.7.pc
-%{_pkgconfigdir}/pcl_search-1.7.pc
-%{_pkgconfigdir}/pcl_segmentation-1.7.pc
-%{_pkgconfigdir}/pcl_surface-1.7.pc
-%{_pkgconfigdir}/pcl_tracking-1.7.pc
+%{_includedir}/pcl-1.9
+%{_pkgconfigdir}/pcl_common-1.9.pc
+%{_pkgconfigdir}/pcl_features-1.9.pc
+%{_pkgconfigdir}/pcl_filters-1.9.pc
+%{_pkgconfigdir}/pcl_geometry-1.9.pc
+%{_pkgconfigdir}/pcl_io-1.9.pc
+%{_pkgconfigdir}/pcl_kdtree-1.9.pc
+%{_pkgconfigdir}/pcl_keypoints-1.9.pc
+%{_pkgconfigdir}/pcl_octree-1.9.pc
+%{_pkgconfigdir}/pcl_outofcore-1.9.pc
+%{_pkgconfigdir}/pcl_recognition-1.9.pc
+%{_pkgconfigdir}/pcl_registration-1.9.pc
+%{_pkgconfigdir}/pcl_sample_consensus-1.9.pc
+%{_pkgconfigdir}/pcl_search-1.9.pc
+%{_pkgconfigdir}/pcl_segmentation-1.9.pc
+%{_pkgconfigdir}/pcl_surface-1.9.pc
+%{_pkgconfigdir}/pcl_tracking-1.9.pc
+%{_pkgconfigdir}/pcl_2d-1.9.pc
+%{_pkgconfigdir}/pcl_ml-1.9.pc
+%{_pkgconfigdir}/pcl_stereo-1.9.pc
%if %{with vtk}
-%{_pkgconfigdir}/pcl_people-1.7.pc
-%{_pkgconfigdir}/pcl_visualization-1.7.pc
+%{_pkgconfigdir}/pcl_people-1.9.pc
+%{_pkgconfigdir}/pcl_visualization-1.9.pc
%endif
-%dir %{_datadir}/pcl-1.7
-%{_datadir}/pcl-1.7/PCLConfig*.cmake
+%dir %{_datadir}/pcl-1.9
+%{_datadir}/pcl-1.9/PCLConfig*.cmake
%if %{with apidocs}
%files apidocs
%defattr(644,root,root,755)
-%dir %{_docdir}/pcl-1.7
-%{_docdir}/pcl-1.7/advanced
-%{_docdir}/pcl-1.7/html
-%{_docdir}/pcl-1.7/tutorials
+%dir %{_docdir}/pcl-1.9
+%{_docdir}/pcl-1.9/advanced
+%{_docdir}/pcl-1.9/html
+%{_docdir}/pcl-1.9/tutorials
%endif
diff --git a/eigen-dependency.patch b/eigen-dependency.patch
deleted file mode 100644
index d111b1f..0000000
--- a/eigen-dependency.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- pcl-pcl-1.7.2/common/CMakeLists.txt.orig 2014-09-10 23:22:57.000000000 +0200
-+++ pcl-pcl-1.7.2/common/CMakeLists.txt 2015-11-23 07:51:39.174060606 +0100
-@@ -176,7 +176,7 @@
- include_directories("${CMAKE_CURRENT_SOURCE_DIR}/include")
- PCL_ADD_LIBRARY("${LIB_NAME}" "${SUBSYS_NAME}" ${srcs} ${kissfft_srcs} ${incs} ${common_incs} ${impl_incs} ${ros_incs} ${tools_incs} ${kissfft_incs} ${common_incs_impl} ${range_image_incs} ${range_image_incs_impl})
- #PCL_ADD_LIBRARY("${LIB_NAME}" "${SUBSYS_NAME}" ${srcs} ${incs} ${common_incs} ${impl_incs} ${ros_incs} ${tools_incs} ${common_incs_impl} ${range_image_incs} ${range_image_incs_impl})
-- PCL_MAKE_PKGCONFIG("${LIB_NAME}" "${SUBSYS_NAME}" "${SUBSYS_DESC}" "" ""
-+ PCL_MAKE_PKGCONFIG("${LIB_NAME}" "${SUBSYS_NAME}" "${SUBSYS_DESC}" "" "eigen3"
- "" "" "")
-
- # Install include files
diff --git a/fix-return-type.patch b/fix-return-type.patch
deleted file mode 100644
index 15ebdc3..0000000
--- a/fix-return-type.patch
+++ /dev/null
@@ -1,22 +0,0 @@
---- pcl-pcl-1.7.2/registration/include/pcl/registration/correspondence_estimation_backprojection.h~ 2014-09-10 23:22:57.000000000 +0200
-+++ pcl-pcl-1.7.2/registration/include/pcl/registration/correspondence_estimation_backprojection.h 2017-01-26 23:11:14.970602304 +0100
-@@ -184,7 +184,7 @@
- * cloud for computing correspondences. By default we use k = 10 nearest
- * neighbors.
- */
-- inline void
-+ inline unsigned int
- getKSearch () const { return (k_); }
-
- /** \brief Clone and cast to CorrespondenceEstimationBase */
---- pcl-pcl-1.7.2/registration/include/pcl/registration/correspondence_estimation_normal_shooting.h~ 2014-09-10 23:22:57.000000000 +0200
-+++ pcl-pcl-1.7.2/registration/include/pcl/registration/correspondence_estimation_normal_shooting.h 2017-01-26 23:12:02.468654319 +0100
-@@ -180,7 +180,7 @@
- * cloud for computing correspondences. By default we use k = 10 nearest
- * neighbors.
- */
-- inline void
-+ inline unsigned int
- getKSearch () const { return (k_); }
-
- /** \brief Clone and cast to CorrespondenceEstimationBase */
diff --git a/pcl-fz_api.patch b/pcl-fz_api.patch
deleted file mode 100644
index 0d0ff83..0000000
--- a/pcl-fz_api.patch
+++ /dev/null
@@ -1,19 +0,0 @@
-diff -urN pcl-pcl-1.7.2.org/cmake/Modules/FindFZAPI.cmake pcl-pcl-1.7.2/cmake/Modules/FindFZAPI.cmake
---- pcl-pcl-1.7.2.org/cmake/Modules/FindFZAPI.cmake 2014-09-10 23:22:57.000000000 +0200
-+++ pcl-pcl-1.7.2/cmake/Modules/FindFZAPI.cmake 2014-11-07 15:22:34.406580761 +0100
-@@ -13,7 +13,7 @@
- DOC "Fotonic include directories")
-
- # Find libraries
-- find_library(FZAPI_LIBS fotonic_fz_api
-+ find_library(FZAPI_LIBS fz_api
- HINTS "${FZ_API_DIR}/Release" NO_DEFAULT_PATH
- DOC "Fotonic libraries")
- else()
-@@ -23,4 +23,4 @@
- include(FindPackageHandleStandardArgs)
- find_package_handle_standard_args(FZAPI DEFAULT_MSG
- FZAPI_LIBS FZAPI_INCLUDE_DIR)
--
-\ Brak znaku nowej linii na końcu pliku
-+
diff --git a/pcl-openni.patch b/pcl-openni.patch
deleted file mode 100644
index 924bdbe..0000000
--- a/pcl-openni.patch
+++ /dev/null
@@ -1,71 +0,0 @@
---- pcl-pcl-1.7.2/./PCLConfig.cmake.in~ 2014-09-10 23:22:57.000000000 +0200
-+++ pcl-pcl-1.7.2/./PCLConfig.cmake.in 2014-11-11 11:37:12.494124290 +0100
-@@ -182,13 +182,13 @@ macro(find_openni)
- endif(NOT OPENNI_ROOT AND ("@HAVE_OPENNI@" STREQUAL "ON"))
-
- if(PKG_CONFIG_FOUND)
-- pkg_check_modules(PC_OPENNI openni-dev)
-+ pkg_check_modules(PC_OPENNI libopenni)
- endif(PKG_CONFIG_FOUND)
- find_path(OPENNI_INCLUDE_DIRS XnStatus.h
- HINTS ${PC_OPENNI_INCLUDEDIR} ${PC_OPENNI_INCLUDE_DIRS}
- "${OPENNI_ROOT}" "$ENV{OPENNI_ROOT}"
- PATHS "$ENV{OPEN_NI_INCLUDE}" "${OPENNI_INCLUDE_DIRS_HINT}"
-- PATH_SUFFIXES include/openni Include)
-+ PATH_SUFFIXES include/openni include/ni Include)
- #add a hint so that it can find it without the pkg-config
- set(OPENNI_SUFFIX)
- if(WIN32 AND CMAKE_SIZEOF_VOID_P EQUAL 8)
-@@ -222,7 +222,7 @@ macro(find_openni2)
- endif(WIN32 AND CMAKE_SIZEOF_VOID_P EQUAL 8)
-
- if(PKG_CONFIG_FOUND)
-- pkg_check_modules(PC_OPENNI2 openni2-dev)
-+ pkg_check_modules(PC_OPENNI2 libopenni2)
- endif(PKG_CONFIG_FOUND)
-
- find_path(OPENNI2_INCLUDE_DIRS OpenNI.h
---- pcl-pcl-1.7.2/./cmake/Modules/FindOpenNI.cmake~ 2014-09-10 23:22:57.000000000 +0200
-+++ pcl-pcl-1.7.2/./cmake/Modules/FindOpenNI.cmake 2014-11-11 11:37:58.671931739 +0100
-@@ -35,9 +35,9 @@ if(NOT WIN32)
- endif(NOT WIN32)
-
- if(${CMAKE_VERSION} VERSION_LESS 2.8.2)
-- pkg_check_modules(PC_OPENNI openni-dev)
-+ pkg_check_modules(PC_OPENNI libopenni)
- else()
-- pkg_check_modules(PC_OPENNI QUIET openni-dev)
-+ pkg_check_modules(PC_OPENNI QUIET libopenni)
- endif()
-
- set(OPENNI_DEFINITIONS ${PC_OPENNI_CFLAGS_OTHER})
---- pcl-pcl-1.7.2/./io/CMakeLists.txt~ 2014-09-10 23:22:57.000000000 +0200
-+++ pcl-pcl-1.7.2/./io/CMakeLists.txt 2014-11-11 11:38:42.636351255 +0100
-@@ -329,10 +329,10 @@ if(build)
- set(EXT_DEPS eigen3)
-
- if(OPENNI_FOUND)
-- list(APPEND EXT_DEPS openni-dev)
-+ list(APPEND EXT_DEPS libopenni)
- endif(OPENNI_FOUND)
- if(OPENNI2_FOUND)
-- list(APPEND EXT_DEPS openni2-dev)
-+ list(APPEND EXT_DEPS libopenni2)
- endif(OPENNI2_FOUND)
-
- PCL_MAKE_PKGCONFIG("${LIB_NAME}" "${SUBSYS_NAME}" "${SUBSYS_DESC}"
---- pcl-pcl-1.7.2/./visualization/CMakeLists.txt~ 2014-09-10 23:22:57.000000000 +0200
-+++ pcl-pcl-1.7.2/./visualization/CMakeLists.txt 2014-11-11 11:39:19.057251297 +0100
-@@ -154,10 +154,10 @@ if(build)
-
- set(EXT_DEPS "")
- if(OPENNI_FOUND)
-- list(APPEND EXT_DEPS openni-dev)
-+ list(APPEND EXT_DEPS libopenni)
- endif(OPENNI_FOUND)
- if(OPENNI2_FOUND)
-- list(APPEND EXT_DEPS openni2-dev)
-+ list(APPEND EXT_DEPS libopenni2)
- endif(OPENNI2_FOUND)
- PCL_MAKE_PKGCONFIG("${LIB_NAME}" "${SUBSYS_NAME}" "${SUBSYS_DESC}"
- "${SUBSYS_DEPS}" "${EXT_DEPS}" "" "" "")
diff --git a/pcl-tawara.patch b/pcl-tawara.patch
deleted file mode 100644
index c352860..0000000
--- a/pcl-tawara.patch
+++ /dev/null
@@ -1,276 +0,0 @@
-diff -urN pcl-pcl-1.7.2.org/tools/CMakeLists.txt pcl-pcl-1.7.2/tools/CMakeLists.txt
---- pcl-pcl-1.7.2.org/tools/CMakeLists.txt 2014-09-10 23:22:57.000000000 +0200
-+++ pcl-pcl-1.7.2/tools/CMakeLists.txt 2014-11-07 15:21:20.377848947 +0100
-@@ -253,14 +253,14 @@
- PCL_ADD_EXECUTABLE (pcl_transform_from_viewpoint "${SUBSYS_NAME}" transform_from_viewpoint.cpp)
- target_link_libraries (pcl_transform_from_viewpoint pcl_common pcl_io pcl_registration)
-
-- find_package(tide QUIET)
-- if(Tide_FOUND)
-- include_directories(${Tide_INCLUDE_DIRS})
-- add_definitions(${Tide_DEFINITIONS})
-+ find_package(tawara QUIET)
-+ if(Tawara_FOUND)
-+ include_directories(${Tawara_INCLUDE_DIRS})
-+ add_definitions(${Tawara_DEFINITIONS})
- PCL_ADD_EXECUTABLE(pcl_video "${SUBSYS_NAME}" pcl_video.cpp)
- target_link_libraries(pcl_video pcl_common pcl_io pcl_visualization
-- ${Tide_LIBRARIES})
-- endif(Tide_FOUND)
-+ ${Tawara_LIBRARIES})
-+ endif(Tawara_FOUND)
-
-
- endif (BUILD_tools)
-diff -urN pcl-pcl-1.7.2.org/tools/pcl_video.cpp pcl-pcl-1.7.2/tools/pcl_video.cpp
---- pcl-pcl-1.7.2.org/tools/pcl_video.cpp 2014-09-10 23:22:57.000000000 +0200
-+++ pcl-pcl-1.7.2/tools/pcl_video.cpp 2014-11-07 15:21:20.377848947 +0100
-@@ -36,13 +36,13 @@
-
- #include <iostream>
- #include <string>
--#include <tide/ebml_element.h>
--#include <tide/file_cluster.h>
--#include <tide/segment.h>
--#include <tide/simple_block.h>
--#include <tide/tide_impl.h>
--#include <tide/tracks.h>
--#include <tide/track_entry.h>
-+#include <tawara/ebml_element.h>
-+#include <tawara/file_cluster.h>
-+#include <tawara/segment.h>
-+#include <tawara/simple_block.h>
-+#include <tawara/tawara_impl.h>
-+#include <tawara/tracks.h>
-+#include <tawara/track_entry.h>
- #include <pcl/point_cloud.h>
- #include <pcl/point_types.h>
- #include <pcl/io/openni_grabber.h>
-@@ -74,12 +74,12 @@
- // cluster's timecode measured in the segment's timecode scale.
- bpt::ptime blk_start(bpt::microsec_clock::local_time());
- bpt::time_duration blk_offset = blk_start - cltr_start_;
-- tide::BlockElement::Ptr block(new tide::SimpleBlock(1,
-+ tawara::BlockElement::Ptr block(new tawara::SimpleBlock(1,
- blk_offset.total_microseconds() / 10000));
- // Here the frame data itself is added to the block
- pcl::PCLPointCloud2 blob;
- pcl::toPCLPointCloud2(*cloud, blob);
-- tide::Block::FramePtr frame_ptr(new tide::Block::Frame(blob.data.begin(),
-+ tawara::Block::FramePtr frame_ptr(new tawara::Block::Frame(blob.data.begin(),
- blob.data.end()));
- block->push_back(frame_ptr);
- cluster_->push_back(block);
-@@ -106,7 +106,7 @@
- // Create a new cluster
- cltr_start_ = bpt::microsec_clock::local_time();
- bpt::time_duration cltr_offset = cltr_start_ - seg_start_;
-- cluster_.reset(new tide::FileCluster(
-+ cluster_.reset(new tawara::FileCluster(
- cltr_offset.total_microseconds() / 10000));
- cluster_->write(stream_);
- }
-@@ -115,14 +115,14 @@
- int Run()
- {
- // Write the EBML PCLHeader. This specifies that the file is an EBML
-- // file, and is a Tide document.
-- tide::EBMLElement ebml_el;
-+ // file, and is a Tawara document.
-+ tawara::EBMLElement ebml_el;
- ebml_el.write(stream_);
-
- // Open a new segment in the file. This will write some initial meta-data
- // and place some padding at the start of the file for final meta-data to
- // be written after tracks, clusters, etc. have been written.
-- tide::Segment segment;
-+ tawara::Segment segment;
- segment.write(stream_);
- // Set up the segment information so it can be used while writing tracks
- // and clusters.
-@@ -136,7 +136,7 @@
- segment.info.filename(filename_);
- // The segment's timecode scale is possibly the most important value in the
- // segment meta-data data. Without it, timely playback of frames is not
-- // possible. It has a sensible default (defined in the Tide specification),
-+ // possible. It has a sensible default (defined in the Tawara specification),
- // but here we set it to ten milliseconds for demonstrative purposes.
- segment.info.timecode_scale(10000000);
- // The segment's date should be set. It is the somewhat-awkward value of
-@@ -148,16 +148,16 @@
- segment.info.date(td.total_microseconds() * 1000);
- // Let's give the segment an inspirational title.
- segment.info.title(title_);
-- // It sometimes helps to know what created a Tide file.
-- segment.info.muxing_app("libtide-0.1");
-+ // It sometimes helps to know what created a Tawara file.
-+ segment.info.muxing_app("libtawara-0.1");
- segment.info.writing_app("pcl_video");
-
- // Set up the tracks meta-data and write it to the file.
-- tide::Tracks tracks;
-+ tawara::Tracks tracks;
- // Each track is represented in the Tracks information by a TrackEntry.
- // This specifies such things as the track number, the track's UID and the
- // codec used.
-- tide::TrackEntry::Ptr track(new tide::TrackEntry(1, 1, "pointcloud2"));
-+ tawara::TrackEntry::Ptr track(new tawara::TrackEntry(1, 1, "pointcloud2"));
- track->name("3D video");
- track->codec_name("pcl::PCLPointCloud2");
- // Adding each level 1 element (only the first occurance, in the case of
-@@ -183,7 +183,7 @@
- // seconds being usable.
- // The first cluster will appear at this point in the file, so it is
- // recorded in the segment's index for faster file reading.
-- segment.index.insert(std::make_pair(tide::ids::Cluster,
-+ segment.index.insert(std::make_pair(tawara::ids::Cluster,
- segment.to_segment_offset(stream_.tellp())));
-
- // Set up a callback to get clouds from a grabber and write them to the
-@@ -195,7 +195,7 @@
- // Start the first cluster
- cltr_start_ = bpt::microsec_clock::local_time();
- bpt::time_duration cltr_offset = cltr_start_ - seg_start_;
-- cluster_.reset(new tide::FileCluster(
-+ cluster_.reset(new tawara::FileCluster(
- cltr_offset.total_microseconds() / 10000));
- cluster_->write(stream_);
- last_ = pcl::getTime();
-@@ -224,7 +224,7 @@
- std::string filename_;
- std::string title_;
- std::fstream stream_;
-- tide::FileCluster::Ptr cluster_;
-+ tawara::FileCluster::Ptr cluster_;
- bpt::ptime seg_start_;
- bpt::ptime cltr_start_;
- unsigned int count_;
-@@ -245,30 +245,30 @@
- int Run()
- {
- // Open the file and check for the EBML header. This confirms that the file
-- // is an EBML file, and is a Tide document.
-+ // is an EBML file, and is a Tawara document.
- std::ifstream stream(filename_, std::ios::in);
-- tide::ids::ReadResult id = tide::ids::read(stream);
-- if (id.first != tide::ids::EBML)
-+ tawara::ids::ReadResult id = tawara::ids::read(stream);
-+ if (id.first != tawara::ids::EBML)
- {
- std::cerr << "File does not begin with an EBML header.\n";
- return 1;
- }
-- tide::EBMLElement ebml_el;
-+ tawara::EBMLElement ebml_el;
- ebml_el.read(stream);
-- if (ebml_el.doc_type() != tide::TideDocType)
-+ if (ebml_el.doc_type() != tawara::TawaraDocType)
- {
-- std::cerr << "Specified EBML file is not a Tide document.\n";
-+ std::cerr << "Specified EBML file is not a Tawara document.\n";
- return 1;
- }
-- if (ebml_el.read_version() > tide::TideEBMLVersion)
-+ if (ebml_el.read_version() > tawara::TawaraEBMLVersion)
- {
-- std::cerr << "This Tide document requires read version " <<
-+ std::cerr << "This Tawara document requires read version " <<
- ebml_el.read_version() << ".\n";
- return 1;
- }
-- if (ebml_el.doc_read_version() > tide::TideVersionMajor)
-+ if (ebml_el.doc_read_version() > tawara::TawaraVersionMajor)
- {
-- std::cerr << "This Tide document requires doc read version " <<
-+ std::cerr << "This Tawara document requires doc read version " <<
- ebml_el.read_version() << ".\n";
- return 1;
- }
-@@ -278,13 +278,13 @@
- // and read (or build, if necessary) an index of the level 1 elements. With
- // this index, we will be able to quickly jump to important elements such
- // as the Tracks and the first Cluster.
-- id = tide::ids::read(stream);
-- if (id.first != tide::ids::Segment)
-+ id = tawara::ids::read(stream);
-+ if (id.first != tawara::ids::Segment)
- {
- std::cerr << "Segment element not found\n";
- return 1;
- }
-- tide::Segment segment;
-+ tawara::Segment segment;
- segment.read(stream);
- // The segment's date is stored as the number of nanoseconds since the
- // start of the millenium. Boost::Date_Time is invaluable here.
-@@ -298,18 +298,18 @@
- // one will exist).
- // We can guarantee that there is at least one in the index because
- // otherwise the call to segment.read() would have thrown an error.
-- std::streampos tracks_pos(segment.index.find(tide::ids::Tracks)->second);
-+ std::streampos tracks_pos(segment.index.find(tawara::ids::Tracks)->second);
- stream.seekg(segment.to_stream_offset(tracks_pos));
- // To be sure, we can check it really is a Tracks element, but this is
- // usually not necessary.
-- id = tide::ids::read(stream);
-- if (id.first != tide::ids::Tracks)
-+ id = tawara::ids::read(stream);
-+ if (id.first != tawara::ids::Tracks)
- {
- std::cerr << "Tracks element not at indicated position.\n";
- return 1;
- }
- // Read the tracks
-- tide::Tracks tracks;
-+ tawara::Tracks tracks;
- tracks.read(stream);
- // Now we can introspect the tracks available in the file.
- if (tracks.empty())
-@@ -334,7 +334,7 @@
- // reads blocks from the file on demand. This is usually a better
- // option tham the memory-based cluster when the size of the stored
- // data is large.
-- for (tide::Segment::FileBlockIterator block(segment.blocks_begin_file(stream));
-+ for (tawara::Segment::FileBlockIterator block(segment.blocks_begin_file(stream));
- block != segment.blocks_end_file(stream); ++block)
- {
- bpt::time_duration blk_offset(bpt::microseconds((
-@@ -354,7 +354,7 @@
- // so there is only one frame per block. This is the general
- // case; lacing is typically only used when the frame size is
- // very small to reduce overhead.
-- tide::BlockElement::FramePtr frame_data(*block->begin());
-+ tawara::BlockElement::FramePtr frame_data(*block->begin());
- // Copy the frame data into a serialised cloud structure
- pcl::PCLPointCloud2 blob;
- blob.height = 480;
---- pcl-pcl-1.7.0/tools/pcl_video.cpp.orig 2013-09-20 15:25:35.239248341 +0200
-+++ pcl-pcl-1.7.0/tools/pcl_video.cpp 2013-09-20 19:03:40.298699215 +0200
-@@ -36,6 +36,8 @@
-
- #include <iostream>
- #include <string>
-+#include <boost/uuid/random_generator.hpp>
-+#include <boost/uuid/uuid.hpp>
- #include <tawara/ebml_element.h>
- #include <tawara/file_cluster.h>
- #include <tawara/segment.h>
-@@ -61,7 +63,7 @@
- public:
- Recorder(std::string const& filename, std::string const& title)
- : filename_(filename), title_(title),
-- stream_(filename, std::ios::in|std::ios::out|std::ios::trunc),
-+ stream_(filename.c_str(), std::ios::in|std::ios::out|std::ios::trunc),
- count_(0)
- {
- }
-@@ -248,7 +248,7 @@ class Player
- {
- // Open the file and check for the EBML header. This confirms that the file
- // is an EBML file, and is a Tawara document.
-- std::ifstream stream(filename_, std::ios::in);
-+ std::ifstream stream(filename_.c_str(), std::ios::in);
- tawara::ids::ReadResult id = tawara::ids::read(stream);
- if (id.first != tawara::ids::EBML)
- {
-
diff --git a/vtk7.patch b/vtk7.patch
deleted file mode 100644
index 24ebcf9..0000000
--- a/vtk7.patch
+++ /dev/null
@@ -1,109 +0,0 @@
-diff -ur pcl-pcl-1.7.2/apps/src/render_views_tesselated_sphere.cpp pcl-pcl-1.7.2.vtk7/apps/src/render_views_tesselated_sphere.cpp
---- pcl-pcl-1.7.2/apps/src/render_views_tesselated_sphere.cpp 2014-09-10 23:22:57.000000000 +0200
-+++ pcl-pcl-1.7.2.vtk7/apps/src/render_views_tesselated_sphere.cpp 2017-01-25 07:58:21.891198767 +0100
-@@ -13,7 +13,7 @@
- #include <vtkLoopSubdivisionFilter.h>
- #include <vtkTriangle.h>
- #include <vtkTransform.h>
--#if VTK_MAJOR_VERSION==6 || (VTK_MAJOR_VERSION==5 && VTK_MINOR_VERSION>4)
-+#if VTK_MAJOR_VERSION>=6 || (VTK_MAJOR_VERSION==5 && VTK_MINOR_VERSION>4)
- #include <vtkHardwareSelector.h>
- #include <vtkSelectionNode.h>
- #else
-diff -ur pcl-pcl-1.7.2/visualization/include/pcl/visualization/vtk.h pcl-pcl-1.7.2.vtk7/visualization/include/pcl/visualization/vtk.h
---- pcl-pcl-1.7.2/visualization/include/pcl/visualization/vtk.h 2014-09-10 23:22:57.000000000 +0200
-+++ pcl-pcl-1.7.2.vtk7/visualization/include/pcl/visualization/vtk.h 2017-01-25 07:58:21.891198767 +0100
-@@ -157,7 +157,7 @@
- #endif
- #include <vtkSelection.h>
-
--#if VTK_MAJOR_VERSION==6 || (VTK_MAJOR_VERSION==5 && VTK_MINOR_VERSION>4)
-+#if VTK_MAJOR_VERSION>=6 || (VTK_MAJOR_VERSION==5 && VTK_MINOR_VERSION>4)
- #include <vtkHardwareSelector.h>
- #else
- #include <vtkVisibleCellSelector.h>
-diff -ur pcl-pcl-1.7.2/visualization/src/pcl_visualizer.cpp pcl-pcl-1.7.2.vtk7/visualization/src/pcl_visualizer.cpp
---- pcl-pcl-1.7.2/visualization/src/pcl_visualizer.cpp 2014-09-10 23:22:57.000000000 +0200
-+++ pcl-pcl-1.7.2.vtk7/visualization/src/pcl_visualizer.cpp 2017-01-25 07:58:21.897865243 +0100
-@@ -52,7 +52,7 @@
- #include <vtkMapper.h>
- #include <vtkDataSetMapper.h>
-
--#if VTK_MAJOR_VERSION==6 || (VTK_MAJOR_VERSION==5 && VTK_MINOR_VERSION>4)
-+#if VTK_MAJOR_VERSION>=6 || (VTK_MAJOR_VERSION==5 && VTK_MINOR_VERSION>4)
- #include <vtkHardwareSelector.h>
- #include <vtkSelectionNode.h>
- #else
-diff -ur pcl-pcl-1.7.2/visualization/tools/pcd_viewer.cpp pcl-pcl-1.7.2.vtk7/visualization/tools/pcd_viewer.cpp
---- pcl-pcl-1.7.2/visualization/tools/pcd_viewer.cpp 2014-09-10 23:22:57.000000000 +0200
-+++ pcl-pcl-1.7.2.vtk7/visualization/tools/pcd_viewer.cpp 2017-01-25 07:58:21.897865243 +0100
-@@ -47,7 +47,7 @@
- #include <pcl/visualization/pcl_visualizer.h>
- #include <pcl/visualization/image_viewer.h>
- #include <pcl/visualization/histogram_visualizer.h>
--#if VTK_MAJOR_VERSION==6 || (VTK_MAJOR_VERSION==5 && VTK_MINOR_VERSION>6)
-+#if VTK_MAJOR_VERSION>=6 || (VTK_MAJOR_VERSION==5 && VTK_MINOR_VERSION>6)
- #include <pcl/visualization/pcl_plotter.h>
- #endif
- #include <pcl/visualization/point_picking_event.h>
-@@ -142,7 +142,7 @@
- }
-
- // Global visualizer object
--#if VTK_MAJOR_VERSION==6 || (VTK_MAJOR_VERSION==5 && VTK_MINOR_VERSION>6)
-+#if VTK_MAJOR_VERSION>=6 || (VTK_MAJOR_VERSION==5 && VTK_MINOR_VERSION>6)
- pcl::visualization::PCLPlotter ph_global;
- #endif
- boost::shared_ptr<pcl::visualization::PCLVisualizer> p;
-@@ -196,7 +196,7 @@
- if (!isMultiDimensionalFeatureField (cloud->fields[i]))
- continue;
- PCL_INFO ("Multidimensional field found: %s\n", cloud->fields[i].name.c_str ());
--#if VTK_MAJOR_VERSION==6 || (VTK_MAJOR_VERSION==5 && VTK_MINOR_VERSION>6)
-+#if VTK_MAJOR_VERSION>=6 || (VTK_MAJOR_VERSION==5 && VTK_MINOR_VERSION>6)
- ph_global.addFeatureHistogram (*cloud, cloud->fields[i].name, idx, ss.str ());
- ph_global.renderOnce ();
- #endif
-@@ -326,7 +326,7 @@
- shadings.push_back ("flat");
-
- // Create the PCLVisualizer object
--#if VTK_MAJOR_VERSION==6 || (VTK_MAJOR_VERSION==5 && VTK_MINOR_VERSION>6)
-+#if VTK_MAJOR_VERSION>=6 || (VTK_MAJOR_VERSION==5 && VTK_MINOR_VERSION>6)
- boost::shared_ptr<pcl::visualization::PCLPlotter> ph;
- #endif
- // Using min_p, max_p to set the global Y min/max range for the histogram
-@@ -429,13 +429,13 @@
- {
- cloud_name << argv[p_file_indices.at (i)];
-
--#if VTK_MAJOR_VERSION==6 || (VTK_MAJOR_VERSION==5 && VTK_MINOR_VERSION>6)
-+#if VTK_MAJOR_VERSION>=6 || (VTK_MAJOR_VERSION==5 && VTK_MINOR_VERSION>6)
- if (!ph)
- ph.reset (new pcl::visualization::PCLPlotter);
- #endif
-
- pcl::getMinMax (*cloud, 0, cloud->fields[0].name, min_p, max_p);
--#if VTK_MAJOR_VERSION==6 || (VTK_MAJOR_VERSION==5 && VTK_MINOR_VERSION>6)
-+#if VTK_MAJOR_VERSION>=6 || (VTK_MAJOR_VERSION==5 && VTK_MINOR_VERSION>6)
- ph->addFeatureHistogram (*cloud, cloud->fields[0].name, cloud_name.str ());
- #endif
- print_info ("[done, "); print_value ("%g", tt.toc ()); print_info (" ms : "); print_value ("%d", cloud->fields[0].count); print_info (" points]\n");
-@@ -687,7 +687,7 @@
- bool stopped = false;
- do
- {
--#if VTK_MAJOR_VERSION==6 || (VTK_MAJOR_VERSION==5 && VTK_MINOR_VERSION>6)
-+#if VTK_MAJOR_VERSION>=6 || (VTK_MAJOR_VERSION==5 && VTK_MINOR_VERSION>6)
- if (ph) ph->spinOnce ();
- #endif
-
-@@ -717,7 +717,7 @@
- else
- {
- // If no images, continue
--#if VTK_MAJOR_VERSION==6 || (VTK_MAJOR_VERSION==5 && VTK_MINOR_VERSION>6)
-+#if VTK_MAJOR_VERSION>=6 || (VTK_MAJOR_VERSION==5 && VTK_MINOR_VERSION>6)
- if (ph)
- {
- //print_highlight ("Setting the global Y range for all histograms to: "); print_value ("%f -> %f\n", min_p, max_p);
diff --git a/vtk71.patch b/vtk71.patch
deleted file mode 100644
index a011a1b..0000000
--- a/vtk71.patch
+++ /dev/null
@@ -1,129 +0,0 @@
-From 7884dbd4cbe3053b6f594d4b05e21ea604cb51af Mon Sep 17 00:00:00 2001
-From: v4hn <me at v4hn.de>
-Date: Sat, 3 Dec 2016 13:51:03 +0100
-Subject: [PATCH] compile-time support for VTK7.1
-
-The *TupleValue function family got removed in favor of the *TypedTuple functions.
-
-To preserve backward compatibility with older VTK versions,
-this introduces local macro-overloads for the used functions.
----
- io/include/pcl/io/impl/vtk_lib_io.hpp | 13 +++++++++++++
- io/src/vtk_lib_io.cpp | 7 +++++++
- surface/src/vtk_smoothing/vtk_utils.cpp | 6 ++++++
- .../include/pcl/visualization/impl/pcl_visualizer.hpp | 13 +++++++++++++
- visualization/src/pcl_visualizer.cpp | 7 +++++++
- 5 files changed, 46 insertions(+)
-
-diff --git a/io/include/pcl/io/impl/vtk_lib_io.hpp b/io/include/pcl/io/impl/vtk_lib_io.hpp
-index 695e346..e6c0200 100644
---- a/io/include/pcl/io/impl/vtk_lib_io.hpp
-+++ b/io/include/pcl/io/impl/vtk_lib_io.hpp
-@@ -61,6 +61,13 @@
- #include <vtkStructuredGrid.h>
- #include <vtkVertexGlyphFilter.h>
-
-+// Support for VTK 7.1 upwards
-+#ifdef vtkGenericDataArray_h
-+#define SetTupleValue SetTypedTuple
-+#define InsertNextTupleValue InsertNextTypedTuple
-+#define GetTupleValue GetTypedTuple
-+#endif
-+
- ///////////////////////////////////////////////////////////////////////////////////////////
- template <typename PointT> void
- pcl::io::vtkPolyDataToPointCloud (vtkPolyData* const polydata, pcl::PointCloud<PointT>& cloud)
-@@ -503,5 +510,11 @@ pcl::io::pointCloudTovtkStructuredGrid (const pcl::PointCloud<PointT>& cloud, vt
- }
- }
-
-+#ifdef vtkGenericDataArray_h
-+#undef SetTupleValue
-+#undef InsertNextTupleValue
-+#undef GetTupleValue
-+#endif
-+
- #endif //#ifndef PCL_IO_VTK_IO_H_
-
-diff --git a/io/src/vtk_lib_io.cpp b/io/src/vtk_lib_io.cpp
-index 3e70df0..cc537c1 100644
---- a/io/src/vtk_lib_io.cpp
-+++ b/io/src/vtk_lib_io.cpp
-@@ -46,6 +46,13 @@
- #include <vtkImageShiftScale.h>
- #include <vtkPNGWriter.h>
-
-+// Support for VTK 7.1 upwards
-+#ifdef vtkGenericDataArray_h
-+#define SetTupleValue SetTypedTuple
-+#define InsertNextTupleValue InsertNextTypedTuple
-+#define GetTupleValue GetTypedTuple
-+#endif
-+
- ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
- int
- pcl::io::loadPolygonFile (const std::string &file_name, pcl::PolygonMesh& mesh)
-diff --git a/surface/src/vtk_smoothing/vtk_utils.cpp b/surface/src/vtk_smoothing/vtk_utils.cpp
-index ed8dc77..b8b9863 100644
---- a/surface/src/vtk_smoothing/vtk_utils.cpp
-+++ b/surface/src/vtk_smoothing/vtk_utils.cpp
-@@ -49,6 +49,12 @@
- #include <vtkPointData.h>
- #include <vtkFloatArray.h>
-
-+// Support for VTK 7.1 upwards
-+#ifdef vtkGenericDataArray_h
-+#define SetTupleValue SetTypedTuple
-+#define InsertNextTupleValue InsertNextTypedTuple
-+#define GetTupleValue GetTypedTuple
-+#endif
-
- //////////////////////////////////////////////////////////////////////////////////////////////
- int
-diff --git a/visualization/include/pcl/visualization/impl/pcl_visualizer.hpp b/visualization/include/pcl/visualization/impl/pcl_visualizer.hpp
-index 3706f61..4fb134c 100644
---- a/visualization/include/pcl/visualization/impl/pcl_visualizer.hpp
-+++ b/visualization/include/pcl/visualization/impl/pcl_visualizer.hpp
-@@ -64,6 +64,13 @@
-
- #include <pcl/visualization/common/shapes.h>
-
-+// Support for VTK 7.1 upwards
-+#ifdef vtkGenericDataArray_h
-+#define SetTupleValue SetTypedTuple
-+#define InsertNextTupleValue InsertNextTypedTuple
-+#define GetTupleValue GetTypedTuple
-+#endif
-+
- //////////////////////////////////////////////////////////////////////////////////////////////
- template <typename PointT> bool
- pcl::visualization::PCLVisualizer::addPointCloud (
-@@ -1843,4 +1850,10 @@ pcl::visualization::PCLVisualizer::updatePolygonMesh (
- return (true);
- }
-
-+#ifdef vtkGenericDataArray_h
-+#undef SetTupleValue
-+#undef InsertNextTupleValue
-+#undef GetTupleValue
-+#endif
-+
- #endif
-diff --git a/visualization/src/pcl_visualizer.cpp b/visualization/src/pcl_visualizer.cpp
-index 7c84b75..5b12331 100644
---- a/visualization/src/pcl_visualizer.cpp
-+++ b/visualization/src/pcl_visualizer.cpp
-@@ -104,6 +104,13 @@
- #include <boost/filesystem.hpp>
- #include <pcl/console/parse.h>
-
-+// Support for VTK 7.1 upwards
-+#ifdef vtkGenericDataArray_h
-+#define SetTupleValue SetTypedTuple
-+#define InsertNextTupleValue InsertNextTypedTuple
-+#define GetTupleValue GetTypedTuple
-+#endif
-+
- #if defined(_WIN32)
- // Remove macros defined in Windows.h
- #undef near
diff --git a/vtkOpenGL2.patch b/vtkOpenGL2.patch
deleted file mode 100644
index 169d23e..0000000
--- a/vtkOpenGL2.patch
+++ /dev/null
@@ -1,343 +0,0 @@
-From d0efc67fa0d5f3fb3fb99990a6b2a1967a93c229 Mon Sep 17 00:00:00 2001
-From: Sergey Alexandrov <alexandrov88 at gmail.com>
-Date: Sat, 13 Feb 2016 13:31:54 +0100
-Subject: [PATCH] Add CMake variable and C++ macro
- VTK_RENDERING_BACKEND_OPENGL_VERSION
-
-These can be used at configuration and compilation times to adjust for
-the currently used backend.
----
- CMakeLists.txt | 12 +++++++++++-
- pcl_config.h.in | 4 ++++
- 2 files changed, 15 insertions(+), 1 deletion(-)
-
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 36fc4c9..e5fd763 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -361,7 +361,12 @@ option(WITH_VTK "Build VTK-Visualizations" TRUE)
- if(WITH_VTK AND NOT ANDROID)
- find_package(VTK)
- if(VTK_FOUND)
-- message(STATUS "VTK_MAJOR_VERSION ${VTK_MAJOR_VERSION}")
-+ if(NOT DEFINED VTK_RENDERING_BACKEND)
-+ # On old VTK versions this variable does not exist. In this case it is
-+ # safe to assume OpenGL backend
-+ set(VTK_RENDERING_BACKEND "OpenGL")
-+ endif()
-+ message(STATUS "VTK_MAJOR_VERSION ${VTK_MAJOR_VERSION}, rendering backend: ${VTK_RENDERING_BACKEND}")
- if (PCL_SHARED_LIBS OR
- (NOT (PCL_SHARED_LIBS) AND NOT (VTK_BUILD_SHARED_LIBS)))
- set(VTK_FOUND TRUE)
-@@ -377,6 +382,11 @@ if(WITH_VTK AND NOT ANDROID)
- option (VTK_USE_COCOA "Use Cocoa for VTK render windows" ON)
- MARK_AS_ADVANCED (VTK_USE_COCOA)
- endif (APPLE)
-+ if(${VTK_RENDERING_BACKEND} STREQUAL "OpenGL")
-+ set(VTK_RENDERING_BACKEND_OPENGL_VERSION "1")
-+ elseif(${VTK_RENDERING_BACKEND} STREQUAL "OpenGL2")
-+ set(VTK_RENDERING_BACKEND_OPENGL_VERSION "2")
-+ endif()
- set(HAVE_VTK ON)
- else ()
- set(VTK_FOUND OFF)
-diff --git a/pcl_config.h.in b/pcl_config.h.in
-index e4b10b0..3c25a06 100644
---- a/pcl_config.h.in
-+++ b/pcl_config.h.in
-@@ -71,3 +71,7 @@
- /* Address the cases where on MacOS and OpenGL and GLUT are not frameworks */
- #cmakedefine OPENGL_IS_A_FRAMEWORK
- #cmakedefine GLUT_IS_A_FRAMEWORK
-+
-+/* Version of OpenGL used by VTK as rendering backend */
-+#define VTK_RENDERING_BACKEND_OPENGL_VERSION ${VTK_RENDERING_BACKEND_OPENGL_VERSION}
-+
-From 9cfb00970f7d46f1732149d4c50ba3646f038b6c Mon Sep 17 00:00:00 2001
-From: Sergey Alexandrov <alexandrov88 at gmail.com>
-Date: Thu, 11 Feb 2016 22:19:01 +0100
-Subject: [PATCH] Use vtkTextureUnitManager to query the number of available
- texture units
-
-The new OpenGL2 backend does not have vktOpenGLHardwareSupport class
-which was used before.
----
- visualization/src/pcl_visualizer.cpp | 15 +++++++--------
- 1 file changed, 7 insertions(+), 8 deletions(-)
-
-diff --git a/visualization/src/pcl_visualizer.cpp b/visualization/src/pcl_visualizer.cpp
-index dc91674..007c251 100644
---- a/visualization/src/pcl_visualizer.cpp
-+++ b/visualization/src/pcl_visualizer.cpp
-@@ -84,7 +84,6 @@
- #include <vtkRenderWindowInteractor.h>
- #include <vtkAreaPicker.h>
- #include <vtkXYPlotActor.h>
--#include <vtkOpenGLHardwareSupport.h>
- #include <vtkOpenGLRenderWindow.h>
- #include <vtkJPEGReader.h>
- #include <vtkBMPReader.h>
-@@ -92,6 +91,7 @@
- #include <vtkPNMReader.h>
- #include <vtkPNGReader.h>
- #include <vtkTIFFReader.h>
-+#include <vtkTextureUnitManager.h>
-
- #include <pcl/visualization/common/shapes.h>
- #include <pcl/visualization/pcl_visualizer.h>
-@@ -3223,17 +3223,18 @@ pcl::visualization::PCLVisualizer::addTextureMesh (const pcl::TextureMesh &mesh,
- #endif
-
- vtkSmartPointer<vtkLODActor> actor = vtkSmartPointer<vtkLODActor>::New ();
-- vtkOpenGLHardwareSupport* hardware = vtkOpenGLRenderWindow::SafeDownCast (win_)->GetHardwareSupport ();
-+ vtkTextureUnitManager* tex_manager = vtkOpenGLRenderWindow::SafeDownCast (win_)->GetTextureUnitManager ();
-+ if (!tex_manager)
-+ return (false);
-- bool supported = hardware->GetSupportsMultiTexturing ();
- // Check if hardware support multi texture
-- std::size_t texture_units (hardware->GetNumberOfFixedTextureUnits ());
-- if ((mesh.tex_materials.size () > 1) && supported && (texture_units > 1))
-+ int texture_units = tex_manager->GetNumberOfTextureUnits ();
-+ if ((mesh.tex_materials.size () > 1) && (texture_units > 1))
- {
- if (texture_units < mesh.tex_materials.size ())
- PCL_WARN ("[PCLVisualizer::addTextureMesh] GPU texture units %d < mesh textures %d!\n",
- texture_units, mesh.tex_materials.size ());
- // Load textures
-- std::size_t last_tex_id = std::min (mesh.tex_materials.size (), texture_units);
-+ std::size_t last_tex_id = std::min (static_cast<int> (mesh.tex_materials.size ()), texture_units);
- int tu = vtkProperty::VTK_TEXTURE_UNIT_0;
- std::size_t tex_id = 0;
- while (tex_id < last_tex_id)
-@@ -3279,7 +3278,7 @@ pcl::visualization::PCLVisualizer::addTextureMesh (const pcl::TextureMesh &mesh,
- } // end of multi texturing
- else
- {
-- if (!supported || texture_units < 2)
-+ if ((mesh.tex_materials.size () > 1) && (texture_units < 2))
- PCL_WARN ("[PCLVisualizer::addTextureMesh] Your GPU doesn't support multi texturing. "
- "Will use first one only!\n");
-
-From c50c65b042828cfa18765eef7876f896a40a6d1b Mon Sep 17 00:00:00 2001
-From: Sergey Alexandrov <alexandrov88 at gmail.com>
-Date: Sat, 13 Feb 2016 13:59:47 +0100
-Subject: [PATCH] Conditionally compile code that uses
- vtkVertexBufferObjectMapper
-
-This mapper is a performance optimization that is only needed when
-OpenGL backend is used. The modern OpenGL2 backend uses vertex buffer
-objects transparently for us.
----
- outofcore/src/visualization/outofcore_cloud.cpp | 14 ++++++++++++--
- visualization/CMakeLists.txt | 18 ++++++++++++++----
- visualization/src/interactor_style.cpp | 6 ++++++
- visualization/src/pcl_visualizer.cpp | 15 ++++++++++++++-
- 4 files changed, 46 insertions(+), 7 deletions(-)
-
-diff --git a/outofcore/src/visualization/outofcore_cloud.cpp b/outofcore/src/visualization/outofcore_cloud.cpp
-index eaf490c..b08d30e 100644
---- a/outofcore/src/visualization/outofcore_cloud.cpp
-+++ b/outofcore/src/visualization/outofcore_cloud.cpp
-@@ -21,7 +21,10 @@
-
- // PCL - visualziation
- #include <pcl/visualization/common/common.h>
-+
-+#if VTK_RENDERING_BACKEND_OPENGL_VERSION < 2
- #include <pcl/visualization/vtk/vtkVertexBufferObjectMapper.h>
-+#endif
-
- // VTK
- #include <vtkVersion.h>
-@@ -251,11 +254,18 @@ OutofcoreCloud::render (vtkRenderer* renderer)
- {
-
- vtkSmartPointer<vtkActor> cloud_actor = vtkSmartPointer<vtkActor>::New ();
-- vtkSmartPointer<vtkVertexBufferObjectMapper> mapper = vtkSmartPointer<vtkVertexBufferObjectMapper>::New ();
--
- CloudDataCacheItem *cloud_data_cache_item = &cloud_data_cache.get(pcd_file);
-
-+#if VTK_RENDERING_BACKEND_OPENGL_VERSION < 2
-+ vtkSmartPointer<vtkVertexBufferObjectMapper> mapper = vtkSmartPointer<vtkVertexBufferObjectMapper>::New ();
- mapper->SetInput (cloud_data_cache_item->item);
-+#else
-+ vtkSmartPointer<vtkDataSetMapper> mapper = vtkSmartPointer<vtkDataSetMapper>::New ();
-+ // Usually we choose between SetInput and SetInputData based on VTK version. But OpenGL ≥ 2 automatically
-+ // means VTK version is ≥ 6.3
-+ mapper->SetInputData (cloud_data_cache_item->item);
-+#endif
-+
- cloud_actor->SetMapper (mapper);
- cloud_actor->GetProperty ()->SetColor (0.0, 0.0, 1.0);
- cloud_actor->GetProperty ()->SetPointSize (1);
-diff --git a/visualization/CMakeLists.txt b/visualization/CMakeLists.txt
-index 26bfd7c..940fc8e 100644
---- a/visualization/CMakeLists.txt
-+++ b/visualization/CMakeLists.txt
-@@ -50,8 +50,6 @@ if(build)
- src/common/float_image_utils.cpp
- src/vtk/pcl_image_canvas_source_2d.cpp
- src/vtk/pcl_context_item.cpp
-- src/vtk/vtkVertexBufferObject.cxx
-- src/vtk/vtkVertexBufferObjectMapper.cxx
- src/vtk/vtkRenderWindowInteractorFix.cpp
- )
- if("${VTK_MAJOR_VERSION}.${VTK_MINOR_VERSION}" VERSION_LESS "5.6")
-@@ -67,6 +65,13 @@ if(build)
- )
- endif("${VTK_MAJOR_VERSION}.${VTK_MINOR_VERSION}" VERSION_GREATER "5.6")
-
-+ if(VTK_RENDERING_BACKEND_OPENGL_VERSION VERSION_LESS 2)
-+ list(APPEND srcs
-+ "src/vtk/vtkVertexBufferObject.cxx"
-+ "src/vtk/vtkVertexBufferObjectMapper.cxx"
-+ )
-+ endif()
-+
- set(incs
- "include/pcl/${SUBSYS_NAME}/eigen.h"
- "include/pcl/${SUBSYS_NAME}/boost.h"
-@@ -127,11 +132,16 @@ if(build)
- set(vtk_incs
- "include/pcl/${SUBSYS_NAME}/vtk/pcl_image_canvas_source_2d.h"
- "include/pcl/${SUBSYS_NAME}/vtk/pcl_context_item.h"
-- "include/pcl/${SUBSYS_NAME}/vtk/vtkVertexBufferObject.h"
- "include/pcl/${SUBSYS_NAME}/vtk/vtkRenderWindowInteractorFix.h"
-- "include/pcl/${SUBSYS_NAME}/vtk/vtkVertexBufferObjectMapper.h"
- )
-
-+ if(VTK_RENDERING_BACKEND_OPENGL_VERSION VERSION_LESS 2)
-+ list(APPEND vtk_incs
-+ "include/pcl/${SUBSYS_NAME}/vtk/vtkVertexBufferObject.h"
-+ "include/pcl/${SUBSYS_NAME}/vtk/vtkVertexBufferObjectMapper.h"
-+ )
-+ endif()
-+
- # on apple, a workaround is used for the cocoa render window interactor
- if(APPLE)
- list(APPEND srcs
-diff --git a/visualization/src/interactor_style.cpp b/visualization/src/interactor_style.cpp
-index 9e9fdaf..f443b6b 100644
---- a/visualization/src/interactor_style.cpp
-+++ b/visualization/src/interactor_style.cpp
-@@ -64,7 +64,9 @@
- #include <vtkPointPicker.h>
- #include <vtkAreaPicker.h>
-
-+#if VTK_RENDERING_BACKEND_OPENGL_VERSION < 2
- #include <pcl/visualization/vtk/vtkVertexBufferObjectMapper.h>
-+#endif
-
- #define ORIENT_MODE 0
- #define SELECT_MODE 1
-@@ -660,6 +662,7 @@ pcl::visualization::PCLVisualizerInteractorStyle::OnKeyDown ()
- data->SetPoints (points);
- data->SetVerts (vertices);
- // Modify the mapper
-+#if VTK_RENDERING_BACKEND_OPENGL_VERSION < 2
- if (use_vbos_)
- {
- vtkVertexBufferObjectMapper* mapper = static_cast<vtkVertexBufferObjectMapper*>(act->actor->GetMapper ());
-@@ -668,6 +671,7 @@ pcl::visualization::PCLVisualizerInteractorStyle::OnKeyDown ()
- act->actor->SetMapper (mapper);
- }
- else
-+#endif
- {
- vtkPolyDataMapper* mapper = static_cast<vtkPolyDataMapper*>(act->actor->GetMapper ());
- #if VTK_MAJOR_VERSION < 6
-@@ -704,6 +708,7 @@ pcl::visualization::PCLVisualizerInteractorStyle::OnKeyDown ()
- vtkPolyData *data = static_cast<vtkPolyData*>(act->actor->GetMapper ()->GetInput ());
- data->GetPointData ()->SetScalars (scalars);
- // Modify the mapper
-+#if VTK_RENDERING_BACKEND_OPENGL_VERSION < 2
- if (use_vbos_)
- {
- vtkVertexBufferObjectMapper* mapper = static_cast<vtkVertexBufferObjectMapper*>(act->actor->GetMapper ());
-@@ -714,6 +719,7 @@ pcl::visualization::PCLVisualizerInteractorStyle::OnKeyDown ()
- act->actor->SetMapper (mapper);
- }
- else
-+#endif
- {
- vtkPolyDataMapper* mapper = static_cast<vtkPolyDataMapper*>(act->actor->GetMapper ());
- mapper->SetScalarRange (minmax);
-diff --git a/visualization/src/pcl_visualizer.cpp b/visualization/src/pcl_visualizer.cpp
-index 007c251..40e516c 100644
---- a/visualization/src/pcl_visualizer.cpp
-+++ b/visualization/src/pcl_visualizer.cpp
-@@ -63,9 +63,12 @@
- #include <vtkPointPicker.h>
-
- #include <pcl/visualization/boost.h>
--#include <pcl/visualization/vtk/vtkVertexBufferObjectMapper.h>
- #include <pcl/visualization/vtk/vtkRenderWindowInteractorFix.h>
-
-+#if VTK_RENDERING_BACKEND_OPENGL_VERSION < 2
-+#include <pcl/visualization/vtk/vtkVertexBufferObjectMapper.h>
-+#endif
-+
- #include <vtkPolyLine.h>
- #include <vtkPolyDataMapper.h>
- #include <vtkRenderWindow.h>
-@@ -1079,6 +1082,7 @@ pcl::visualization::PCLVisualizer::createActorFromVTKDataSet (const vtkSmartPoin
- if (!actor)
- actor = vtkSmartPointer<vtkLODActor>::New ();
-
-+#if VTK_RENDERING_BACKEND_OPENGL_VERSION < 2
- if (use_vbos_)
- {
- vtkSmartPointer<vtkVertexBufferObjectMapper> mapper = vtkSmartPointer<vtkVertexBufferObjectMapper>::New ();
-@@ -1111,6 +1115,7 @@ pcl::visualization::PCLVisualizer::createActorFromVTKDataSet (const vtkSmartPoin
- actor->SetMapper (mapper);
- }
- else
-+#endif
- {
- vtkSmartPointer<vtkDataSetMapper> mapper = vtkSmartPointer<vtkDataSetMapper>::New ();
- #if VTK_MAJOR_VERSION < 6
-@@ -1157,6 +1162,7 @@ pcl::visualization::PCLVisualizer::createActorFromVTKDataSet (const vtkSmartPoin
- if (!actor)
- actor = vtkSmartPointer<vtkActor>::New ();
-
-+#if VTK_RENDERING_BACKEND_OPENGL_VERSION < 2
- if (use_vbos_)
- {
- vtkSmartPointer<vtkVertexBufferObjectMapper> mapper = vtkSmartPointer<vtkVertexBufferObjectMapper>::New ();
-@@ -1189,6 +1195,7 @@ pcl::visualization::PCLVisualizer::createActorFromVTKDataSet (const vtkSmartPoin
- actor->SetMapper (mapper);
- }
- else
-+#endif
- {
- vtkSmartPointer<vtkDataSetMapper> mapper = vtkSmartPointer<vtkDataSetMapper>::New ();
- #if VTK_MAJOR_VERSION < 6
-@@ -2771,6 +2778,7 @@ pcl::visualization::PCLVisualizer::updateColorHandlerIndex (const std::string &i
- vtkPolyData *data = static_cast<vtkPolyData*>(am_it->second.actor->GetMapper ()->GetInput ());
- data->GetPointData ()->SetScalars (scalars);
- // Modify the mapper
-+#if VTK_RENDERING_BACKEND_OPENGL_VERSION < 2
- if (use_vbos_)
- {
- vtkVertexBufferObjectMapper* mapper = static_cast<vtkVertexBufferObjectMapper*>(am_it->second.actor->GetMapper ());
-@@ -2785,6 +2793,7 @@ pcl::visualization::PCLVisualizer::updateColorHandlerIndex (const std::string &i
- //style_->setCloudActorMap (cloud_actor_map_);
- }
- else
-+#endif
- {
- vtkPolyDataMapper* mapper = static_cast<vtkPolyDataMapper*>(am_it->second.actor->GetMapper ());
- mapper->SetScalarRange (minmax);
-@@ -4296,8 +4305,12 @@ pcl::visualization::PCLVisualizer::resetStoppedFlag ()
- void
- pcl::visualization::PCLVisualizer::setUseVbos (bool use_vbos)
- {
-+#if VTK_RENDERING_BACKEND_OPENGL_VERSION < 2
- use_vbos_ = use_vbos;
- style_->setUseVbos (use_vbos_);
-+#else
-+ PCL_WARN ("[PCLVisualizer::setUseVbos] Has no effect when OpenGL version is ≥ 2\n");
-+#endif
- }
-
- //////////////////////////////////////////////////////////////////////////////////////////////
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/pcl.git/commitdiff/f42dc93cedd09c33e20f5183820e1512ecb1ffee
More information about the pld-cvs-commit
mailing list