00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037 #ifndef PCL_PCL_VISUALIZER_SHAPES_H_
00038 #define PCL_PCL_VISUALIZER_SHAPES_H_
00039
00040 #include <pcl/point_cloud.h>
00041 #include <pcl/ModelCoefficients.h>
00042 #include <vtkSmartPointer.h>
00043 #include <vtkDataSet.h>
00044 #include <vtkPolyData.h>
00045 #include <vtkPolygon.h>
00046 #include <vtkUnstructuredGrid.h>
00047 #include <vtkConeSource.h>
00048 #include <vtkDiskSource.h>
00049
00050
00051
00052 #include <vtkPlaneSource.h>
00053 #include <vtkSphereSource.h>
00054 #include <vtkTransform.h>
00055 #include <vtkTransformPolyDataFilter.h>
00056 #include <vtkLineSource.h>
00057 #include <vtkTubeFilter.h>
00058
00059 namespace pcl_visualization
00060 {
00064 template <typename PointT> vtkSmartPointer<vtkDataSet> inline createPolygon (const pcl::PointCloud<PointT> &cloud);
00065
00070 template <typename P1, typename P2> inline vtkSmartPointer<vtkDataSet> createLine (const P1 &pt1, const P2 &pt2);
00071
00077 template <typename PointT> vtkSmartPointer<vtkDataSet> inline createSphere (const PointT ¢er, double radius, int res = 10);
00078
00080
00084 vtkSmartPointer<vtkDataSet> createCylinder (const pcl::ModelCoefficients &coefficients, int numsides = 30);
00085
00090 vtkSmartPointer<vtkDataSet> createSphere (const pcl::ModelCoefficients &coefficients, int res = 10);
00091
00095 vtkSmartPointer<vtkDataSet> createLine (const pcl::ModelCoefficients &coefficients);
00096
00100 vtkSmartPointer<vtkDataSet> createPlane (const pcl::ModelCoefficients &coefficients);
00101
00106 vtkSmartPointer<vtkDataSet> create2DCircle (const pcl::ModelCoefficients &coefficients, double z = 0.0);
00107
00111 vtkSmartPointer<vtkDataSet> createCone (const pcl::ModelCoefficients &coefficients);
00112
00113 }
00114
00115 #include "libpcl_visualization/common/shapes.hpp"
00116
00117 #endif