Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is a reaction to the upcoming LVR update (3.0.0). It contains two major changes:
Interchangable Half-Edge-Mesh
The map and all plugins only use the BaseMesh from LVR. This means that as long as you implement the BaseMesh interface of LVR, you can use any half-edge mesh implementation you want. The implementations can be selected with a new ROS parameter “hem” (Half-Edge-Mesh). "hem: pmp" or "hem: lvr" ist possible. If no parameter is specified the new pmp mesh is chosen. The old behavior can be restored by setting "hem" to "lvr". The pmp mesh turned out to be much more robust to load any mesh coming from other meshing software than lvr (such as meshlab or Open3D). Internally, I used a smart pointer to handle the BaseMesh because it makes things easier.
Loading/Writing HDF5
The HDF5 structure has changed slightly over time so that the description of the mesh_tools paper is not valid anymore. I changed parts of it back so that it gets more like the papers again. It also makes things easier to handle since vertex attributes are now separated from the actual mesh geometry inside the HDF5.
Cleanup
I have also removed the
mesh_client
package for which we have no tests and which is currently not used elsewhere.Testing instructions
This PR works together with: