moveit
moveit copied to clipboard
Planning scene octomap test
Description
Adding TestPlanWithOctomap
to moveit_cpp_test.cpp
.
This test adds an octomap to the scene and computes a plan. It then clears the octomap and computes the collision distance, which segfaults without #2104 (related: flexible-collision-library/fcl#473).
In comments I've included code that uses PCL to generate an octomap for the test, and then hard-coded the PointCloud2 message, so that PCL needn't be added as a new dependency.
Checklist
- [x] Required by CI: Code is auto formatted using clang-format
- [ ] Extend the tutorials / documentation reference
- [ ] Document API changes relevant to the user in the MIGRATION.md notes
- [x] Create tests, which fail without this PR reference
- [ ] Include a screenshot if changing a GUI
- [ ] While waiting for someone to review your request, please help review another open pull request to support the maintainers
Codecov Report
Merging #2129 into master will decrease coverage by
1.22%
. The diff coverage isn/a
.
@@ Coverage Diff @@
## master #2129 +/- ##
==========================================
- Coverage 57.82% 56.59% -1.23%
==========================================
Files 328 31 -297
Lines 25700 2841 -22859
==========================================
- Hits 14861 1608 -13253
+ Misses 10839 1233 -9606
Continue to review full report at Codecov.
Legend - Click here to learn more
Δ = absolute <relative> (impact)
,ø = not affected
,? = missing data
Powered by Codecov. Last update 1518cbf...d62d6e8. Read the comment docs.
Yeah, these were the options we considered:
- Include a bag file somewhere with a point cloud in it,
- Include the PCL code to generate the point cloud (and add PCL as a dependency), or
- Just include the hardcoded point cloud message.
I think the current state of things is the best compromise between code simplicity (no PCL dependence) and readability (all the PCL code to generate the message is there, just commented out). I'm open to other suggestions, though.
Yeah, these were the options we considered:
1. Include a bag file somewhere with a point cloud in it, 2. Include the PCL code to generate the point cloud (and add PCL as a dependency), or 3. Just include the hardcoded point cloud message.
I think the current state of things is the best compromise between code simplicity (no PCL dependence) and readability (all the PCL code to generate the message is there, just commented out). I'm open to other suggestions, though.
One choice would be to try to fill in the desired pointcloud msg data using a sensor_msgs::PointCloud2Modifier
, although it has the downside of being unconventional
Thanks, @Dale-Koenig -- I didn't know about that, but it's probably the best way to do it. I'll convert it, and see if I can figure out this CI failure.
@JStech can you update this to "WIP" since I believe it was never finished? Or put a little more time into it to get it across the line?