public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
From: Rich Mattes <richmattes@gmail.com>
To: git-commits@fedoraproject.org
Subject: [rpms/pcl] f44: Update to 1.7.0
Date: Thu, 25 Jun 2026 05:49:14 GMT	[thread overview]
Message-ID: <178236655488.1.12212453573959732129.rpms-pcl-e83d2a1b533f@fedoraproject.org> (raw)

            A new commit has been pushed.

            Repo   : rpms/pcl
            Branch : f44
            Commit : e83d2a1b533fb5a74d960f4bd6ec57e989b69c24
            Author : Rich Mattes <richmattes@gmail.com>
            Date   : 2013-08-21T20:56:09-04:00
            Stats  : +1100/-428 in 8 file(s)
            URL    : https://src.fedoraproject.org/rpms/pcl/c/e83d2a1b533fb5a74d960f4bd6ec57e989b69c24?branch=f44

            Log:
            Update to 1.7.0

- Update vtk 6 patch for 1.7.0

---
diff --git a/.gitignore b/.gitignore
index 76d0fe6..8f527ff 100644
--- a/.gitignore
+++ b/.gitignore
@@ -6,3 +6,4 @@
 /PCL-1.4.0-Source.tar.bz2
 /PCL-1.5.1-Source.tar.bz2
 /PCL-1.6.0-Source.tar.bz2
+/pcl-1.7.0.tar.gz

