gazebosim / gz-common

An audio-visual library supports processing audio and video files, a graphics library can load a variety 3D mesh file formats into a generic in-memory representation, and the core library of Gazebo Common contains functionality that spans Base64 encoding/decoding to thread pools.
https://gazebosim.org
Apache License 2.0
15 stars 39 forks source link

Add new function in MeshManager to merge all submeshes of a mesh into one #588

Closed iche033 closed 8 months ago

iche033 commented 8 months ago

🎉 New feature

Summary

Add a new static function in MeshManager to merge all submeshes into one. The new function returns a new mesh with a single combined submesh

Note I also made the ConvexDecomposition function that I added in https://github.com/gazebosim/gz-common/pull/585 static as it does not need to be a member function.

Test it

Added a test that merges two submehes and checked that all its vertices, normals, indices, and texcoords are correct.

Run the UNIT_MeshManager_TEST

Checklist

Note to maintainers: Remember to use Squash-Merge and edit the commit message to match the pull request summary while retaining Signed-off-by messages.

codecov[bot] commented 8 months ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 80.54%. Comparing base (691a087) to head (943ecb2).

Additional details and impacted files ```diff @@ Coverage Diff @@ ## main #588 +/- ## ========================================== + Coverage 80.47% 80.54% +0.06% ========================================== Files 80 80 Lines 13542 13573 +31 ========================================== + Hits 10898 10932 +34 + Misses 2644 2641 -3 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.