A header only c++ library for fast convex decomposition. In the basic pipeline, it implements ellipsoid based regional inflation to model free space from a given path inside a point cloud. Detials of the algorithm is proposed in "S. Liu, M. Watterson, K. Mohta, K. Sun, S. Bhattacharya, C.J. Taylor and V. Kumar. Planning Dynamically Feasible Trajectories for Quadrotors using Safe Flight Corridors in 3-D Complex Environments. ICRA 2017".
DecompUtil is a header only library, several test nodes are compiled during the installation.
$ mkdir build && cd build && cmake .. && make
$ cd mv decomp_util ~/catkin_ws/src
$ cd ~/catkin_ws & catkin_make_isolated -DCMAKE_BUILD_TYPE=Release
To check if everything is installed properlly:
$ make test
To link this lib properly, add following in the CMakeLists.txt
find_package(decomp_util REQUIRED)
include_directories(${DECOMP_UTIL_INCLUDE_DIRS})
The examples of using SeedDecomp2D
, LineSegment2D
, EllipsoidDecomp2D
and
IterativeDecomp2D
are plotted as followings:
SeedDecomp2D | LineSegment2D | EllipsoidDecomp2D | IterativeDecomp2D |
---|---|---|---|
The corresponding code for testing can be found in the test
folder.
For more details, please refer to https://sikang.github.io/DecompUtil/index.html
The ROS wrapper for easier use of this package can be found in DecompROS
.