Tool path planning and surface segmenter
- These packages run on Ubuntu 16.04 and ROS
- Uses the catkin tools build system
This package depends on PCL 1.8 and VTK 7.1.
- checkinstall
sudo apt install checkinstall
-
Download VTK 7.1
-
Unzip or extract into a user accessible directory
-
CDinto that directory and create a newbuilddirectory -
Run cmake
cd build cmake .. -
Build the library
makeThis will take a while ...
-
Install
sudo checkinstall --pkgname=vtk-7.1The installation process will prompt you to accept/reject some options prior to building the debian, just follow the recommended prompts.
NOTE: Using
checkinstallinstead ofmake installhas the advantage that it builds a debian package which can be easily uninstalled withsudo dpkg -r [packagename].
-
Download PCL 1.8
-
Unzip or extract into a user accessible directory
-
cdinto that directory and locate theCMakeLists.txtfile. -
Locate the
find package(VTK)line (close to line 362) and edit it tofind_package(VTK 7.1 REQUIRED) -
Configure and build
cmake . makeWait until the build finishes, it may take a couple of hours ...
-
Install
sudo checkinstall --pkgname=pcl-1.8The installation process will prompt you to accept/reject some options prior to building the debian, just follow the recommended prompts
NOTE: Using
checkinstallinstead ofmake installhas the advantage that it builds a debian package which can be easily uninstalled withsudo dpkg -r [packagename].
-
Create a catkin workspace and clone this repository in the
srcdirectory -
Build the noether packages
catkin build noetherNote: You can just run catkin build in order to build everything in your workspace including the noether packages
-
Run the unit tests for a package:
catkin run_tests tool_path_planner --no-deps -
Run all unit test in the noether repository
catkin run_tests noether --no-depsNOTE: Press 'q' to close the vtk window and proceed with the test program.
The noether package has a surface raster planner executable which is able to take in a mesh file (.stl format), and generate raster paths on it, you can run it through the launch file with preconfigured parameters as follows:
roslaunch noether surf_raster_planner_application.launch filename:=</absolute/path/to/my/mesh.stl>
or you can run it with your own custom parameters as well by calling the node directly:
rosrun noether surface_raster_planner_application _pt_spacing:=0.05 _line_spacing:=0.15 _intersecting_plane_height:=0.05 _min_hole_size:=0.01 _min_segment_size:=0.01 _debug_on:=False _console_debug_on:=False _file_path:=</path/to/mesh/file.stl>
The debug_on and console_debug_on argurments enable visual and console debugging respectively. During visual debugging press 'q' on the vtk window in order to step through.
Work is in progress to read in point cloud (.pcd) files, but meshing results are not reliable right now.