diff --git a/PCL-1.4.0-Source-fedora.patch b/PCL-1.4.0-Source-fedora.patch
deleted file mode 100644
index 1155e9e..0000000
--- a/PCL-1.4.0-Source-fedora.patch
+++ /dev/null
@@ -1,88 +0,0 @@
-diff -up ./PCL-1.6.0-Source/cmake/pcl_targets.cmake.fedora ./PCL-1.6.0-Source/cmake/pcl_targets.cmake
---- ./PCL-1.6.0-Source/cmake/pcl_targets.cmake.fedora	2012-07-17 19:11:32.000000000 -0400
-+++ ./PCL-1.6.0-Source/cmake/pcl_targets.cmake	2012-09-24 21:53:34.066924229 -0400
-@@ -1,5 +1,7 @@
- include(${PROJECT_SOURCE_DIR}/cmake/pcl_utils.cmake)
- 
-+set(PCL_PKGCONFIG_SUFFIX "-${PCL_MAJOR_VERSION}.${PCL_MINOR_VERSION}" CACHE STRING "Suffix to append to pkg-config files")
-+
- ###############################################################################
- # Add an option to build a subsystem or not.
- # _var The name of the variable to store the option in.
-@@ -412,14 +414,14 @@ macro(PCL_MAKE_PKGCONFIG _name _componen
-     LIST_TO_STRING(_ext_deps_str "${_ext_deps}")
-     set(PKG_EXTERNAL_DEPS ${_ext_deps_str})
-     foreach(_dep ${_pcl_deps})
--      set(PKG_EXTERNAL_DEPS "${PKG_EXTERNAL_DEPS} pcl_${_dep}-${PCL_MAJOR_VERSION}.${PCL_MINOR_VERSION}")
-+      set(PKG_EXTERNAL_DEPS "${PKG_EXTERNAL_DEPS} pcl_${_dep}${PCL_PKGCONFIG_SUFFIX}")
-     endforeach(_dep)
-     set(PKG_INTERNAL_DEPS "")
-     foreach(_dep ${_int_deps})
-         set(PKG_INTERNAL_DEPS "${PKG_INTERNAL_DEPS} -l${_dep}")
-     endforeach(_dep)
- 
--    set(_pc_file ${CMAKE_CURRENT_BINARY_DIR}/${_name}-${PCL_MAJOR_VERSION}.${PCL_MINOR_VERSION}.pc)
-+    set(_pc_file ${CMAKE_CURRENT_BINARY_DIR}/${_name}${PCL_PKGCONFIG_SUFFIX}.pc)
-     configure_file(${PROJECT_SOURCE_DIR}/cmake/pkgconfig.cmake.in ${_pc_file}
-         @ONLY)
-     install(FILES ${_pc_file} DESTINATION ${PKGCFG_INSTALL_DIR}
-diff -up ./PCL-1.6.0-Source/io/CMakeLists.txt.fedora ./PCL-1.6.0-Source/io/CMakeLists.txt
---- ./PCL-1.6.0-Source/io/CMakeLists.txt.fedora	2012-07-17 19:11:32.000000000 -0400
-+++ ./PCL-1.6.0-Source/io/CMakeLists.txt	2012-09-24 21:53:34.066924229 -0400
-@@ -139,9 +139,10 @@ if(build)
-     endif(OPENNI_FOUND)
- 
-     set(EXT_DEPS eigen3)
--    if(OPENNI_FOUND)
--      list(APPEND EXT_DEPS openni-dev)
--    endif(OPENNI_FOUND)
-+    # Disable on Fedora, there is no pkg-config file
-+    #if(OPENNI_FOUND)
-+    #  list(APPEND EXT_DEPS openni-dev)
-+    #endif(OPENNI_FOUND)
-     PCL_MAKE_PKGCONFIG(${LIB_NAME} ${SUBSYS_NAME} "${SUBSYS_DESC}"
-       "${SUBSYS_DEPS}" "${EXT_DEPS}" "" "" "")
- 
-diff -up ./PCL-1.6.0-Source/PCLConfig.cmake.in.fedora ./PCL-1.6.0-Source/PCLConfig.cmake.in
---- ./PCL-1.6.0-Source/PCLConfig.cmake.in.fedora	2012-07-17 19:11:32.000000000 -0400
-+++ ./PCL-1.6.0-Source/PCLConfig.cmake.in	2012-09-24 21:53:58.239832655 -0400
-@@ -392,9 +392,13 @@ if(WIN32)
- # PCLConfig.cmake is installed to PCL_ROOT/cmake
-   get_filename_component(PCL_ROOT "${PCL_DIR}" PATH)
- else(WIN32)
--# PCLConfig.cmake is installed to PCL_ROOT/share/pcl-x.y
-+  # PCLConfig.cmake is installed to PCL_ROOT/share/pcl-x.y or PCL_ROOT/lib${LIB_SUFFIX}/cmake/pcl
-   get_filename_component(PCL_ROOT "${PCL_DIR}" PATH)
-   get_filename_component(PCL_ROOT "${PCL_ROOT}" PATH)
-+  if (${PCL_DIR} MATCHES ".*lib.*")
-+    # PCLConfig.cmake is installed to PCL_ROOT/lib${LIB_SUFFIX}/cmake/pcl
-+    get_filename_component(PCL_ROOT "${PCL_ROOT}" PATH)
-+  endif()
- endif(WIN32)
- 
- # check whether PCLConfig.cmake is found into a PCL installation or in a build tree
-@@ -558,7 +562,7 @@ if(NOT "${PCL_LIBRARY_DIRS}" STREQUAL ""
- endif(NOT "${PCL_LIBRARY_DIRS}" STREQUAL "")
- 
- # We need to export march=native for tutorials or user code
--list (APPEND PCL_DEFINITIONS "@SSE_FLAGS@")
-+#list (APPEND PCL_DEFINITIONS "@SSE_FLAGS@")
- 
- if(NOT "${PCL_DEFINITIONS}" STREQUAL "")
-   list(REMOVE_DUPLICATES PCL_DEFINITIONS)
-diff -up ./PCL-1.6.0-Source/visualization/CMakeLists.txt.fedora ./PCL-1.6.0-Source/visualization/CMakeLists.txt
---- ./PCL-1.6.0-Source/visualization/CMakeLists.txt.fedora	2012-07-17 19:11:32.000000000 -0400
-+++ ./PCL-1.6.0-Source/visualization/CMakeLists.txt	2012-09-24 21:53:34.067924266 -0400
-@@ -99,9 +99,9 @@ if(build)
-     endif()
- 
-     set(EXT_DEPS "")
--    if(OPENNI_FOUND)
--      list(APPEND EXT_DEPS openni-dev)
--    endif(OPENNI_FOUND)
-+    #if(OPENNI_FOUND)
-+    #  list(APPEND EXT_DEPS openni-dev)
-+    #endif(OPENNI_FOUND)
-     PCL_MAKE_PKGCONFIG(${LIB_NAME} ${SUBSYS_NAME} "${SUBSYS_DESC}"
-       "${SUBSYS_DEPS}" "${EXT_DEPS}" "" "" "")
- 

diff --git a/pcl-1.6.0-arm.patch b/pcl-1.6.0-arm.patch
deleted file mode 100644
index ca30ff8..0000000
--- a/pcl-1.6.0-arm.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-diff -up ./common/include/sensor_msgs/PointCloud2.h.arm ./common/include/sensor_msgs/PointCloud2.h
---- ./common/include/sensor_msgs/PointCloud2.h.arm	2012-07-17 19:11:32.000000000 -0400
-+++ ./common/include/sensor_msgs/PointCloud2.h	2013-03-22 22:01:11.817684640 -0400
-@@ -15,7 +15,7 @@ namespace sensor_msgs
- #  define PCL_BIG_ENDIAN
- #elif (defined(i386) || defined(__i386__) || defined(__i386) || defined(_M_IX86) || defined(_X86_) || defined(__THW_INTEL__) || defined(__I86__) || defined(__INTEL__)) \
-   || (defined(__amd64__) || defined(__amd64) || defined(__x86_64__) || defined(__x86_64) || defined(_M_X64)) \
--	|| (defined(__ANDROID__))
-+	|| (defined(__ANDROID__) || defined(__arm__) || defined (__aarch64__))
- #  define PCL_LITTLE_ENDIAN
- #else
- #  error
-diff -up ./io/include/pcl/io/ply/byte_order.h.arm ./io/include/pcl/io/ply/byte_order.h
---- ./io/include/pcl/io/ply/byte_order.h.arm	2012-07-17 19:11:32.000000000 -0400
-+++ ./io/include/pcl/io/ply/byte_order.h	2013-03-22 22:01:11.817684640 -0400
-@@ -59,7 +59,7 @@ namespace pcl
- #if (defined (__powerpc) || defined (__powerpc__) || defined (__POWERPC__) || defined (__ppc__) || defined (_M_PPC) || defined (__ARCH_PPC))
- #  define PLY_BIG_ENDIAN
- #elif (defined (i386) || defined (__i386__) || defined (__i386) || defined (_M_IX86) || defined (_X86_) || defined (__THW_INTEL__) || defined (__I86__) || defined (__INTEL__)) \
--  || (defined (__amd64__) || defined (__amd64) || defined (__x86_64__) || defined (__x86_64) || defined (_M_X64) || defined (ANDROID))
-+  || (defined (__amd64__) || defined (__amd64) || defined (__x86_64__) || defined (__x86_64) || defined (_M_X64) || defined (ANDROID) || defined (__arm__) || defined (__aarch64__))
- #  define PLY_LITTLE_ENDIAN
- #else
- #  error

diff --git a/pcl-1.6.0-boost153.patch b/pcl-1.6.0-boost153.patch
deleted file mode 100644
index 575e983..0000000
--- a/pcl-1.6.0-boost153.patch
+++ /dev/null
@@ -1,118 +0,0 @@
-diff -up ./io/src/oni_grabber.cpp.boost153 ./io/src/oni_grabber.cpp
---- ./io/src/oni_grabber.cpp.boost153	2013-02-17 19:27:06.034171888 -0500
-+++ ./io/src/oni_grabber.cpp	2013-02-17 19:27:59.170008472 -0500
-@@ -364,7 +364,7 @@ ONIGrabber::convertToXYZPointCloud(const
-   if (depth_image->getWidth () != depth_width_ || depth_image->getHeight () != depth_height_)
-   {
-     static unsigned buffer_size = 0;
--    static boost::shared_array<unsigned short> depth_buffer (0);
-+    static boost::shared_array<unsigned short> depth_buffer;
- 
-     if (buffer_size < depth_width_ * depth_height_)
-     {
-@@ -404,7 +404,7 @@ pcl::PointCloud<pcl::PointXYZRGB>::Ptr O
-     const boost::shared_ptr<openni_wrapper::DepthImage> &depth_image) const
- {
-   static unsigned rgb_array_size = 0;
--  static boost::shared_array<unsigned char> rgb_array(0);
-+  static boost::shared_array<unsigned char> rgb_array;
-   static unsigned char* rgb_buffer = 0;
- 
-   boost::shared_ptr<pcl::PointCloud<pcl::PointXYZRGB> > cloud(new pcl::PointCloud<pcl::PointXYZRGB> ());
-@@ -424,7 +424,7 @@ pcl::PointCloud<pcl::PointXYZRGB>::Ptr O
-   if (depth_image->getWidth() != depth_width_ || depth_image->getHeight() != depth_height_)
-   {
-     static unsigned buffer_size = 0;
--    static boost::shared_array<unsigned short> depth_buffer(0);
-+    static boost::shared_array<unsigned short> depth_buffer;
- 
-     if (buffer_size < depth_width_ * depth_height_)
-     {
-@@ -488,7 +488,7 @@ pcl::PointCloud<pcl::PointXYZRGBA>::Ptr
-     const boost::shared_ptr<openni_wrapper::DepthImage> &depth_image) const
- {
-   static unsigned rgb_array_size = 0;
--  static boost::shared_array<unsigned char> rgb_array(0);
-+  static boost::shared_array<unsigned char> rgb_array;
-   static unsigned char* rgb_buffer = 0;
- 
-   boost::shared_ptr<pcl::PointCloud<pcl::PointXYZRGBA> > cloud (new pcl::PointCloud<pcl::PointXYZRGBA> ());
-@@ -508,7 +508,7 @@ pcl::PointCloud<pcl::PointXYZRGBA>::Ptr
-   if (depth_image->getWidth() != depth_width_ || depth_image->getHeight() != depth_height_)
-   {
-     static unsigned buffer_size = 0;
--    static boost::shared_array<unsigned short> depth_buffer(0);
-+    static boost::shared_array<unsigned short> depth_buffer;
- 
-     if (buffer_size < depth_width_ * depth_height_)
-     {
-@@ -589,8 +589,8 @@ pcl::PointCloud<pcl::PointXYZI>::Ptr ONI
-   if (depth_image->getWidth() != depth_width_ || depth_image->getHeight() != depth_height_)
-   {
-     static unsigned buffer_size = 0;
--    static boost::shared_array<unsigned short> depth_buffer(0);
--    static boost::shared_array<unsigned short> ir_buffer(0);
-+    static boost::shared_array<unsigned short> depth_buffer;
-+    static boost::shared_array<unsigned short> ir_buffer;
- 
-     if (buffer_size < depth_width_ * depth_height_)
-     {
-diff -up ./io/src/openni_grabber.cpp.boost153 ./io/src/openni_grabber.cpp
---- ./io/src/openni_grabber.cpp.boost153	2012-07-17 19:11:32.000000000 -0400
-+++ ./io/src/openni_grabber.cpp	2013-02-17 18:15:21.002909247 -0500
-@@ -573,7 +573,7 @@ pcl::OpenNIGrabber::convertToXYZPointClo
-   if (depth_image->getWidth() != depth_width_ || depth_image->getHeight () != depth_height_)
-   {
-     static unsigned buffer_size = 0;
--    static boost::shared_array<unsigned short> depth_buffer (0);
-+    static boost::shared_array<unsigned short> depth_buffer;
- 
-     if (buffer_size < depth_width_ * depth_height_)
-     {
-@@ -618,7 +618,7 @@ pcl::OpenNIGrabber::convertToXYZRGBPoint
-                                                const boost::shared_ptr<openni_wrapper::DepthImage> &depth_image) const
- {
-   static unsigned rgb_array_size = 0;
--  static boost::shared_array<unsigned char> rgb_array (0);
-+  static boost::shared_array<unsigned char> rgb_array;
-   static unsigned char* rgb_buffer = 0;
- 
-   boost::shared_ptr<pcl::PointCloud<PointT> > cloud (new pcl::PointCloud<PointT>);
-@@ -638,7 +638,7 @@ pcl::OpenNIGrabber::convertToXYZRGBPoint
-   if (depth_image->getWidth () != depth_width_ || depth_image->getHeight() != depth_height_)
-   {
-     static unsigned buffer_size = 0;
--    static boost::shared_array<unsigned short> depth_buffer (0);
-+    static boost::shared_array<unsigned short> depth_buffer;
- 
-     if (buffer_size < depth_width_ * depth_height_)
-     {
-@@ -735,7 +735,7 @@ pcl::OpenNIGrabber::convertToEigenPointC
-                                               const boost::shared_ptr<openni_wrapper::DepthImage> &depth_image) const
- {
-   static unsigned rgb_array_size = 0;
--  static boost::shared_array<unsigned char> rgb_array (0);
-+  static boost::shared_array<unsigned char> rgb_array;
-   static unsigned char* rgb_buffer = 0;
- 
-   boost::shared_ptr<pcl::PointCloud<Eigen::MatrixXf> > cloud (new pcl::PointCloud<Eigen::MatrixXf>);
-@@ -765,7 +765,7 @@ pcl::OpenNIGrabber::convertToEigenPointC
-   if (depth_image->getWidth () != depth_width_ || depth_image->getHeight() != depth_height_)
-   {
-     static unsigned buffer_size = 0;
--    static boost::shared_array<unsigned short> depth_buffer (0);
-+    static boost::shared_array<unsigned short> depth_buffer;
- 
-     if (buffer_size < depth_width_ * depth_height_)
-     {
-@@ -846,8 +846,8 @@ pcl::OpenNIGrabber::convertToXYZIPointCl
-   if (depth_image->getWidth () != depth_width_ || depth_image->getHeight () != depth_height_)
-   {
-     static unsigned buffer_size = 0;
--    static boost::shared_array<unsigned short> depth_buffer (0);
--    static boost::shared_array<unsigned short> ir_buffer (0);
-+    static boost::shared_array<unsigned short> depth_buffer;
-+    static boost::shared_array<unsigned short> ir_buffer;
- 
-     if (buffer_size < depth_width_ * depth_height_)
-     {

diff --git a/pcl-1.7.0-metslib.patch b/pcl-1.7.0-metslib.patch
new file mode 100644
index 0000000..f120238
--- /dev/null
+++ b/pcl-1.7.0-metslib.patch
@@ -0,0 +1,81 @@
+diff -up ./CMakeLists.txt.metslib ./CMakeLists.txt
+--- ./CMakeLists.txt.metslib	2013-08-22 00:27:46.852171410 +0000
++++ ./CMakeLists.txt	2013-08-22 00:34:44.075844009 +0000
+@@ -14,6 +14,9 @@ string(TOLOWER ${PROJECT_NAME} PROJECT_N
+ ### ---[ Find universal dependencies
+ set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/Modules/" ${CMAKE_MODULE_PATH})
+ 
++# ---[ Include pkgconfig
++include (FindPkgConfig)
++
+ # ---[ Release/Debug specific flags
+ if(CMAKE_BUILD_TYPE STREQUAL "Release" OR CMAKE_BUILD_TYPE STREQUAL "RelWithDebInfo")
+   add_definitions("-DBOOST_DISABLE_ASSERTS -DEIGEN_NO_DEBUG")
+@@ -260,6 +263,14 @@ if (FZAPI_FOUND)
+   include_directories(SYSTEM ${FZAPI_INCLUDE_DIR})
+ endif()
+ 
++# metslib
++if (PKG_CONFIG_FOUND)
++  pkg_check_modules(METSLIB metslib)
++  if (METSLIB_FOUND)
++    set (HAVE_METSLIB ON)
++  endif()
++endif()
++
+ # LibPNG
+ find_package(PNG)
+ if (PNG_FOUND)
+diff -up ./recognition/CMakeLists.txt.metslib ./recognition/CMakeLists.txt
+--- ./recognition/CMakeLists.txt.metslib	2013-08-22 00:25:29.927344682 +0000
++++ ./recognition/CMakeLists.txt	2013-08-22 00:36:27.885019317 +0000
+@@ -102,6 +102,9 @@ if(build)
+ 		    src/implicit_shape_model.cpp
+         )
+         
++    if (HAVE_METSLIB)
++    set(metslib_incs "")
++    else()
+     set(metslib_incs
+         include/pcl/${SUBSYS_NAME}/3rdparty/metslib/abstract-search.hh
+         include/pcl/${SUBSYS_NAME}/3rdparty/metslib/local-search.hh
+@@ -113,9 +116,15 @@ if(build)
+         include/pcl/${SUBSYS_NAME}/3rdparty/metslib/tabu-search.hh
+         include/pcl/${SUBSYS_NAME}/3rdparty/metslib/termination-criteria.hh
+     )
++    endif()
+ 
+     set(LIB_NAME pcl_${SUBSYS_NAME})
+     include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include)
++    if (HAVE_METSLIB)
++      include_directories(${METSLIB_INCLUDE_DIRS})
++    else()
++      include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include/pcl/recognition/3rdparty/)
++    endif()
+     PCL_ADD_LIBRARY(${LIB_NAME} ${SUBSYS_NAME} ${srcs} ${incs} ${impl_incs} ${hv_incs} ${hv_impl_incs} ${cg_incs} ${cg_impl_incs} ${metslib_incs})
+     target_link_libraries(${LIB_NAME} pcl_common pcl_kdtree pcl_octree pcl_search pcl_features pcl_registration pcl_sample_consensus pcl_filters pcl_io)
+     PCL_MAKE_PKGCONFIG(${LIB_NAME} ${SUBSYS_NAME} "${SUBSYS_DESC}" "${SUBSYS_DEPS}" "" "" "" "")
+diff -up ./recognition/include/pcl/recognition/hv/hv_go.h.metslib ./recognition/include/pcl/recognition/hv/hv_go.h
+--- ./recognition/include/pcl/recognition/hv/hv_go.h.metslib	2013-08-22 00:25:02.204772392 +0000
++++ ./recognition/include/pcl/recognition/hv/hv_go.h	2013-08-22 00:25:19.472128846 +0000
+@@ -11,7 +11,7 @@
+ #include <pcl/pcl_macros.h>
+ #include <pcl/recognition/hv/hypotheses_verification.h>
+ #include <pcl/common/common.h>
+-#include "pcl/recognition/3rdparty/metslib/mets.hh"
++#include "metslib/mets.hh"
+ #include <pcl/features/normal_3d.h>
+ #include <boost/graph/graph_traits.hpp>
+ #include <boost/graph/adjacency_list.hpp>
+diff -up ./recognition/include/pcl/recognition/impl/hv/hv_go.hpp.metslib ./recognition/include/pcl/recognition/impl/hv/hv_go.hpp
+--- ./recognition/include/pcl/recognition/impl/hv/hv_go.hpp.metslib	2013-08-22 00:51:52.759313219 +0000
++++ ./recognition/include/pcl/recognition/impl/hv/hv_go.hpp	2013-08-22 00:52:07.656623522 +0000
+@@ -445,7 +445,7 @@ void pcl::GlobalHypothesesVerification<M
+   mets::noimprove_termination_criteria noimprove (max_iterations_);
+   mets::linear_cooling linear_cooling;
+   mets::simulated_annealing<move_manager> sa (model, best_recorder, neigh, noimprove, linear_cooling, initial_temp_, 1e-7, 2);
+-  sa.setApplyAndEvaluate(true);
++  //sa.setApplyAndEvaluate(true);
+ 
+   {
+     pcl::ScopeTime t ("SA search...");

diff --git a/pcl-vtk6.patch b/pcl-vtk6.patch
index 6fd29f3..30ca0c2 100644
--- a/pcl-vtk6.patch
+++ b/pcl-vtk6.patch
@@ -1,7 +1,7 @@
-diff -up PCL-1.6.0-Source/apps/src/render_views_tesselated_sphere.cpp.vtk6 PCL-1.6.0-Source/apps/src/render_views_tesselated_sphere.cpp
---- PCL-1.6.0-Source/apps/src/render_views_tesselated_sphere.cpp.vtk6	2013-07-12 21:05:01.802741920 -0600
-+++ PCL-1.6.0-Source/apps/src/render_views_tesselated_sphere.cpp	2013-07-12 21:05:18.386674970 -0600
-@@ -58,7 +58,7 @@ void pcl::apps::RenderViewsTesselatedSph
+diff -up ./apps/src/render_views_tesselated_sphere.cpp.vtk6 ./apps/src/render_views_tesselated_sphere.cpp
+--- ./apps/src/render_views_tesselated_sphere.cpp.vtk6	2013-07-23 17:21:02.000000000 +0000
++++ ./apps/src/render_views_tesselated_sphere.cpp	2013-08-21 00:45:59.009844777 +0000
+@@ -61,7 +61,7 @@ pcl::apps::RenderViewsTesselatedSphere::
  
    vtkSmartPointer<vtkTransformFilter> trans_filter_center = vtkSmartPointer<vtkTransformFilter>::New ();
    trans_filter_center->SetTransform (trans_center);
@@ -10,10 +10,24 @@ diff -up PCL-1.6.0-Source/apps/src/render_views_tesselated_sphere.cpp.vtk6 PCL-1
    trans_filter_center->Update ();
  
    vtkSmartPointer<vtkPolyDataMapper> mapper = vtkSmartPointer<vtkPolyDataMapper>::New ();
-diff -up PCL-1.6.0-Source/io/src/vtk_lib_io.cpp.vtk6 PCL-1.6.0-Source/io/src/vtk_lib_io.cpp
---- PCL-1.6.0-Source/io/src/vtk_lib_io.cpp.vtk6	2013-07-12 16:23:51.634989994 -0600
-+++ PCL-1.6.0-Source/io/src/vtk_lib_io.cpp	2013-07-12 22:02:27.304018136 -0600
-@@ -168,7 +168,7 @@ pcl::io::savePolygonFileVTK (const std::
+diff -up ./common/CMakeLists.txt.vtk6 ./common/CMakeLists.txt
+diff -up ./io/CMakeLists.txt.vtk6 ./io/CMakeLists.txt
+--- ./io/CMakeLists.txt.vtk6	2013-08-21 01:00:05.542130262 +0000
++++ ./io/CMakeLists.txt	2013-08-21 01:08:03.636174342 +0000
+@@ -94,7 +94,8 @@ if(build)
+             src/vtk_lib_io.cpp
+             src/png_io.cpp
+            )
+-        set(VTK_IO_TARGET_LINK_LIBRARIES vtkCommon vtkWidgets vtkIO vtkImaging vtkHybrid vtkGraphics vtkRendering vtkFiltering vtkVolumeRendering)
++        set(VTK_IO_TARGET_LINK_LIBRARIES vtkCommonCore vtkIOCore vtkIOImage vtkIOLegacy vtkIOPLY vtkImagingCore)
++        #set(VTK_IO_TARGET_LINK_LIBRARIES vtkCommonCore vtkInteractionWidgets vtkIOCore vtkImaging vtkHybrid vtkGraphics vtkRendering vtkFiltering vtkVolumeRendering)
+         # Indicates that we can rely on VTK to be present
+         set(VTK_DEFINES -DPCL_BUILT_WITH_VTK)
+     endif ()
+diff -up ./io/src/vtk_lib_io.cpp.vtk6 ./io/src/vtk_lib_io.cpp
+--- ./io/src/vtk_lib_io.cpp.vtk6	2013-07-23 17:21:02.000000000 +0000
++++ ./io/src/vtk_lib_io.cpp	2013-08-21 00:56:28.418488030 +0000
+@@ -178,7 +178,7 @@ pcl::io::savePolygonFileVTK (const std::
    pcl::io::mesh2vtk (mesh, poly_data);
  
    vtkSmartPointer<vtkPolyDataWriter> poly_writer = vtkSmartPointer<vtkPolyDataWriter>::New ();
@@ -22,7 +36,7 @@ diff -up PCL-1.6.0-Source/io/src/vtk_lib_io.cpp.vtk6 PCL-1.6.0-Source/io/src/vtk
    poly_writer->SetFileName (file_name.c_str ());
    poly_writer->Write ();
  
-@@ -184,7 +184,7 @@ pcl::io::savePolygonFilePLY (const std::
+@@ -194,7 +194,7 @@ pcl::io::savePolygonFilePLY (const std::
    pcl::io::mesh2vtk (mesh, poly_data);
  
    vtkSmartPointer<vtkPLYWriter> poly_writer = vtkSmartPointer<vtkPLYWriter>::New ();
@@ -31,16 +45,19 @@ diff -up PCL-1.6.0-Source/io/src/vtk_lib_io.cpp.vtk6 PCL-1.6.0-Source/io/src/vtk
    poly_writer->SetFileName (file_name.c_str ());
  	poly_writer->SetArrayName ("Colors");
    poly_writer->Write ();
-@@ -201,7 +201,7 @@ pcl::io::savePolygonFileSTL (const std::
-   pcl::io::mesh2vtk (mesh, poly_data);
+@@ -209,9 +209,9 @@ pcl::io::savePolygonFileSTL (const std::
+   vtkSmartPointer<vtkPolyData> poly_data = vtkSmartPointer<vtkPolyData>::New ();
  
+   pcl::io::mesh2vtk (mesh, poly_data);
+-  poly_data->Update ();
++  
    vtkSmartPointer<vtkSTLWriter> poly_writer = vtkSmartPointer<vtkSTLWriter>::New ();
 -  poly_writer->SetInput (poly_data);
 +  poly_writer->SetInputData (poly_data);
    poly_writer->SetFileName (file_name.c_str ());
    poly_writer->Write ();
  
-@@ -399,9 +399,7 @@ pcl::io::saveRangeImagePlanarFilePNG (
+@@ -483,9 +483,7 @@ pcl::io::saveRangeImagePlanarFilePNG (
  {
    vtkSmartPointer<vtkImageData> image = vtkSmartPointer<vtkImageData>::New();
    image->SetDimensions(range_image.width, range_image.height, 1);
@@ -51,9 +68,82 @@ diff -up PCL-1.6.0-Source/io/src/vtk_lib_io.cpp.vtk6 PCL-1.6.0-Source/io/src/vtk
  
    int* dims = image->GetDimensions();
  
-diff -up PCL-1.6.0-Source/surface/src/vtk_smoothing/vtk_mesh_smoothing_laplacian.cpp.vtk6 PCL-1.6.0-Source/surface/src/vtk_smoothing/vtk_mesh_smoothing_laplacian.cpp
---- PCL-1.6.0-Source/surface/src/vtk_smoothing/vtk_mesh_smoothing_laplacian.cpp.vtk6	2012-07-17 17:11:32.000000000 -0600
-+++ PCL-1.6.0-Source/surface/src/vtk_smoothing/vtk_mesh_smoothing_laplacian.cpp	2013-07-12 20:54:09.427824692 -0600
+@@ -504,7 +502,7 @@ pcl::io::saveRangeImagePlanarFilePNG (
+ 
+   vtkSmartPointer<vtkImageShiftScale> shiftScaleFilter = vtkSmartPointer<vtkImageShiftScale>::New();
+   shiftScaleFilter->SetOutputScalarTypeToUnsignedChar();
+-  shiftScaleFilter->SetInputConnection(image->GetProducerPort());
++  shiftScaleFilter->SetInputData(image);
+   shiftScaleFilter->SetShift(-1.0f * image->GetScalarRange()[0]); // brings the lower bound to 0
+   shiftScaleFilter->SetScale(newRange/oldRange);
+   shiftScaleFilter->Update();
+diff -up ./outofcore/include/pcl/outofcore/visualization/axes.h.vtk6 ./outofcore/include/pcl/outofcore/visualization/axes.h
+--- ./outofcore/include/pcl/outofcore/visualization/axes.h.vtk6	2013-08-21 03:00:40.617165806 +0000
++++ ./outofcore/include/pcl/outofcore/visualization/axes.h	2013-08-21 03:01:25.741106196 +0000
+@@ -42,17 +42,17 @@ public:
+     axes_colors->InsertNextValue (1.0);
+ 
+     vtkSmartPointer<vtkPolyData> axes_data = axes_->GetOutput ();
+-    axes_data->Update ();
++    axes_->Update ();
+     axes_data->GetPointData ()->SetScalars (axes_colors);
+ 
+     vtkSmartPointer<vtkTubeFilter> axes_tubes = vtkSmartPointer<vtkTubeFilter>::New ();
+-    axes_tubes->SetInput (axes_data);
++    axes_tubes->SetInputData (axes_data);
+     axes_tubes->SetRadius (axes_->GetScaleFactor () / 100.0);
+     axes_tubes->SetNumberOfSides (6);
+ 
+     vtkSmartPointer<vtkPolyDataMapper> axes_mapper = vtkSmartPointer<vtkPolyDataMapper>::New ();
+     axes_mapper->SetScalarModeToUsePointData ();
+-    axes_mapper->SetInput (axes_tubes->GetOutput ());
++    axes_mapper->SetInputData (axes_tubes->GetOutput ());
+ 
+     axes_actor_ = vtkSmartPointer<vtkActor>::New ();
+     axes_actor_->GetProperty ()->SetLighting (false);
+diff -up ./outofcore/src/visualization/outofcore_cloud.cpp.vtk6 ./outofcore/src/visualization/outofcore_cloud.cpp
+--- ./outofcore/src/visualization/outofcore_cloud.cpp.vtk6	2013-08-21 03:02:35.847575422 +0000
++++ ./outofcore/src/visualization/outofcore_cloud.cpp	2013-08-21 03:02:50.185875912 +0000
+@@ -159,10 +159,10 @@ OutofcoreCloud::updateVoxelData ()
+     double y = voxel_centers[i].y;
+     double z = voxel_centers[i].z;
+ 
+-    voxel_data->AddInput (getVtkCube (x - s, x + s, y - s, y + s, z - s, z + s));
++    voxel_data->AddInputData (getVtkCube (x - s, x + s, y - s, y + s, z - s, z + s));
+   }
+ 
+-  voxel_mapper->SetInput (voxel_data->GetOutput ());
++  voxel_mapper->SetInputData (voxel_data->GetOutput ());
+ 
+   voxel_actor_->SetMapper (voxel_mapper);
+   voxel_actor_->GetProperty ()->SetRepresentationToWireframe ();
+diff -up ./surface/CMakeLists.txt.vtk6 ./surface/CMakeLists.txt
+--- ./surface/CMakeLists.txt.vtk6	2013-08-21 11:46:59.239250137 +0000
++++ ./surface/CMakeLists.txt	2013-08-21 11:58:58.245855578 +0000
+@@ -44,7 +44,7 @@ if(build)
+             src/vtk_smoothing/vtk_mesh_quadric_decimation.cpp
+             src/vtk_smoothing/vtk_mesh_smoothing_laplacian.cpp
+             src/vtk_smoothing/vtk_mesh_smoothing_windowed_sinc.cpp)
+-        set(VTK_SMOOTHING_TARGET_LINK_LIBRARIES vtkCommon vtkWidgets vtkGraphics)
++        set(VTK_SMOOTHING_TARGET_LINK_LIBRARIES vtkCommonCore vtkFiltersModeling)
+     endif()
+     
+     SET(BUILD_surface_on_nurbs 0 CACHE BOOL "Fitting NURBS to point-clouds using openNURBS" )
+diff -up ./surface/src/vtk_smoothing/vtk_mesh_quadric_decimation.cpp.vtk6 ./surface/src/vtk_smoothing/vtk_mesh_quadric_decimation.cpp
+--- ./surface/src/vtk_smoothing/vtk_mesh_quadric_decimation.cpp.vtk6	2013-08-21 11:44:17.076092636 +0000
++++ ./surface/src/vtk_smoothing/vtk_mesh_quadric_decimation.cpp	2013-08-21 11:44:31.965381729 +0000
+@@ -59,7 +59,7 @@ pcl::MeshQuadricDecimationVTK::performPr
+   // Apply the VTK algorithm
+   vtkSmartPointer<vtkQuadricDecimation> vtk_quadric_decimation_filter = vtkSmartPointer<vtkQuadricDecimation>::New();
+   vtk_quadric_decimation_filter->SetTargetReduction (target_reduction_factor_);
+-  vtk_quadric_decimation_filter->SetInput (vtk_polygons_);
++  vtk_quadric_decimation_filter->SetInputData (vtk_polygons_);
+   vtk_quadric_decimation_filter->Update ();
+ 
+   vtk_polygons_ = vtk_quadric_decimation_filter->GetOutput ();
+diff -up ./surface/src/vtk_smoothing/vtk_mesh_smoothing_laplacian.cpp.vtk6 ./surface/src/vtk_smoothing/vtk_mesh_smoothing_laplacian.cpp
+--- ./surface/src/vtk_smoothing/vtk_mesh_smoothing_laplacian.cpp.vtk6	2013-07-23 17:21:02.000000000 +0000
++++ ./surface/src/vtk_smoothing/vtk_mesh_smoothing_laplacian.cpp	2013-08-21 00:45:59.009844777 +0000
 @@ -51,7 +51,7 @@ pcl::MeshSmoothingLaplacianVTK::performP
  
    // Apply the VTK algorithm
@@ -63,9 +153,9 @@ diff -up PCL-1.6.0-Source/surface/src/vtk_smoothing/vtk_mesh_smoothing_laplacian
    vtk_smoother->SetNumberOfIterations (num_iter_);
    if (convergence_ != 0.0f)
      vtk_smoother->SetConvergence (convergence_);
-diff -up PCL-1.6.0-Source/surface/src/vtk_smoothing/vtk_mesh_smoothing_windowed_sinc.cpp.vtk6 PCL-1.6.0-Source/surface/src/vtk_smoothing/vtk_mesh_smoothing_windowed_sinc.cpp
---- PCL-1.6.0-Source/surface/src/vtk_smoothing/vtk_mesh_smoothing_windowed_sinc.cpp.vtk6	2013-07-12 20:54:37.650751148 -0600
-+++ PCL-1.6.0-Source/surface/src/vtk_smoothing/vtk_mesh_smoothing_windowed_sinc.cpp	2013-07-12 20:54:49.174722113 -0600
+diff -up ./surface/src/vtk_smoothing/vtk_mesh_smoothing_windowed_sinc.cpp.vtk6 ./surface/src/vtk_smoothing/vtk_mesh_smoothing_windowed_sinc.cpp
+--- ./surface/src/vtk_smoothing/vtk_mesh_smoothing_windowed_sinc.cpp.vtk6	2013-07-23 17:21:02.000000000 +0000
++++ ./surface/src/vtk_smoothing/vtk_mesh_smoothing_windowed_sinc.cpp	2013-08-21 00:45:59.009844777 +0000
 @@ -51,7 +51,7 @@ pcl::MeshSmoothingWindowedSincVTK::perfo
  
    // Apply the VTK algorithm
@@ -75,9 +165,9 @@ diff -up PCL-1.6.0-Source/surface/src/vtk_smoothing/vtk_mesh_smoothing_windowed_
    vtk_smoother->SetNumberOfIterations (num_iter_);
    vtk_smoother->SetPassBand (pass_band_);
    vtk_smoother->SetNormalizeCoordinates (normalize_coordinates_);
-diff -up PCL-1.6.0-Source/surface/src/vtk_smoothing/vtk_mesh_subdivision.cpp.vtk6 PCL-1.6.0-Source/surface/src/vtk_smoothing/vtk_mesh_subdivision.cpp
---- PCL-1.6.0-Source/surface/src/vtk_smoothing/vtk_mesh_subdivision.cpp.vtk6	2012-07-17 17:11:32.000000000 -0600
-+++ PCL-1.6.0-Source/surface/src/vtk_smoothing/vtk_mesh_subdivision.cpp	2013-07-12 20:53:31.947918907 -0600
+diff -up ./surface/src/vtk_smoothing/vtk_mesh_subdivision.cpp.vtk6 ./surface/src/vtk_smoothing/vtk_mesh_subdivision.cpp
+--- ./surface/src/vtk_smoothing/vtk_mesh_subdivision.cpp.vtk6	2013-07-23 17:21:02.000000000 +0000
++++ ./surface/src/vtk_smoothing/vtk_mesh_subdivision.cpp	2013-08-21 00:45:59.009844777 +0000
 @@ -78,7 +78,7 @@ pcl::MeshSubdivisionVTK::performProcessi
        break;
    }
@@ -87,9 +177,9 @@ diff -up PCL-1.6.0-Source/surface/src/vtk_smoothing/vtk_mesh_subdivision.cpp.vtk
    vtk_subdivision_filter->Update ();
  
    vtk_polygons_ = vtk_subdivision_filter->GetOutput ();
-diff -up PCL-1.6.0-Source/surface/src/vtk_smoothing/vtk_utils.cpp.vtk6 PCL-1.6.0-Source/surface/src/vtk_smoothing/vtk_utils.cpp
---- PCL-1.6.0-Source/surface/src/vtk_smoothing/vtk_utils.cpp.vtk6	2012-07-17 17:11:32.000000000 -0600
-+++ PCL-1.6.0-Source/surface/src/vtk_smoothing/vtk_utils.cpp	2013-07-12 20:51:59.133155236 -0600
+diff -up ./surface/src/vtk_smoothing/vtk_utils.cpp.vtk6 ./surface/src/vtk_smoothing/vtk_utils.cpp
+--- ./surface/src/vtk_smoothing/vtk_utils.cpp.vtk6	2013-07-23 17:21:02.000000000 +0000
++++ ./surface/src/vtk_smoothing/vtk_utils.cpp	2013-08-21 00:45:59.009844777 +0000
 @@ -63,7 +63,7 @@ pcl::VTKUtils::convertToVTK (const pcl::
    mesh2vtk (triangles, vtk_polygons);
  
@@ -99,10 +189,74 @@ diff -up PCL-1.6.0-Source/surface/src/vtk_smoothing/vtk_utils.cpp.vtk6 PCL-1.6.0
    vtk_triangles->Update();
  
    triangles_out_vtk = vtk_triangles->GetOutput ();
-diff -up PCL-1.6.0-Source/tools/mesh_sampling.cpp.vtk6 PCL-1.6.0-Source/tools/mesh_sampling.cpp
---- PCL-1.6.0-Source/tools/mesh_sampling.cpp.vtk6	2012-07-17 17:11:32.000000000 -0600
-+++ PCL-1.6.0-Source/tools/mesh_sampling.cpp	2013-07-12 20:50:18.733388474 -0600
-@@ -202,7 +202,7 @@ main (int argc, char **argv)
+diff -up ./tools/CMakeLists.txt.vtk6 ./tools/CMakeLists.txt
+--- ./tools/CMakeLists.txt.vtk6	2013-08-21 12:03:18.889571490 +0000
++++ ./tools/CMakeLists.txt	2013-08-21 21:52:31.977816445 +0000
+@@ -157,7 +157,7 @@ if (build)
+       target_link_libraries (pcl_organized_pcd_to_png pcl_common pcl_io)
+ 
+       PCL_ADD_EXECUTABLE(pcl_tiff2pcd ${SUBSYS_NAME} tiff2pcd.cpp)
+-      target_link_libraries(pcl_tiff2pcd pcl_common pcl_io)
++      target_link_libraries(pcl_tiff2pcd pcl_common pcl_io vtkRenderingCore vtkRenderingOpenGL vtkRenderingFreeType vtkRenderingFreeTypeOpenGL vtkRenderingVolume vtkRenderingVolumeOpenGL vtkFiltersStatistics vtkFiltersStatisticsGnuR vtkInteractionStyle vtkFiltersStatistics)
+           
+       PCL_ADD_EXECUTABLE(pcl_ply2vtk ${SUBSYS_NAME} ply2vtk.cpp)
+       target_link_libraries(pcl_ply2vtk pcl_common pcl_io)
+@@ -172,7 +172,7 @@ if (build)
+       target_link_libraries(pcl_obj2vtk pcl_common pcl_io)
+ 
+       PCL_ADD_EXECUTABLE(pcl_vtk2pcd ${SUBSYS_NAME} vtk2pcd.cpp)
+-      target_link_libraries(pcl_vtk2pcd pcl_common pcl_io)
++      target_link_libraries(pcl_vtk2pcd pcl_common pcl_io vtkFiltersCore)
+ 
+       if(BUILD_visualization)
+   
+@@ -206,13 +206,13 @@ if (build)
+         target_link_libraries(pcl_octree_viewer pcl_common pcl_io pcl_octree pcl_visualization pcl_kdtree pcl_filters)
+ 
+         PCL_ADD_EXECUTABLE(pcl_mesh2pcd ${SUBSYS_NAME} mesh2pcd.cpp)
+-        target_link_libraries(pcl_mesh2pcd pcl_common pcl_io pcl_visualization pcl_filters vtkCommon)
++        target_link_libraries(pcl_mesh2pcd pcl_common pcl_io pcl_visualization pcl_filters vtkCommonCore)
+         
+         PCL_ADD_EXECUTABLE(pcl_mesh_sampling ${SUBSYS_NAME} mesh_sampling.cpp)
+-        target_link_libraries(pcl_mesh_sampling pcl_common pcl_io pcl_visualization pcl_filters vtkCommon)
++        target_link_libraries(pcl_mesh_sampling pcl_common pcl_io pcl_visualization pcl_filters vtkCommonCore)
+         
+         PCL_ADD_EXECUTABLE(pcl_virtual_scanner ${SUBSYS_NAME} virtual_scanner.cpp)
+-        target_link_libraries(pcl_virtual_scanner pcl_common pcl_io pcl_filters pcl_visualization vtkCommon vtkGraphics)
++        target_link_libraries(pcl_virtual_scanner pcl_common pcl_io pcl_filters pcl_visualization vtkCommonCore vtkRenderingCore)
+ 
+         PCL_ADD_EXECUTABLE (pcl_voxel_grid_occlusion_estimation ${SUBSYS_NAME} voxel_grid_occlusion_estimation.cpp)
+         target_link_libraries (pcl_voxel_grid_occlusion_estimation pcl_common pcl_io pcl_filters pcl_visualization)
+diff -up ./tools/mesh2pcd.cpp.vtk6 ./tools/mesh2pcd.cpp
+--- ./tools/mesh2pcd.cpp.vtk6	2013-08-21 12:02:28.533640909 +0000
++++ ./tools/mesh2pcd.cpp	2013-08-21 12:02:57.648177984 +0000
+@@ -112,14 +112,14 @@ main (int argc, char **argv)
+     vtkSmartPointer<vtkPLYReader> readerQuery = vtkSmartPointer<vtkPLYReader>::New ();
+     readerQuery->SetFileName (argv[ply_file_indices[0]]);
+     polydata1 = readerQuery->GetOutput ();
+-    polydata1->Update ();
++    readerQuery->Update ();
+   }
+   else if (obj_file_indices.size () == 1)
+   {
+     vtkSmartPointer<vtkOBJReader> readerQuery = vtkSmartPointer<vtkOBJReader>::New ();
+     readerQuery->SetFileName (argv[obj_file_indices[0]]);
+     polydata1 = readerQuery->GetOutput ();
+-    polydata1->Update ();
++    readerQuery->Update ();
+   }
+ 
+   bool INTER_VIS = false;
+diff -up ./tools/mesh_sampling.cpp.vtk6 ./tools/mesh_sampling.cpp
+--- ./tools/mesh_sampling.cpp.vtk6	2013-07-23 17:21:02.000000000 +0000
++++ ./tools/mesh_sampling.cpp	2013-08-21 12:04:48.924253782 +0000
+@@ -197,19 +197,19 @@ main (int argc, char **argv)
+     vtkSmartPointer<vtkOBJReader> readerQuery = vtkSmartPointer<vtkOBJReader>::New ();
+     readerQuery->SetFileName (argv[obj_file_indices[0]]);
+     polydata1 = readerQuery->GetOutput ();
+-    polydata1->Update ();
++    readerQuery->Update ();
+   }
  
    //make sure that the polygons are triangles!
    vtkSmartPointer<vtkTriangleFilter> triangleFilter = vtkSmartPointer<vtkTriangleFilter>::New ();
@@ -111,10 +265,167 @@ diff -up PCL-1.6.0-Source/tools/mesh_sampling.cpp.vtk6 PCL-1.6.0-Source/tools/me
    triangleFilter->Update ();
  
    vtkSmartPointer<vtkPolyDataMapper> triangleMapper = vtkSmartPointer<vtkPolyDataMapper>::New ();
-diff -up PCL-1.6.0-Source/tools/octree_viewer.cpp.vtk6 PCL-1.6.0-Source/tools/octree_viewer.cpp
---- PCL-1.6.0-Source/tools/octree_viewer.cpp.vtk6	2012-07-17 17:11:32.000000000 -0600
-+++ PCL-1.6.0-Source/tools/octree_viewer.cpp	2013-07-12 16:46:53.699342598 -0600
-@@ -300,7 +300,7 @@ private:
+   triangleMapper->SetInputConnection (triangleFilter->GetOutputPort ());
+   triangleMapper->Update();
+   polydata1 = triangleMapper->GetInput();
+-  polydata1->Update ();
++  triangleMapper->Update ();
+ 
+   bool INTER_VIS = false;
+   bool VIS = true;
+diff -up ./tools/obj2vtk.cpp.vtk6 ./tools/obj2vtk.cpp
+--- ./tools/obj2vtk.cpp.vtk6	2013-08-21 12:19:09.415203938 +0000
++++ ./tools/obj2vtk.cpp	2013-08-21 12:20:53.422308400 +0000
+@@ -77,11 +77,11 @@ main (int argc, char** argv)
+   vtkSmartPointer<vtkOBJReader> reader = vtkSmartPointer<vtkOBJReader>::New ();
+   reader->SetFileName (argv[obj_file_indices[0]]);
+   polydata = reader->GetOutput ();
+-  polydata->Update ();
++  reader->Update ();
+ 
+   // Convert to VTK and save
+   vtkSmartPointer<vtkPolyDataWriter> writer = vtkSmartPointer<vtkPolyDataWriter>::New ();
+-  writer->SetInput (polydata);
++  writer->SetInputData (polydata);
+   writer->SetFileName (argv[vtk_file_indices[0]]);
+   writer->Write ();
+ }
+diff -up ./tools/obj_rec_ransac_accepted_hypotheses.cpp.vtk6 ./tools/obj_rec_ransac_accepted_hypotheses.cpp
+--- ./tools/obj_rec_ransac_accepted_hypotheses.cpp.vtk6	2013-08-21 12:21:36.920187867 +0000
++++ ./tools/obj_rec_ransac_accepted_hypotheses.cpp	2013-08-21 12:21:55.581565073 +0000
+@@ -323,13 +323,13 @@ update (CallbackParameters* params)
+     // Setup the transformator
+     vtkSmartPointer<vtkTransformPolyDataFilter> vtk_transformator = vtkSmartPointer<vtkTransformPolyDataFilter>::New ();
+     vtk_transformator->SetTransform (vtk_transform);
+-    vtk_transformator->SetInput (vtk_model);
++    vtk_transformator->SetInputData (vtk_model);
+     vtk_transformator->Update ();
+ 
+     // Visualize
+     vtkSmartPointer<vtkActor> vtk_actor = vtkSmartPointer<vtkActor>::New();
+     vtkSmartPointer<vtkPolyDataMapper> vtk_mapper = vtkSmartPointer<vtkPolyDataMapper>::New ();
+-    vtk_mapper->SetInput(vtk_transformator->GetOutput ());
++    vtk_mapper->SetInputData(vtk_transformator->GetOutput ());
+     vtk_actor->SetMapper(vtk_mapper);
+     // Set the appearance & add to the renderer
+     vtk_actor->GetProperty ()->SetColor (0.6, 0.7, 0.9);
+diff -up ./tools/obj_rec_ransac_model_opps.cpp.vtk6 ./tools/obj_rec_ransac_model_opps.cpp
+--- ./tools/obj_rec_ransac_model_opps.cpp.vtk6	2013-08-21 12:22:50.385672453 +0000
++++ ./tools/obj_rec_ransac_model_opps.cpp	2013-08-21 12:23:04.255952621 +0000
+@@ -215,7 +215,7 @@ void showModelOpps (PCLVisualizer& viz,
+   // Save the normals
+   vtk_opps->GetPointData ()->SetNormals (vtk_normals);
+   // Setup the hedge hog object
+-  vtk_hedge_hog->SetInput (vtk_opps);
++  vtk_hedge_hog->SetInputData (vtk_opps);
+   vtk_hedge_hog->SetVectorModeToUseNormal ();
+   vtk_hedge_hog->SetScaleFactor (0.5f*pair_width);
+   vtk_hedge_hog->Update ();
+diff -up ./tools/obj_rec_ransac_orr_octree.cpp.vtk6 ./tools/obj_rec_ransac_orr_octree.cpp
+--- ./tools/obj_rec_ransac_orr_octree.cpp.vtk6	2013-08-21 12:23:59.602070262 +0000
++++ ./tools/obj_rec_ransac_orr_octree.cpp	2013-08-21 12:24:21.623514810 +0000
+@@ -304,7 +304,7 @@ void node_to_cube (ORROctree::Node* node
+   cube->SetBounds (b[0], b[1], b[2], b[3], b[4], b[5]);
+   cube->Update ();
+ 
+-  additive_octree->AddInput (cube->GetOutput ());
++  additive_octree->AddInputData (cube->GetOutput ());
+ }
+ 
+ //===============================================================================================================================
+@@ -363,7 +363,7 @@ void show_octree (ORROctree* octree, PCL
+   vtkRenderer *renderer = viz.getRenderWindow ()->GetRenderers ()->GetFirstRenderer ();
+   vtkSmartPointer<vtkActor> octree_actor = vtkSmartPointer<vtkActor>::New();
+   vtkSmartPointer<vtkDataSetMapper> mapper = vtkSmartPointer<vtkDataSetMapper>::New ();
+-  mapper->SetInput(vtk_octree);
++  mapper->SetInputData(vtk_octree);
+   octree_actor->SetMapper(mapper);
+ 
+   // Set the appearance & add to the renderer
+diff -up ./tools/obj_rec_ransac_orr_octree_zprojection.cpp.vtk6 ./tools/obj_rec_ransac_orr_octree_zprojection.cpp
+--- ./tools/obj_rec_ransac_orr_octree_zprojection.cpp.vtk6	2013-08-21 21:26:26.090325485 +0000
++++ ./tools/obj_rec_ransac_orr_octree_zprojection.cpp	2013-08-21 21:27:15.501360394 +0000
+@@ -206,7 +206,7 @@ void show_octree (ORROctree* octree, PCL
+   vtkRenderer *renderer = viz.getRenderWindow ()->GetRenderers ()->GetFirstRenderer ();
+   vtkSmartPointer<vtkActor> octree_actor = vtkSmartPointer<vtkActor>::New();
+   vtkSmartPointer<vtkDataSetMapper> mapper = vtkSmartPointer<vtkDataSetMapper>::New ();
+-  mapper->SetInput(vtk_octree);
++  mapper->SetInputData(vtk_octree);
+   octree_actor->SetMapper(mapper);
+ 
+   // Set the appearance & add to the renderer
+@@ -250,9 +250,9 @@ void show_octree_zproj (ORROctreeZProjec
+   vtkRenderer *renderer = viz.getRenderWindow ()->GetRenderers ()->GetFirstRenderer ();
+   vtkSmartPointer<vtkActor> upper_actor = vtkSmartPointer<vtkActor>::New(), lower_actor = vtkSmartPointer<vtkActor>::New();
+   vtkSmartPointer<vtkDataSetMapper> upper_mapper = vtkSmartPointer<vtkDataSetMapper>::New (), lower_mapper = vtkSmartPointer<vtkDataSetMapper>::New ();
+-  upper_mapper->SetInput(upper_bound->GetOutput ());
++  upper_mapper->SetInputData(upper_bound->GetOutput ());
+   upper_actor->SetMapper(upper_mapper);
+-  lower_mapper->SetInput(lower_bound->GetOutput ());
++  lower_mapper->SetInputData(lower_bound->GetOutput ());
+   lower_actor->SetMapper(lower_mapper);
+ 
+   // Set the appearance & add to the renderer
+@@ -272,7 +272,7 @@ void node_to_cube (ORROctree::Node* node
+   cube->SetBounds (b[0], b[1], b[2], b[3], b[4], b[5]);
+   cube->Update ();
+ 
+-  additive_octree->AddInput (cube->GetOutput ());
++  additive_octree->AddInputData (cube->GetOutput ());
+ }
+ 
+ //===============================================================================================================================
+@@ -284,7 +284,7 @@ void rectangle_to_vtk (float x1, float x
+   cube->SetBounds (x1, x2, y1, y2, z, z);
+   cube->Update ();
+ 
+-  additive_rectangle->AddInput (cube->GetOutput ());
++  additive_rectangle->AddInputData (cube->GetOutput ());
+ }
+ 
+ //===============================================================================================================================
+diff -up ./tools/obj_rec_ransac_result.cpp.vtk6 ./tools/obj_rec_ransac_result.cpp
+--- ./tools/obj_rec_ransac_result.cpp.vtk6	2013-08-21 21:27:49.210066401 +0000
++++ ./tools/obj_rec_ransac_result.cpp	2013-08-21 21:28:04.681390430 +0000
+@@ -281,13 +281,13 @@ update (CallbackParameters* params)
+     // Setup the transformator
+     vtkSmartPointer<vtkTransformPolyDataFilter> vtk_transformator = vtkSmartPointer<vtkTransformPolyDataFilter>::New ();
+     vtk_transformator->SetTransform (vtk_transform);
+-    vtk_transformator->SetInput (vtk_model);
++    vtk_transformator->SetInputData (vtk_model);
+     vtk_transformator->Update ();
+ 
+     // Visualize
+     vtkSmartPointer<vtkActor> vtk_actor = vtkSmartPointer<vtkActor>::New();
+     vtkSmartPointer<vtkPolyDataMapper> vtk_mapper = vtkSmartPointer<vtkPolyDataMapper>::New ();
+-    vtk_mapper->SetInput(vtk_transformator->GetOutput ());
++    vtk_mapper->SetInputData(vtk_transformator->GetOutput ());
+     vtk_actor->SetMapper(vtk_mapper);
+     // Set the appearance & add to the renderer
+     vtk_actor->GetProperty ()->SetColor (0.6, 0.7, 0.9);
+diff -up ./tools/obj_rec_ransac_scene_opps.cpp.vtk6 ./tools/obj_rec_ransac_scene_opps.cpp
+--- ./tools/obj_rec_ransac_scene_opps.cpp.vtk6	2013-08-21 21:29:21.909007870 +0000
++++ ./tools/obj_rec_ransac_scene_opps.cpp	2013-08-21 21:29:32.698233839 +0000
+@@ -173,7 +173,7 @@ void update (CallbackParameters* params)
+   vtkSmartPointer<vtkHedgeHog> vtk_hh = vtkSmartPointer<vtkHedgeHog>::New ();
+   vtk_hh->SetVectorModeToUseNormal ();
+   vtk_hh->SetScaleFactor (0.5f*params->objrec_.getPairWidth ());
+-  vtk_hh->SetInput (vtk_opps);
++  vtk_hh->SetInputData (vtk_opps);
+   vtk_hh->Update ();
+ 
+   // The lines
+diff -up ./tools/octree_viewer.cpp.vtk6 ./tools/octree_viewer.cpp
+--- ./tools/octree_viewer.cpp.vtk6	2013-07-23 17:21:02.000000000 +0000
++++ ./tools/octree_viewer.cpp	2013-08-21 21:30:09.428003080 +0000
+@@ -294,13 +294,13 @@ private:
+       double y = displayCloud->points[i].y;
+       double z = displayCloud->points[i].z;
+ 
+-      treeWireframe->AddInput(GetCuboid(x - s, x + s, y - s, y + s, z - s, z + s));
++      treeWireframe->AddInputData(GetCuboid(x - s, x + s, y - s, y + s, z - s, z + s));
+     }
+ 
      vtkSmartPointer<vtkActor> treeActor = vtkSmartPointer<vtkActor>::New();
  
      vtkSmartPointer<vtkDataSetMapper> mapper = vtkSmartPointer<vtkDataSetMapper>::New();
@@ -123,10 +434,398 @@ diff -up PCL-1.6.0-Source/tools/octree_viewer.cpp.vtk6 PCL-1.6.0-Source/tools/oc
      treeActor->SetMapper(mapper);
  
      treeActor->GetProperty()->SetColor(1.0, 1.0, 1.0);
-diff -up PCL-1.6.0-Source/visualization/src/common/io.cpp.vtk6 PCL-1.6.0-Source/visualization/src/common/io.cpp
---- PCL-1.6.0-Source/visualization/src/common/io.cpp.vtk6	2012-07-17 17:11:32.000000000 -0600
-+++ PCL-1.6.0-Source/visualization/src/common/io.cpp	2013-07-12 21:02:45.726515839 -0600
-@@ -83,7 +83,7 @@ pcl::visualization::savePointData (vtkPo
+diff -up ./tools/ply2vtk.cpp.vtk6 ./tools/ply2vtk.cpp
+--- ./tools/ply2vtk.cpp.vtk6	2013-08-21 21:33:03.894656841 +0000
++++ ./tools/ply2vtk.cpp	2013-08-21 21:33:52.922683565 +0000
+@@ -77,12 +77,12 @@ main (int argc, char** argv)
+   vtkSmartPointer<vtkPLYReader> reader = vtkSmartPointer<vtkPLYReader>::New ();
+   reader->SetFileName (argv[ply_file_indices[0]]);
+   polydata = reader->GetOutput ();
+-  polydata->Update ();
++  reader->Update ();
+   print_info ("Loaded %s with %zu points/vertices.\n", argv[ply_file_indices[0]], polydata->GetNumberOfPoints ());
+ 
+   // Convert to VTK and save
+   vtkSmartPointer<vtkPolyDataWriter> writer = vtkSmartPointer<vtkPolyDataWriter>::New ();
+-  writer->SetInput (polydata);
++  writer->SetInputData (polydata);
+   writer->SetFileName (argv[vtk_file_indices[0]]);
+   writer->SetFileTypeToBinary ();
+   writer->Write ();
+diff -up ./tools/png2pcd.cpp.vtk6 ./tools/png2pcd.cpp
+--- ./tools/png2pcd.cpp.vtk6	2013-08-21 21:38:51.232930286 +0000
++++ ./tools/png2pcd.cpp	2013-08-21 21:39:07.930279915 +0000
+@@ -135,7 +135,7 @@ main (int argc, char** argv)
+   vtkSmartPointer<vtkPNGReader> reader = vtkSmartPointer<vtkPNGReader>::New ();
+   reader->SetFileName (argv[png_file_indices[0]]);
+   image_data = reader->GetOutput ();
+-  image_data->Update ();
++  reader->Update ();
+ 
+   // Retrieve the entries from the image data and copy them into the output RGB cloud
+   int components = image_data->GetNumberOfScalarComponents();
+diff -up ./tools/tiff2pcd.cpp.vtk6 ./tools/tiff2pcd.cpp
+--- ./tools/tiff2pcd.cpp.vtk6	2013-08-21 21:40:40.661221583 +0000
++++ ./tools/tiff2pcd.cpp	2013-08-21 21:41:04.837727812 +0000
+@@ -343,7 +343,7 @@ int main(int argc, char ** argv)
+     {
+       reader->SetFileName (tiff_rgb_files[i].c_str());
+       rgb_data = reader->GetOutput ();
+-      rgb_data->Update ();
++      reader->Update ();
+ 
+       std::string rgb_filename = tiff_rgb_paths[i].filename().string();
+       std::string rgb_time = rgb_filename.substr(6,22);
+@@ -381,7 +381,7 @@ int main(int argc, char ** argv)
+           {
+             depth_reader->SetFileName (tiff_depth_files[j].c_str());
+             depth_data = depth_reader->GetOutput ();
+-            depth_data->Update ();
++            depth_reader->Update ();
+ 
+             processAndSave(depth_data, rgb_data, depth_time, focal_length, format, color, depth, use_output_path, output_path_);
+           }
+diff -up ./tools/virtual_scanner.cpp.vtk6 ./tools/virtual_scanner.cpp
+--- ./tools/virtual_scanner.cpp.vtk6	2013-08-21 21:46:18.703160995 +0000
++++ ./tools/virtual_scanner.cpp	2013-08-21 21:46:36.537526230 +0000
+@@ -221,7 +221,7 @@ main (int argc, char** argv)
+ 
+   // Get camera positions
+   vtkPolyData *sphere = subdivide->GetOutput ();
+-  sphere->Update ();
++  subdivide->Update ();
+   if (!single_view)
+     PCL_INFO ("Created %ld camera position points.\n", sphere->GetNumberOfPoints ());
+ 
+diff -up ./tools/voxel_grid_occlusion_estimation.cpp.vtk6 ./tools/voxel_grid_occlusion_estimation.cpp
+--- ./tools/voxel_grid_occlusion_estimation.cpp.vtk6	2013-08-21 21:48:52.163305550 +0000
++++ ./tools/voxel_grid_occlusion_estimation.cpp	2013-08-21 21:50:58.043887848 +0000
+@@ -99,13 +99,13 @@ getVoxelActors (pcl::PointCloud<pcl::Poi
+     double y = voxelCenters.points[i].y;
+     double z = voxelCenters.points[i].z;
+     
+-    treeWireframe->AddInput (getCuboid (x - s, x + s, y - s, y + s, z - s, z + s));
++    treeWireframe->AddInputData (getCuboid (x - s, x + s, y - s, y + s, z - s, z + s));
+   }
+ 
+   vtkSmartPointer < vtkLODActor > treeActor = vtkSmartPointer<vtkLODActor>::New ();
+   
+   vtkSmartPointer < vtkDataSetMapper > mapper = vtkSmartPointer<vtkDataSetMapper>::New ();
+-  mapper->SetInput (treeWireframe->GetOutput ());
++  mapper->SetInputData (treeWireframe->GetOutput ());
+   treeActor->SetMapper (mapper);
+   
+   treeActor->GetProperty ()->SetRepresentationToWireframe ();
+@@ -119,12 +119,12 @@ displayBoundingBox (Eigen::Vector3f& min
+                     vtkSmartPointer<vtkActorCollection> coll)
+ {
+   vtkSmartPointer < vtkAppendPolyData > treeWireframe = vtkSmartPointer<vtkAppendPolyData>::New ();
+-  treeWireframe->AddInput (getCuboid (min_b[0], max_b[0], min_b[1], max_b[1], min_b[2], max_b[2]));
++  treeWireframe->AddInputData (getCuboid (min_b[0], max_b[0], min_b[1], max_b[1], min_b[2], max_b[2]));
+ 
+   vtkSmartPointer < vtkActor > treeActor = vtkSmartPointer<vtkActor>::New ();
+ 
+   vtkSmartPointer < vtkDataSetMapper > mapper = vtkSmartPointer<vtkDataSetMapper>::New ();
+-  mapper->SetInput (treeWireframe->GetOutput ());
++  mapper->SetInputData (treeWireframe->GetOutput ());
+   treeActor->SetMapper (mapper);
+ 
+   treeActor->GetProperty ()->SetRepresentationToWireframe ();
+diff -up ./tools/vtk2pcd.cpp.vtk6 ./tools/vtk2pcd.cpp
+--- ./tools/vtk2pcd.cpp.vtk6	2013-08-21 21:51:08.163095564 +0000
++++ ./tools/vtk2pcd.cpp	2013-08-21 21:51:18.089299305 +0000
+@@ -107,7 +107,7 @@ main (int argc, char** argv)
+   if (copy_normals)
+   {
+     vtkSmartPointer<vtkPolyDataNormals> ng = vtkSmartPointer<vtkPolyDataNormals>::New ();
+-    ng->SetInput (polydata);
++    ng->SetInputData (polydata);
+     ng->ComputePointNormalsOn ();
+     ng->ComputeCellNormalsOff ();
+     ng->Update ();
+diff -up ./tools/vtk2ply.cpp.vtk6 ./tools/vtk2ply.cpp
+--- ./tools/vtk2ply.cpp.vtk6	2013-08-21 21:52:57.293336401 +0000
++++ ./tools/vtk2ply.cpp	2013-08-21 21:53:16.847738110 +0000
+@@ -77,12 +77,12 @@ main (int argc, char** argv)
+   vtkSmartPointer<vtkPolyDataReader> reader = vtkSmartPointer<vtkPolyDataReader>::New ();
+   reader->SetFileName (argv[vtk_file_indices[0]]);
+   polydata = reader->GetOutput ();
+-  polydata->Update ();
++  reader->Update ();
+   print_info ("Loaded %s with %zu points/vertices.\n", argv[vtk_file_indices[0]], polydata->GetNumberOfPoints ());
+ 
+   // Convert to PLY and save
+   vtkSmartPointer<vtkPLYWriter> writer = vtkSmartPointer<vtkPLYWriter>::New ();
+-  writer->SetInput (polydata);
++  writer->SetInputData (polydata);
+   writer->SetArrayName ("Colors");
+   writer->SetFileTypeToASCII ();
+   writer->SetFileName (argv[ply_file_indices[0]]);
+diff -up ./visualization/CMakeLists.txt.vtk6 ./visualization/CMakeLists.txt
+--- ./visualization/CMakeLists.txt.vtk6	2013-08-21 02:43:15.375525780 +0000
++++ ./visualization/CMakeLists.txt	2013-08-21 02:57:55.536733573 +0000
+@@ -152,8 +152,10 @@ if(build)
+      
+     if("${VTK_MAJOR_VERSION}.${VTK_MINOR_VERSION}" VERSION_LESS "5.6")
+       target_link_libraries(${LIB_NAME} pcl_common pcl_io pcl_kdtree vtkCommon vtkWidgets vtkHybrid vtkFiltering vtkRendering ${OPENGL_LIBRARIES})
+-    else()
++    elseif(${VTK_MAJOR_VERSION} LESS 6)
+       target_link_libraries(${LIB_NAME} pcl_common pcl_io pcl_kdtree vtkCommon vtkWidgets vtkHybrid vtkCharts vtkFiltering vtkRendering ${OPENGL_LIBRARIES})
++    else()
++      target_link_libraries(${LIB_NAME} pcl_common pcl_io pcl_kdtree vtkCommonCore vtkChartsCore vtkInteractionStyle vtkImagingSources vtkRenderingCore vtkRenderingContext2D vtkRenderingAnnotation vtkRenderingLOD vtkRenderingVolume vtkRenderingOpenGL vtkRenderingVolumeOpenGL vtkRenderingFreeType vtkRenderingFreeTypeOpenGL vtkInteractionWidgets vtkFiltersStatistics vtkFiltersStatisticsGnuR vtkViewsContext2D ${OPENGL_LIBRARIES})
+     endif()
+ 
+     set(EXT_DEPS "")
+diff -up ./visualization/include/pcl/visualization/common/impl/shapes.hpp.vtk6 ./visualization/include/pcl/visualization/common/impl/shapes.hpp
+--- ./visualization/include/pcl/visualization/common/impl/shapes.hpp.vtk6	2013-08-21 01:44:28.135763915 +0000
++++ ./visualization/include/pcl/visualization/common/impl/shapes.hpp	2013-08-21 01:52:43.507042740 +0000
+@@ -67,7 +67,7 @@ pcl::visualization::createPolygon (const
+   poly_grid->Allocate (1, 1);
+   poly_grid->InsertNextCell (polygon->GetCellType (), polygon->GetPointIds ());
+   poly_grid->SetPoints (poly_points);
+-  poly_grid->Update ();
++  //poly_grid->Update ();
+ 
+   return (poly_grid);
+ }
+@@ -104,7 +104,7 @@ pcl::visualization::createPolygon (const
+   poly_grid->Allocate (1, 1);
+   poly_grid->InsertNextCell (polygon->GetCellType (), polygon->GetPointIds ());
+   poly_grid->SetPoints (poly_points);
+-  poly_grid->Update ();
++  //poly_grid->Update ();
+ 
+   return (poly_grid);
+ }
+diff -up ./visualization/include/pcl/visualization/image_viewer.h.vtk6 ./visualization/include/pcl/visualization/image_viewer.h
+--- ./visualization/include/pcl/visualization/image_viewer.h.vtk6	2013-08-21 23:11:02.627949762 +0000
++++ ./visualization/include/pcl/visualization/image_viewer.h	2013-08-21 02:29:21.229120143 +0000
+@@ -952,7 +952,7 @@ namespace pcl
+         /** \brief The renderer. */
+         vtkSmartPointer<vtkRenderer> ren_;
+ 
+-#if ((VTK_MAJOR_VERSION == 5) && (VTK_MINOR_VERSION >= 10))
++#if (((VTK_MAJOR_VERSION == 5) && (VTK_MINOR_VERSION >= 10)) || (VTK_MAJOR_VERSION > 5))
+         /** \brief Global prop. This is the actual "actor". */
+         vtkSmartPointer<vtkImageSlice> slice_;
+ #endif
+diff -up ./visualization/include/pcl/visualization/impl/image_viewer.hpp.vtk6 ./visualization/include/pcl/visualization/impl/image_viewer.hpp
+--- ./visualization/include/pcl/visualization/impl/image_viewer.hpp.vtk6	2013-08-21 02:22:42.987745331 +0000
++++ ./visualization/include/pcl/visualization/impl/image_viewer.hpp	2013-08-21 02:23:08.182278421 +0000
+@@ -435,9 +435,7 @@ pcl::visualization::ImageViewer::showCor
+   
+   vtkSmartPointer<vtkImageData> image = vtkSmartPointer<vtkImageData>::New ();
+   image->SetDimensions (source_img.width + target_img.width, std::max (source_img.height, target_img.height), 1);
+-  image->SetScalarTypeToUnsignedChar ();
+-  image->SetNumberOfScalarComponents (3);
+-  image->AllocateScalars ();
++  image->AllocateScalars (VTK_UNSIGNED_CHAR, 3);
+   image->GetPointData ()->GetScalars ()->SetVoidArray (data, data_size_, 1);
+   vtkSmartPointer<PCLContextImageItem> image_item = vtkSmartPointer<PCLContextImageItem>::New ();
+ #if ((VTK_MAJOR_VERSION == 5) && (VTK_MINOR_VERSION <= 10))
+diff -up ./visualization/include/pcl/visualization/impl/pcl_visualizer.hpp.vtk6 ./visualization/include/pcl/visualization/impl/pcl_visualizer.hpp
+--- ./visualization/include/pcl/visualization/impl/pcl_visualizer.hpp.vtk6	2013-08-21 01:53:19.555789272 +0000
++++ ./visualization/include/pcl/visualization/impl/pcl_visualizer.hpp	2013-08-21 02:15:15.723273700 +0000
+@@ -322,13 +322,13 @@ pcl::visualization::PCLVisualizer::addPo
+     vtkSmartPointer<vtkAppendPolyData> all_data = vtkSmartPointer<vtkAppendPolyData>::New ();
+     
+     // Add old data
+-    all_data->AddInput (reinterpret_cast<vtkPolyDataMapper*> ((vtkActor::SafeDownCast (am_it->second))->GetMapper ())->GetInput ());
++    all_data->AddInputData (reinterpret_cast<vtkPolyDataMapper*> ((vtkActor::SafeDownCast (am_it->second))->GetMapper ())->GetInput ());
+    
+     // Add new data
+     vtkSmartPointer<vtkDataSetSurfaceFilter> surface_filter = vtkSmartPointer<vtkDataSetSurfaceFilter>::New ();
+-    surface_filter->SetInput (vtkUnstructuredGrid::SafeDownCast (data));
++    surface_filter->SetInputData (vtkUnstructuredGrid::SafeDownCast (data));
+     vtkSmartPointer<vtkPolyData> poly_data = surface_filter->GetOutput ();
+-    all_data->AddInput (poly_data);
++    all_data->AddInputData (poly_data);
+ 
+     // Create an Actor
+     vtkSmartPointer<vtkActor> actor;
+@@ -376,13 +376,13 @@ pcl::visualization::PCLVisualizer::addPo
+     vtkSmartPointer<vtkAppendPolyData> all_data = vtkSmartPointer<vtkAppendPolyData>::New ();
+ 
+     // Add old data
+-    all_data->AddInput (reinterpret_cast<vtkPolyDataMapper*> ((vtkActor::SafeDownCast (am_it->second))->GetMapper ())->GetInput ());
++    all_data->AddInputData (reinterpret_cast<vtkPolyDataMapper*> ((vtkActor::SafeDownCast (am_it->second))->GetMapper ())->GetInput ());
+ 
+     // Add new data
+     vtkSmartPointer<vtkDataSetSurfaceFilter> surface_filter = vtkSmartPointer<vtkDataSetSurfaceFilter>::New ();
+-    surface_filter->SetInput (vtkUnstructuredGrid::SafeDownCast (data));
++    surface_filter->SetInputData (vtkUnstructuredGrid::SafeDownCast (data));
+     vtkSmartPointer<vtkPolyData> poly_data = surface_filter->GetOutput ();
+-    all_data->AddInput (poly_data);
++    all_data->AddInputData (poly_data);
+ 
+     // Create an Actor
+     vtkSmartPointer<vtkActor> actor;
+@@ -613,7 +613,7 @@ pcl::visualization::PCLVisualizer::updat
+   //////////////////////////////////////////////////////////////////////////
+   // Get the actor pointer
+   vtkLODActor* actor = vtkLODActor::SafeDownCast (am_it->second);
+-  vtkAlgorithm *algo = actor->GetMapper ()->GetInput ()->GetProducerPort ()->GetProducer ();
++  vtkAlgorithm *algo = actor->GetMapper ()->GetInput ();
+   vtkSphereSource *src = vtkSphereSource::SafeDownCast (algo);
+ 
+   src->SetCenter (double (center.x), double (center.y), double (center.z));
+@@ -796,7 +796,7 @@ pcl::visualization::PCLVisualizer::addPo
+   polyData->SetLines (lines);
+ 
+   vtkSmartPointer<vtkDataSetMapper> mapper = vtkSmartPointer<vtkDataSetMapper>::New ();
+-  mapper->SetInput (polyData);
++  mapper->SetInputData (polyData);
+   mapper->SetColorModeToMapScalars();
+   mapper->SetScalarModeToUsePointData();
+ 
+@@ -871,7 +871,7 @@ pcl::visualization::PCLVisualizer::addPo
+   polyData->SetLines(lines);
+ 
+   vtkSmartPointer<vtkDataSetMapper> mapper = vtkSmartPointer<vtkDataSetMapper>::New ();
+-  mapper->SetInput (polyData);
++  mapper->SetInputData (polyData);
+   mapper->SetColorModeToMapScalars();
+   mapper->SetScalarModeToUsePointData();
+ 
+@@ -970,7 +970,7 @@ pcl::visualization::PCLVisualizer::addCo
+   line_data->SetLines (line_cells);
+   line_data->GetPointData ()->SetTCoords (line_tcoords);
+   line_data->GetCellData ()->SetScalars (line_colors);
+-  line_data->Update ();
++  //line_data->Update ();
+ 
+   // Create an Actor
+   vtkSmartPointer<vtkLODActor> actor;
+@@ -1075,7 +1075,7 @@ pcl::visualization::PCLVisualizer::addCo
+   line_data->SetLines (line_cells);
+   line_data->GetPointData ()->SetTCoords (line_tcoords);
+   line_data->GetCellData ()->SetScalars (line_colors);
+-  line_data->Update ();
++  //line_data->Update ();
+ 
+   // Create an Actor
+   vtkSmartPointer<vtkLODActor> actor;
+@@ -1178,10 +1178,10 @@ pcl::visualization::PCLVisualizer::updat
+   line_data->SetLines (line_cells);
+   line_data->GetPointData ()->SetTCoords (line_tcoords);
+   line_data->GetCellData ()->SetScalars (line_colors);
+-  line_data->Update ();
++  //line_data->Update ();
+ 
+   // Update the mapper
+-  reinterpret_cast<vtkPolyDataMapper*>(actor->GetMapper ())->SetInput (line_data);
++  reinterpret_cast<vtkPolyDataMapper*>(actor->GetMapper ())->SetInputData (line_data);
+ 
+   return (true);
+ }
+@@ -1213,7 +1213,7 @@ pcl::visualization::PCLVisualizer::fromH
+   // Convert the PointCloud to VTK PolyData
+   convertPointCloudToVTKPolyData<PointT> (geometry_handler, polydata, initcells);
+   // use the given geometry handler
+-  polydata->Update ();
++  //polydata->Update ();
+ 
+   // Get the colors from the handler
+   bool has_colors = false;
+@@ -1277,7 +1277,7 @@ pcl::visualization::PCLVisualizer::fromH
+   // Convert the PointCloud to VTK PolyData
+   convertPointCloudToVTKPolyData<PointT> (geometry_handler, polydata, initcells);
+   // use the given geometry handler
+-  polydata->Update ();
++  //polydata->Update ();
+ 
+   // Get the colors from the handler
+   bool has_colors = false;
+@@ -1342,7 +1342,7 @@ pcl::visualization::PCLVisualizer::fromH
+   // Convert the PointCloud to VTK PolyData
+   convertPointCloudToVTKPolyData (geometry_handler, polydata, initcells);
+   // use the given geometry handler
+-  polydata->Update ();
++  //polydata->Update ();
+ 
+   // Get the colors from the handler
+   bool has_colors = false;
+@@ -1394,12 +1394,12 @@ pcl::visualization::PCLVisualizer::updat
+   vtkSmartPointer<vtkPolyData> polydata = reinterpret_cast<vtkPolyDataMapper*>(am_it->second.actor->GetMapper ())->GetInput ();
+   // Convert the PointCloud to VTK PolyData
+   convertPointCloudToVTKPolyData<PointT> (cloud, polydata, am_it->second.cells);
+-  polydata->Update ();
++  //polydata->Update ();
+ 
+   // Set scalars to blank, since there is no way we can update them here.
+   vtkSmartPointer<vtkDataArray> scalars;
+   polydata->GetPointData ()->SetScalars (scalars);
+-  polydata->Update ();
++  //polydata->Update ();
+   double minmax[2];
+   minmax[0] = std::numeric_limits<double>::min ();
+   minmax[1] = std::numeric_limits<double>::max ();
+@@ -1407,7 +1407,7 @@ pcl::visualization::PCLVisualizer::updat
+   am_it->second.actor->GetMapper ()->SetScalarRange (minmax);
+ 
+   // Update the mapper
+-  reinterpret_cast<vtkPolyDataMapper*>(am_it->second.actor->GetMapper ())->SetInput (polydata);
++  reinterpret_cast<vtkPolyDataMapper*>(am_it->second.actor->GetMapper ())->SetInputData (polydata);
+   return (true);
+ }
+ 
+@@ -1432,7 +1432,7 @@ pcl::visualization::PCLVisualizer::updat
+   // Set scalars to blank, since there is no way we can update them here.
+   vtkSmartPointer<vtkDataArray> scalars;
+   polydata->GetPointData ()->SetScalars (scalars);
+-  polydata->Update ();
++  //polydata->Update ();
+   double minmax[2];
+   minmax[0] = std::numeric_limits<double>::min ();
+   minmax[1] = std::numeric_limits<double>::max ();
+@@ -1440,7 +1440,7 @@ pcl::visualization::PCLVisualizer::updat
+   am_it->second.actor->GetMapper ()->SetScalarRange (minmax);
+ 
+   // Update the mapper
+-  reinterpret_cast<vtkPolyDataMapper*>(am_it->second.actor->GetMapper ())->SetInput (polydata);
++  reinterpret_cast<vtkPolyDataMapper*>(am_it->second.actor->GetMapper ())->SetInputData (polydata);
+   return (true);
+ }
+ 
+@@ -1507,13 +1507,13 @@ pcl::visualization::PCLVisualizer::updat
+   scalars->GetRange (minmax);
+   // Update the data
+   polydata->GetPointData ()->SetScalars (scalars);
+-  polydata->Update ();
++  //polydata->Update ();
+ 
+   am_it->second.actor->GetMapper ()->ImmediateModeRenderingOff ();
+   am_it->second.actor->GetMapper ()->SetScalarRange (minmax);
+ 
+   // Update the mapper
+-  reinterpret_cast<vtkPolyDataMapper*>(am_it->second.actor->GetMapper ())->SetInput (polydata);
++  reinterpret_cast<vtkPolyDataMapper*>(am_it->second.actor->GetMapper ())->SetInputData (polydata);
+   return (true);
+ }
+ 
+@@ -1668,7 +1668,7 @@ pcl::visualization::PCLVisualizer::addPo
+     poly_grid->Allocate (1, 1);
+     poly_grid->InsertNextCell (polygon->GetCellType (), polygon->GetPointIds ());
+     poly_grid->SetPoints (points);
+-    poly_grid->Update ();
++    //poly_grid->Update ();
+     if (colors)
+       poly_grid->GetPointData ()->SetScalars (colors);
+ 
+@@ -1813,7 +1813,7 @@ pcl::visualization::PCLVisualizer::updat
+   cells->Squeeze ();
+   // Set the the vertices
+   polydata->SetStrips (cells);
+-  polydata->Update ();
++  //polydata->Update ();
+ 
+   return (true);
+ }
+diff -up ./visualization/src/.vtk6 ./visualization/src/
+diff -up ./visualization/src/common/io.cpp.vtk6 ./visualization/src/common/io.cpp
+--- ./visualization/src/common/io.cpp.vtk6	2013-07-23 17:21:02.000000000 +0000
++++ ./visualization/src/common/io.cpp	2013-08-21 00:45:59.010844800 +0000
+@@ -89,7 +89,7 @@ pcl::visualization::savePointData (vtkPo
    // Clean the data (no duplicates!)
    vtkSmartPointer<vtkCleanPolyData> cleaner = vtkSmartPointer<vtkCleanPolyData>::New ();
    cleaner->SetTolerance (0.0);
@@ -135,10 +834,10 @@ diff -up PCL-1.6.0-Source/visualization/src/common/io.cpp.vtk6 PCL-1.6.0-Source/
    cleaner->ConvertLinesToPointsOff ();
    cleaner->ConvertPolysToLinesOff ();
    cleaner->ConvertStripsToPolysOff ();
-diff -up PCL-1.6.0-Source/visualization/src/common/shapes.cpp.vtk6 PCL-1.6.0-Source/visualization/src/common/shapes.cpp
---- PCL-1.6.0-Source/visualization/src/common/shapes.cpp.vtk6	2012-07-17 17:11:32.000000000 -0600
-+++ PCL-1.6.0-Source/visualization/src/common/shapes.cpp	2013-07-12 21:03:34.603354663 -0600
-@@ -185,7 +185,7 @@ pcl::visualization::create2DCircle (cons
+diff -up ./visualization/src/common/shapes.cpp.vtk6 ./visualization/src/common/shapes.cpp
+--- ./visualization/src/common/shapes.cpp.vtk6	2013-07-23 17:21:02.000000000 +0000
++++ ./visualization/src/common/shapes.cpp	2013-08-21 00:45:59.010844800 +0000
+@@ -224,7 +224,7 @@ pcl::visualization::create2DCircle (cons
    circle->SetNumberOfSides (100);
    
    vtkSmartPointer<vtkTubeFilter> tube = vtkSmartPointer<vtkTubeFilter>::New();
@@ -147,70 +846,112 @@ diff -up PCL-1.6.0-Source/visualization/src/common/shapes.cpp.vtk6 PCL-1.6.0-Sou
    tube->SetNumberOfSides (25);
    tube->SetRadius (0.001);
    */ 
-diff -up PCL-1.6.0-Source/visualization/src/image_viewer.cpp.vtk6 PCL-1.6.0-Source/visualization/src/image_viewer.cpp
---- PCL-1.6.0-Source/visualization/src/image_viewer.cpp.vtk6	2012-07-17 17:11:32.000000000 -0600
-+++ PCL-1.6.0-Source/visualization/src/image_viewer.cpp	2013-07-12 21:41:24.732509932 -0600
-@@ -130,7 +130,7 @@ pcl::visualization::ImageViewer::addRGBI
-   imageTransform->SetMatrix (transform);
-   // Now create filter and set previously created transformation
-   vtkSmartPointer<vtkImageReslice> algo = vtkSmartPointer<vtkImageReslice>::New ();
--  algo->SetInput (importer->GetOutput ());
-+  algo->SetInputConnection (importer->GetOutputPort ());
-   algo->SetInformationInput (importer->GetOutput ());
-   algo->SetResliceTransform (imageTransform);
-   algo->SetInterpolationModeToCubic ();
-@@ -151,7 +151,7 @@ pcl::visualization::ImageViewer::addRGBI
- //  }
- //  // If not, pass the data directly to the viewer
- //  else
--//    image_viewer_->SetInput (algo->GetOutput ());
-+//    image_viewer_->SetInputConnection (algo->GetOutputPort ());
- }
+diff -up ./visualization/src/histogram_visualizer.cpp.vtk6 ./visualization/src/histogram_visualizer.cpp
+--- ./visualization/src/histogram_visualizer.cpp.vtk6	2013-08-21 02:18:27.494336735 +0000
++++ ./visualization/src/histogram_visualizer.cpp	2013-08-21 02:22:29.553461057 +0000
+@@ -260,7 +260,7 @@ pcl::visualization::PCLHistogramVisualiz
+     const vtkSmartPointer<vtkDoubleArray> &xy_array, RenWinInteract* renwinupd, const int hsize)
+ {
+   renwinupd->ren_->RemoveActor2D (renwinupd->xy_plot_);
+-  renwinupd->xy_plot_->RemoveAllInputs ();
++  renwinupd->xy_plot_->RemoveAllDataSetInputConnections ();
+   
+   double min_max[2];
+   xy_array->GetRange (min_max, 1);
+diff -up ./visualization/src/image_viewer.cpp.vtk6 ./visualization/src/image_viewer.cpp
+--- ./visualization/src/image_viewer.cpp.vtk6	2013-08-21 02:24:01.801412800 +0000
++++ ./visualization/src/image_viewer.cpp	2013-08-21 02:31:50.889239852 +0000
+@@ -37,6 +37,8 @@
+  */
+ 
+ #include <vtkImageViewer.h>
++#include <vtkImageSlice.h>
++#include <vtkImageSliceMapper.h>
+ #include <vtkCallbackCommand.h>
+ #include <vtkRenderer.h>
+ #include <vtkCamera.h>
+@@ -117,7 +119,7 @@ pcl::visualization::ImageViewer::ImageVi
+ 
+   vtkSmartPointer<vtkImageData> empty_image = vtkSmartPointer<vtkImageData>::New ();
+   vtkSmartPointer<vtkImageSliceMapper> map = vtkSmartPointer<vtkImageSliceMapper>::New ();
+-  map->SetInput (empty_image);
++  map->SetInputData (empty_image);
+   slice_->SetMapper (map);
+   ren_->AddViewProp (slice_);
+   interactor_->SetInteractorStyle (interactor_style_);
+@@ -180,9 +182,7 @@ pcl::visualization::ImageViewer::addRGBI
  
- /////////////////////////////////////////////////////////////////////////////////////////////
-@@ -200,7 +200,7 @@ pcl::visualization::ImageViewer::addMono
-   imageTransform->SetMatrix (transform);
+   vtkSmartPointer<vtkImageData> image = vtkSmartPointer<vtkImageData>::New ();
+   image->SetExtent (0, width - 1, 0, height - 1, 0, 0);
+-  image->SetScalarTypeToUnsignedChar ();
+-  image->SetNumberOfScalarComponents (3);
+-  image->AllocateScalars ();
++  image->AllocateScalars (VTK_UNSIGNED_CHAR, 3);
+   image->GetPointData ()->GetScalars ()->SetVoidArray (data, 3 * width * height, 1);
+ #if ((VTK_MAJOR_VERSION == 5) && (VTK_MINOR_VERSION <= 10))
    // Now create filter and set previously created transformation
-   vtkSmartPointer<vtkImageReslice> algo = vtkSmartPointer<vtkImageReslice>::New ();
--  algo->SetInput (importer->GetOutput ());
-+  algo->SetInputConnection (importer->GetOutputPort ());
-   algo->SetInformationInput (importer->GetOutput ());
-   algo->SetResliceTransform (imageTransform);
-   algo->SetInterpolationModeToCubic ();
-@@ -221,7 +221,7 @@ pcl::visualization::ImageViewer::addMono
- //  }
- //  // If not, pass the data directly to the viewer
- //  else
--//    image_viewer_->SetInput (algo->GetOutput ());
-+//    image_viewer_->SetInputConnection (algo->GetOutputPort ());
- }
+@@ -231,9 +231,7 @@ pcl::visualization::ImageViewer::addMono
+ 
+   vtkSmartPointer<vtkImageData> image = vtkSmartPointer<vtkImageData>::New ();
+   image->SetExtent (0, width - 1, 0, height - 1, 0, 0);
+-  image->SetScalarTypeToUnsignedChar ();
+-  image->SetNumberOfScalarComponents (1);
+-  image->AllocateScalars ();
++  image->AllocateScalars (VTK_UNSIGNED_CHAR, 1);
+   image->GetPointData ()->GetScalars ()->SetVoidArray (data, width * height, 1);
  
- /////////////////////////////////////////////////////////////////////////////////////////////
-diff -up PCL-1.6.0-Source/visualization/src/interactor_style.cpp.vtk6 PCL-1.6.0-Source/visualization/src/interactor_style.cpp
---- PCL-1.6.0-Source/visualization/src/interactor_style.cpp.vtk6	2012-07-17 17:11:32.000000000 -0600
-+++ PCL-1.6.0-Source/visualization/src/interactor_style.cpp	2013-07-12 21:04:53.302870144 -0600
-@@ -319,7 +319,7 @@ pcl::visualization::PCLVisualizerInterac
-         data->SetVerts (vertices);
+ #if ((VTK_MAJOR_VERSION == 5) && (VTK_MINOR_VERSION <= 10))
+diff -up ./visualization/src/interactor_style.cpp.vtk6 ./visualization/src/interactor_style.cpp
+--- ./visualization/src/interactor_style.cpp.vtk6	2013-08-21 01:15:47.308900484 +0000
++++ ./visualization/src/interactor_style.cpp	2013-08-21 01:18:42.048639938 +0000
+@@ -357,7 +357,7 @@ pcl::visualization::PCLVisualizerInterac
+         else
+         {
+           vtkPolyDataMapper* mapper = static_cast<vtkPolyDataMapper*>(act->actor->GetMapper ());
+-          mapper->SetInput (data);
++          mapper->SetInputData (data);
+           // Modify the actor
+           act->actor->SetMapper (mapper);
+         }
+@@ -386,7 +386,7 @@ pcl::visualization::PCLVisualizerInterac
+         // Update the data
+         vtkPolyData *data = static_cast<vtkPolyData*>(act->actor->GetMapper ()->GetInput ());
+         data->GetPointData ()->SetScalars (scalars);
+-        data->Update ();
++        //data->Update ();
          // Modify the mapper
-         vtkPolyDataMapper* mapper = static_cast<vtkPolyDataMapper*>(act->actor->GetMapper ());
--        mapper->SetInput (data);
-+        mapper->SetInputData (data);
-         // Modify the actor
-         act->actor->SetMapper (mapper);
-         act->actor->Modified ();
-@@ -352,7 +352,7 @@ pcl::visualization::PCLVisualizerInterac
-         vtkPolyDataMapper* mapper = static_cast<vtkPolyDataMapper*>(act->actor->GetMapper ());
-         mapper->SetScalarRange (minmax);
-         mapper->SetScalarModeToUsePointData ();
--        mapper->SetInput (data);
-+        mapper->SetInputData (data);
-         // Modify the actor
-         act->actor->SetMapper (mapper);
-         act->actor->Modified ();
-diff -up PCL-1.6.0-Source/visualization/src/pcl_visualizer.cpp.vtk6 PCL-1.6.0-Source/visualization/src/pcl_visualizer.cpp
---- PCL-1.6.0-Source/visualization/src/pcl_visualizer.cpp.vtk6	2012-07-17 17:11:32.000000000 -0600
-+++ PCL-1.6.0-Source/visualization/src/pcl_visualizer.cpp	2013-07-12 21:02:17.783585379 -0600
-@@ -337,13 +337,13 @@ pcl::visualization::PCLVisualizer::addCo
+         if (use_vbos_)
+         {
+@@ -402,7 +402,7 @@ pcl::visualization::PCLVisualizerInterac
+           vtkPolyDataMapper* mapper = static_cast<vtkPolyDataMapper*>(act->actor->GetMapper ());
+           mapper->SetScalarRange (minmax);
+           mapper->SetScalarModeToUsePointData ();
+-          mapper->SetInput (data);
++          mapper->SetInputData (data);
+           // Modify the actor
+           act->actor->SetMapper (mapper);
+         }
+diff -up ./visualization/src/pcl_plotter.cpp.vtk6 ./visualization/src/pcl_plotter.cpp
+--- ./visualization/src/pcl_plotter.cpp.vtk6	2013-08-21 02:42:40.584799051 +0000
++++ ./visualization/src/pcl_plotter.cpp	2013-08-21 02:42:56.513131764 +0000
+@@ -120,7 +120,7 @@ pcl::visualization::PCLPlotter::addPlotD
+   //adding to chart
+   //vtkPlot *line = chart_->AddPlot(vtkChart::LINE);
+   vtkPlot *line = chart_->AddPlot (type);
+-  line->SetInput (table, 0, 1);
++  line->SetInputData (table, 0, 1);
+   line->SetWidth (1);
+ 
+   if (color == NULL)    //color automatically based on the ColorScheme
+diff -up ./visualization/src/pcl_visualizer.cpp.vtk6 ./visualization/src/pcl_visualizer.cpp
+--- ./visualization/src/pcl_visualizer.cpp.vtk6	2013-07-23 17:21:02.000000000 +0000
++++ ./visualization/src/pcl_visualizer.cpp	2013-08-21 02:18:07.410911372 +0000
+@@ -508,17 +508,17 @@ pcl::visualization::PCLVisualizer::addCo
+   axes_colors->InsertNextValue (1.0);
+ 
+   vtkSmartPointer<vtkPolyData> axes_data = axes->GetOutput ();
+-  axes_data->Update ();
++  axes->Update ();
    axes_data->GetPointData ()->SetScalars (axes_colors);
  
    vtkSmartPointer<vtkTubeFilter> axes_tubes = vtkSmartPointer<vtkTubeFilter>::New ();
@@ -226,7 +967,12 @@ diff -up PCL-1.6.0-Source/visualization/src/pcl_visualizer.cpp.vtk6 PCL-1.6.0-So
  
    vtkSmartPointer<vtkLODActor> axes_actor = vtkSmartPointer<vtkLODActor>::New ();
    axes_actor->SetMapper (axes_mapper);
-@@ -376,13 +376,13 @@ pcl::visualization::PCLVisualizer::addCo
+@@ -547,17 +547,17 @@ pcl::visualization::PCLVisualizer::addCo
+   axes_colors->InsertNextValue (1.0);
+ 
+   vtkSmartPointer<vtkPolyData> axes_data = axes->GetOutput ();
+-  axes_data->Update ();
++  axes->Update ();
    axes_data->GetPointData ()->SetScalars (axes_colors);
  
    vtkSmartPointer<vtkTubeFilter> axes_tubes = vtkSmartPointer<vtkTubeFilter>::New ();
@@ -242,7 +988,12 @@ diff -up PCL-1.6.0-Source/visualization/src/pcl_visualizer.cpp.vtk6 PCL-1.6.0-So
  
    vtkSmartPointer<vtkLODActor> axes_actor = vtkSmartPointer<vtkLODActor>::New ();
    axes_actor->SetMapper (axes_mapper);
-@@ -416,13 +416,13 @@ pcl::visualization::PCLVisualizer::addCo
+@@ -617,17 +617,17 @@ pcl::visualization::PCLVisualizer::addCo
+   axes_colors->InsertNextValue (1.0);
+ 
+   vtkSmartPointer<vtkPolyData> axes_data = axes->GetOutput ();
+-  axes_data->Update ();
++  axes->Update ();
    axes_data->GetPointData ()->SetScalars (axes_colors);
  
    vtkSmartPointer<vtkTubeFilter> axes_tubes = vtkSmartPointer<vtkTubeFilter>::New ();
@@ -258,16 +1009,78 @@ diff -up PCL-1.6.0-Source/visualization/src/pcl_visualizer.cpp.vtk6 PCL-1.6.0-So
  
    vtkSmartPointer<vtkLODActor> axes_actor = vtkSmartPointer<vtkLODActor>::New ();
    axes_actor->SetMapper (axes_mapper);
-@@ -825,7 +825,7 @@ pcl::visualization::PCLVisualizer::creat
-     actor = vtkSmartPointer<vtkLODActor>::New ();
+@@ -835,7 +835,7 @@ pcl::visualization::PCLVisualizer::addPo
+     line_1->SetPoint1 (cloud->points[i].x, cloud->points[i].y, cloud->points[i].z);
+     line_1->SetPoint2 (p.x, p.y, p.z);
+     line_1->Update ();
+-    polydata_1->AddInput (line_1->GetOutput ());
++    polydata_1->AddInputData (line_1->GetOutput ());
+     line_1_colors->InsertNextTupleValue (green);
+   }
+   polydata_1->Update ();
+@@ -862,7 +862,7 @@ pcl::visualization::PCLVisualizer::addPo
+     line_2->SetPoint1 (cloud->points[i].x, cloud->points[i].y, cloud->points[i].z);
+     line_2->SetPoint2 (p.x, p.y, p.z);
+     line_2->Update ();
+-    polydata_2->AddInput (line_2->GetOutput ());
++    polydata_2->AddInputData (line_2->GetOutput ());
+     line_2_colors->InsertNextTupleValue (blue);
+   }
+   polydata_2->Update ();
+@@ -871,8 +871,8 @@ pcl::visualization::PCLVisualizer::addPo
  
-   vtkSmartPointer<vtkDataSetMapper> mapper = vtkSmartPointer<vtkDataSetMapper>::New ();
--  mapper->SetInput (data);
-+  mapper->SetInputData (data);
+   // Assemble the two sets of lines
+   vtkSmartPointer<vtkAppendPolyData> alldata = vtkSmartPointer<vtkAppendPolyData>::New ();
+-  alldata->AddInput (line_1_data);
+-  alldata->AddInput (line_2_data);
++  alldata->AddInputData (line_1_data);
++  alldata->AddInputData (line_2_data);
  
-   if (use_scalars)
+   // Create an Actor
+   vtkSmartPointer<vtkLODActor> actor;
+@@ -1094,7 +1094,7 @@ pcl::visualization::PCLVisualizer::creat
+   else
+   {
+     vtkSmartPointer<vtkDataSetMapper> mapper = vtkSmartPointer<vtkDataSetMapper>::New ();
+-    mapper->SetInput (data);
++    mapper->SetInputData (data);
+ 
+     if (use_scalars)
+     {
+@@ -1168,7 +1168,7 @@ pcl::visualization::PCLVisualizer::creat
+   else
    {
-@@ -1731,7 +1731,7 @@ pcl::visualization::PCLVisualizer::addMo
+     vtkSmartPointer<vtkDataSetMapper> mapper = vtkSmartPointer<vtkDataSetMapper>::New ();
+-    mapper->SetInput (data);
++    mapper->SetInputData (data);
+ 
+     if (use_scalars)
+     {
+@@ -1548,9 +1548,9 @@ pcl::visualization::PCLVisualizer::setSh
+           {
+             PCL_INFO ("[pcl::visualization::PCLVisualizer::setShapeRenderingProperties] Normals do not exist in the dataset, but Gouraud shading was requested. Estimating normals...\n");
+             vtkSmartPointer<vtkPolyDataNormals> normals = vtkSmartPointer<vtkPolyDataNormals>::New ();
+-            normals->SetInput (actor->GetMapper ()->GetInput ());
++            normals->SetInputData (actor->GetMapper ()->GetInput ());
+             normals->Update ();
+-            vtkDataSetMapper::SafeDownCast (actor->GetMapper ())->SetInput (normals->GetOutput ());
++            vtkDataSetMapper::SafeDownCast (actor->GetMapper ())->SetInputData (normals->GetOutput ());
+           }
+           actor->GetProperty ()->SetInterpolationToGouraud ();
+           break;
+@@ -1561,9 +1561,9 @@ pcl::visualization::PCLVisualizer::setSh
+           {
+             PCL_INFO ("[pcl::visualization::PCLVisualizer::setShapeRenderingProperties] Normals do not exist in the dataset, but Phong shading was requested. Estimating normals...\n");
+             vtkSmartPointer<vtkPolyDataNormals> normals = vtkSmartPointer<vtkPolyDataNormals>::New ();
+-            normals->SetInput (actor->GetMapper ()->GetInput ());
++            normals->SetInputData (actor->GetMapper ()->GetInput() );
+             normals->Update ();
+-            vtkDataSetMapper::SafeDownCast (actor->GetMapper ())->SetInput (normals->GetOutput ());
++            vtkDataSetMapper::SafeDownCast (actor->GetMapper ())->SetInputData (normals->GetOutput ());
+           }
+           actor->GetProperty ()->SetInterpolationToPhong ();
+           break;
+@@ -2277,7 +2277,7 @@ pcl::visualization::PCLVisualizer::addMo
  
    vtkSmartPointer <vtkTransformFilter> trans_filter = vtkSmartPointer<vtkTransformFilter>::New ();
    trans_filter->SetTransform (transform);
@@ -276,79 +1089,52 @@ diff -up PCL-1.6.0-Source/visualization/src/pcl_visualizer.cpp.vtk6 PCL-1.6.0-So
    trans_filter->Update();
  
    // Create an Actor
-@@ -1958,7 +1958,7 @@ pcl::visualization::PCLVisualizer::addTe
-   // Create an Actor
-   vtkSmartPointer<vtkTextActor> actor = vtkSmartPointer<vtkTextActor>::New ();
-   actor->SetPosition (xpos, ypos);
--  actor->SetInput (text.c_str ());
-+  actor->SetInputData (text.c_str ());
- 
-   vtkSmartPointer<vtkTextProperty> tprop = actor->GetTextProperty ();
-   tprop->SetFontSize (10);
-@@ -1994,7 +1994,7 @@ pcl::visualization::PCLVisualizer::addTe
-   // Create an Actor
-   vtkSmartPointer<vtkTextActor> actor = vtkSmartPointer<vtkTextActor>::New ();
-   actor->SetPosition (xpos, ypos);
--  actor->SetInput (text.c_str ());
-+  actor->SetInputData (text.c_str ());
- 
-   vtkSmartPointer<vtkTextProperty> tprop = actor->GetTextProperty ();
-   tprop->SetFontSize (10);
-@@ -2030,7 +2030,7 @@ pcl::visualization::PCLVisualizer::addTe
-   // Create an Actor
-   vtkSmartPointer<vtkTextActor> actor = vtkSmartPointer<vtkTextActor>::New ();
-   actor->SetPosition (xpos, ypos);
--  actor->SetInput (text.c_str ());
-+  actor->SetInputData (text.c_str ());
- 
-   vtkSmartPointer<vtkTextProperty> tprop = actor->GetTextProperty ();
-   tprop->SetFontSize (fontsize);
-@@ -2063,7 +2063,7 @@ pcl::visualization::PCLVisualizer::updat
- 	// Retrieve the Actor
- 	vtkTextActor* actor = vtkTextActor::SafeDownCast (am_it->second); 
- 	actor->SetPosition (xpos, ypos);
--	actor->SetInput (text.c_str ());
-+	actor->SetInputData (text.c_str ());
- 
- 	actor->Modified ();
- 
-@@ -2088,7 +2088,7 @@ pcl::visualization::PCLVisualizer::updat
- 	// Create the Actor
- 	vtkTextActor* actor = vtkTextActor::SafeDownCast (am_it->second); 
- 	actor->SetPosition (xpos, ypos);
--	actor->SetInput (text.c_str ());
-+	actor->SetInputData (text.c_str ());
- 
- 	vtkSmartPointer<vtkTextProperty> tprop = actor->GetTextProperty ();
- 	tprop->SetColor (r, g, b);
-@@ -2116,7 +2116,7 @@ pcl::visualization::PCLVisualizer::updat
- 	vtkTextActor *actor = vtkTextActor::SafeDownCast (am_it->second);
- 	
- 	actor->SetPosition (xpos, ypos);
--	actor->SetInput (text.c_str ());
-+	actor->SetInputData (text.c_str ());
- 
- 	vtkTextProperty* tprop = actor->GetTextProperty ();
- 	tprop->SetFontSize (fontsize);
-@@ -2158,7 +2158,7 @@ pcl::visualization::PCLVisualizer::updat
-   vtkPolyDataMapper* mapper = static_cast<vtkPolyDataMapper*>(am_it->second.actor->GetMapper ());
-   mapper->SetScalarRange (minmax);
-   mapper->SetScalarModeToUsePointData ();
--  mapper->SetInput (data);
-+  mapper->SetInputData (data);
-   // Modify the actor
-   am_it->second.actor->SetMapper (mapper);
-   am_it->second.actor->Modified ();
-@@ -2331,7 +2331,7 @@ pcl::visualization::PCLVisualizer::addPo
+@@ -2751,7 +2751,7 @@ pcl::visualization::PCLVisualizer::updat
+   // Update the data
+   vtkPolyData *data = static_cast<vtkPolyData*>(am_it->second.actor->GetMapper ()->GetInput ());
+   data->GetPointData ()->SetScalars (scalars);
+-  data->Update ();
++  //color_handler->Update ();
+   // Modify the mapper
+   if (use_vbos_)
+   {
+@@ -2771,7 +2771,7 @@ pcl::visualization::PCLVisualizer::updat
+     vtkPolyDataMapper* mapper = static_cast<vtkPolyDataMapper*>(am_it->second.actor->GetMapper ());
+     mapper->SetScalarRange (minmax);
+     mapper->SetScalarModeToUsePointData ();
+-    mapper->SetInput (data);
++    mapper->SetInputData (data);
+     // Modify the actor
+     am_it->second.actor->SetMapper (mapper);
+     am_it->second.actor->Modified ();
+@@ -2876,7 +2876,7 @@ pcl::visualization::PCLVisualizer::addPo
+     poly_grid->Allocate (1, 1);
+     poly_grid->InsertNextCell (polygon->GetCellType (), polygon->GetPointIds ());
+     poly_grid->SetPoints (poly_points);
+-    poly_grid->Update ();
++    //poly_grid->Update ();
+ 
+     createActorFromVTKDataSet (poly_grid, actor);
+     actor->GetProperty ()->SetRepresentationToWireframe ();
+@@ -3001,7 +3001,7 @@ pcl::visualization::PCLVisualizer::updat
+   cells->Squeeze ();
+   // Set the the vertices
+   polydata->SetStrips (cells);
+-  polydata->Update ();
++  //polydata->Update ();
+ 
+   return (true);
+ }
+@@ -3056,7 +3056,7 @@ pcl::visualization::PCLVisualizer::addPo
  
    // Setup actor and mapper
    vtkSmartPointer < vtkPolyDataMapper > mapper = vtkSmartPointer<vtkPolyDataMapper>::New ();
 -  mapper->SetInput (polyData);
-+  mapper->SetInput Data(polyData);
++  mapper->SetInputData(polyData);
  
    vtkSmartPointer < vtkActor > actor = vtkSmartPointer<vtkActor>::New ();
    actor->SetMapper (mapper);
-@@ -2465,7 +2465,7 @@ pcl::visualization::PCLVisualizer::rende
+@@ -3197,7 +3197,7 @@ pcl::visualization::PCLVisualizer::rende
  
    vtkSmartPointer<vtkTransformFilter> trans_filter_center = vtkSmartPointer<vtkTransformFilter>::New ();
    trans_filter_center->SetTransform (trans_center);
@@ -357,10 +1143,42 @@ diff -up PCL-1.6.0-Source/visualization/src/pcl_visualizer.cpp.vtk6 PCL-1.6.0-So
    trans_filter_center->Update ();
  
    vtkSmartPointer<vtkPolyDataMapper> mapper = vtkSmartPointer<vtkPolyDataMapper>::New ();
-@@ -3161,5 +3161,5 @@ pcl::visualization::FPSCallback::Execute
-   float fps = 1.0 / ren->GetLastRenderTimeInSeconds ();
-   char buf[128];
-   sprintf (buf, "%.1f FPS", fps);
--  actor_->SetInput (buf);
-+  actor_->SetInputData (buf);
- }
+@@ -3252,7 +3252,7 @@ pcl::visualization::PCLVisualizer::rende
+ 
+   // Get camera positions
+   vtkPolyData *sphere = subdivide->GetOutput ();
+-  sphere->Update ();
++  subdivide->Update ();
+ 
+   std::vector<Eigen::Vector3f> cam_positions;
+   if (!use_vertices)
+@@ -3679,7 +3679,7 @@ pcl::visualization::PCLVisualizer::fromH
+   // Convert the PointCloud to VTK PolyData
+   convertPointCloudToVTKPolyData (geometry_handler, polydata, initcells);
+   // use the given geometry handler
+-  polydata->Update ();
++  //polydata->Update ();
+ 
+   // Get the colors from the handler
+   bool has_colors = false;
+diff -up ./visualization/src/vtk/vtkVertexBufferObjectMapper.cxx.vtk6 ./visualization/src/vtk/vtkVertexBufferObjectMapper.cxx
+--- ./visualization/src/vtk/vtkVertexBufferObjectMapper.cxx.vtk6	2013-08-21 02:32:51.027493881 +0000
++++ ./visualization/src/vtk/vtkVertexBufferObjectMapper.cxx	2013-08-21 02:42:30.140580897 +0000
+@@ -146,7 +146,7 @@ void vtkVertexBufferObjectMapper::SetInp
+ //  std::cout << "SetInput" << endl;
+   if(input)
+   {
+-    this->SetInputConnection(0, input->GetProducerPort());
++    this->SetInput(input);
+   }
+   else
+   {
+@@ -162,7 +162,7 @@ void vtkVertexBufferObjectMapper::SetInp
+ //  std::cout << "SetInput" << endl;
+   if(input)
+   {
+-    this->SetInputConnection(0, input->GetProducerPort());
++    this->SetInput(input);
+   }
+   else
+   {

diff --git a/pcl.spec b/pcl.spec
index d0a4067..4719889 100644
--- a/pcl.spec
+++ b/pcl.spec
@@ -1,17 +1,16 @@
 Name:           pcl
-Version:        1.6.0
-Release:        7%{?dist}
+Version:        1.7.0
+Release:        1%{?dist}
 Summary:        Library for point cloud processing
 
 Group:          System Environment/Libraries
 License:        BSD
 URL:            http://pointclouds.org/
-Source0:        http://www.pointclouds.org/assets/files/1.6.0/PCL-1.6.0-Source.tar.bz2
-Patch0:         PCL-1.4.0-Source-fedora.patch
-Patch1:         pcl-1.6.0-boost153.patch
-Patch2:         pcl-1.6.0-arm.patch
+Source0:        https://github.com/PointCloudLibrary/pcl/archive/pcl-1.7.0.tar.gz
 # Patch to compile against vtk 6.0.0
-Patch3:         pcl-vtk6.patch
+Patch0:         %{name}-vtk6.patch
+# Patch to compile against system metslib
+Patch1:         %{name}-1.7.0-metslib.patch
 
 # For plain building
 BuildRequires:  cmake, gcc-c++, boost-devel
@@ -24,7 +23,7 @@ BuildRequires:  tetex-latex
 %endif
 
 # mandatory
-BuildRequires:  eigen3-static, flann-devel, cminpack-devel, vtk-devel, gl2ps-devel
+BuildRequires:  eigen3-static, flann-devel, cminpack-devel, vtk-devel, gl2ps-devel, metslib-static
 # optional
 BuildRequires:  qhull-devel, libusb1-devel, gtest-devel qtwebkit-devel
 %ifarch %{ix86} x86_64
@@ -77,14 +76,13 @@ Library.
 
 
 %prep
-%setup -q -n PCL-%{version}-Source
-%patch0 -p2 -b .fedora
-%patch1 -p0 -b .boost153
-%patch2 -p0 -b .arm
-%patch3 -p1 -b .vtk6
+%setup -q -n %{name}-%{name}-%{version}
+%patch0 -p1 -b .vtk6
+%patch1 -p0 -b .metslib
 # Just to make it obvious we're not using any of these
-rm -rf  3rdparty
-
+rm -fr recognition/include/pcl/recognition/3rdparty/metslib
+rm -fr surface/src/3rdparty/opennurbs
+rm -rf surface/include/pcl/surface/3rdparty/opennurbs
 
 %build
 mkdir build
@@ -188,6 +186,10 @@ rm -rf $RPM_BUILD_ROOT%{_datadir}/doc/%{name}-1.6
 
 
 %changelog
+* Wed Aug 21 2013 Rich Mattes <richmattes@gmail.com> - 1.7.0-1
+- Update to 1.7.0
+- Update vtk 6 patch for 1.7.0
+
 * Sat Jul 27 2013 pmachata@redhat.com - 1.6.0-7
 - Rebuild for boost 1.54.0
 

diff --git a/sources b/sources
index 0597c87..595f48e 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-f83ca5d0ff290412b0807864b95eba26  PCL-1.6.0-Source.tar.bz2
+e2ac2d2e72825d991c6d194f9586b5d8  pcl-1.7.0.tar.gz

                 reply	other threads:[~2026-06-25  5:49 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=178236655488.1.12212453573959732129.rpms-pcl-e83d2a1b533f@fedoraproject.org \
    --to=richmattes@gmail.com \
    --cc=git-commits@fedoraproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox