Skip to content

Commit 4e3fdf3

Browse files
authored
Merge pull request #7 from estherag/rolling
RRT* alternative planner
2 parents a965ea6 + 3f5c05e commit 4e3fdf3

File tree

10 files changed

+1831
-8
lines changed

10 files changed

+1831
-8
lines changed

.github/thirdparty.repos

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,7 @@ repositories:
1111
type: git
1212
url: https://github.com/kiko2r/navigation2.git
1313
version: nav2_msgs
14-
14+
ThirdParty/yaets:
15+
type: git
16+
url: https://github.com/fmrico/yaets.git
17+
version: rolling

.github/workflows/rolling.yaml

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -28,24 +28,22 @@ jobs:
2828
- name: build and test
2929
uses: ros-tooling/action-ros-ci@0.4.3
3030
with:
31-
package-name: easynav_gridmap_maps_manager
31+
package-name: easynav_gridmap_maps_manager easynav_gridmap_astar_planner easynav_gridmap_rrtstar_planner
3232
target-ros2-distro: rolling
3333
vcs-repo-file-url: ${GITHUB_WORKSPACE}/.github/thirdparty.repos
34-
skip-test: true
3534
colcon-defaults: |
3635
{
37-
"build": {
38-
"packages-up-to": true,
39-
"mixin": ["coverage-gcc"]
36+
"test": {
37+
"parallel-workers" : 1
4038
}
4139
}
40+
colcon-mixin-name: coverage-gcc
4241
colcon-mixin-repository: https://raw.githubusercontent.com/colcon/colcon-mixin-repository/master/index.yaml
43-
4442
- name: Codecov
4543
uses: codecov/codecov-action@v5.4.0
4644
with:
4745
files: ros_ws/lcov/total_coverage.info
4846
flags: unittests
4947
name: codecov-umbrella
5048
# yml: ./codecov.yml
51-
fail_ci_if_error: false
49+
fail_ci_if_error: false
Lines changed: 76 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
cmake_minimum_required(VERSION 3.20)
2+
project(easynav_gridmap_rrtstar_planner)
3+
4+
if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang")
5+
add_compile_options(-Wall -Wextra -Wpedantic)
6+
endif()
7+
8+
set(CMAKE_CXX_STANDARD 23)
9+
set(CMAKE_CXX_STANDARD_REQUIRED ON)
10+
set(CMAKE_CXX_EXTENSIONS OFF)
11+
12+
find_package(ament_cmake REQUIRED)
13+
find_package(easynav_common REQUIRED)
14+
find_package(easynav_core REQUIRED)
15+
find_package(pluginlib REQUIRED)
16+
find_package(nav_msgs REQUIRED)
17+
find_package(grid_map_ros REQUIRED)
18+
find_package(grid_map_msgs REQUIRED)
19+
20+
add_library(${PROJECT_NAME} SHARED
21+
src/easynav_gridmap_rrtstar_planner/GridMapRRTStarPlanner.cpp
22+
src/easynav_gridmap_rrtstar_planner/KDTree.cpp
23+
)
24+
target_include_directories(${PROJECT_NAME} PUBLIC
25+
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
26+
$<INSTALL_INTERFACE:include/${PROJECT_NAME}>
27+
)
28+
target_link_libraries(${PROJECT_NAME} PUBLIC
29+
easynav_common::easynav_common
30+
easynav_core::easynav_core
31+
pluginlib::pluginlib
32+
grid_map_ros::grid_map_ros
33+
${nav_msgs_TARGETS}
34+
${grid_map_msgs_TARGETS}
35+
)
36+
37+
install(
38+
DIRECTORY include/
39+
DESTINATION include/${PROJECT_NAME}
40+
)
41+
42+
install(TARGETS
43+
${PROJECT_NAME}
44+
EXPORT export_${PROJECT_NAME}
45+
ARCHIVE DESTINATION lib
46+
LIBRARY DESTINATION lib
47+
RUNTIME DESTINATION lib/${PROJECT_NAME}
48+
)
49+
50+
if(BUILD_TESTING)
51+
find_package(ament_lint_auto REQUIRED)
52+
set(ament_cmake_copyright_FOUND TRUE)
53+
set(ament_cmake_cpplint_FOUND TRUE)
54+
ament_lint_auto_find_test_dependencies()
55+
56+
find_package(ament_cmake_gtest REQUIRED)
57+
# add_subdirectory(tests)
58+
endif()
59+
60+
ament_export_include_directories("include/${PROJECT_NAME}")
61+
ament_export_libraries(${PROJECT_NAME})
62+
ament_export_targets(export_${PROJECT_NAME})
63+
64+
# Register the planning plugins
65+
pluginlib_export_plugin_description_file(easynav_core easynav_gridmap_rrtstar_planner_plugins.xml)
66+
67+
ament_export_dependencies(
68+
easynav_common
69+
easynav_core
70+
easynav_simple_common
71+
pluginlib
72+
nav_msgs
73+
grid_map_ros
74+
grid_map_msgs
75+
)
76+
ament_package()
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
<class_libraries>
2+
<library path="easynav_gridmap_rrtstar_planner">
3+
<class name="easynav_gridmap_rrtstar_planner/GridMapRRTStarPlanner" type="easynav::GridMapRRTStarPlanner" base_class_type="easynav::PlannerMethodBase">
4+
<description>
5+
A implementation for the RRT* path planner.
6+
</description>
7+
</class>
8+
</library>
9+
</class_libraries>

0 commit comments

Comments
 (0)