[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