Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Cone as a primitive parametric shape. #593

Merged
merged 1 commit into from
Jun 17, 2024

Conversation

bperseghetti
Copy link
Member

@bperseghetti bperseghetti commented May 13, 2024

🦟 Bug fix

Summary

This helps add the missing cone geometry for primitive/basic parametric shapes:

conetopple
cone

And is also valuable for visualizations of emitters/source that typically have conic-based spread as seen in this acoustic attack on an IMU by showing the affected area:

drone_attack

Associated PRs:

Checklist

  • Signed all commits for DCO
  • Added tests
  • Updated documentation (as needed)
  • Updated migration guide (as needed)
  • Consider updating Python bindings (if the library has them)
  • codecheck passed (See contributing)
  • All tests passed (See test coverage)
  • While waiting for a review on your PR, please help review another open pull request to support the maintainers

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.

@github-actions github-actions bot added 🌱 garden Ignition Garden 🎵 harmonic Gazebo Harmonic labels May 13, 2024
Copy link
Contributor

@ahcorde ahcorde left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

did you add cpp tests?

include/gz/math/Cone.hh Outdated Show resolved Hide resolved
include/gz/math/Cone.hh Show resolved Hide resolved
include/gz/math/Helpers.hh Outdated Show resolved Hide resolved
include/gz/math/MassMatrix3.hh Outdated Show resolved Hide resolved
include/gz/math/MassMatrix3.hh Outdated Show resolved Hide resolved
src/python_pybind11/src/Cone.hh Outdated Show resolved Hide resolved
src/python_pybind11/test/Cone_TEST.py Outdated Show resolved Hide resolved
src/ruby/Cone.i Outdated Show resolved Hide resolved
src/ruby/Cone.i Show resolved Hide resolved
src/ruby/MassMatrix3.i Outdated Show resolved Hide resolved
@bperseghetti
Copy link
Member Author

did you add cpp tests?

Just added it now.

@bperseghetti bperseghetti requested a review from ahcorde May 14, 2024 06:17
@bperseghetti bperseghetti changed the title WIP: Cone Add Cone as a primitive parametric shape. May 14, 2024
@bperseghetti bperseghetti marked this pull request as ready for review May 14, 2024 06:26
include/gz/math/Cone.hh Outdated Show resolved Hide resolved
@bperseghetti bperseghetti requested a review from scpeters May 14, 2024 17:57
@bperseghetti
Copy link
Member Author

@azeey what's the process for getting this merged in and available for everything else that depends on it?
IE: gazebosim/gz-physics#638

@scpeters
Copy link
Member

scpeters commented May 15, 2024

@azeey what's the process for getting this merged in and available for everything else that depends on it? IE: gazebosim/gz-physics#638

For features involving pull requests to multiple repositories, I think the development process is easier to initially target the main branches (currently Ionic) and then backport. The reason it is easier is that we build nightly debians for Ionic on Ubuntu and build dependencies from source for macOS (windows is always built from source). When targeting a stable release, we would need to make a stable release or prerelease for the lower-level packages like gz-math in order to get working CI for higher-level packages like gz-physics. It especially can become a problem if we quickly merge and release a low-level package and then want to change its API/ABI based on insights from reviewing a higher-level pull request. Landing the whole feature on main first will hopefully stabilize the desired API so it can be backported.

EDIT: this is a policy that we had discussed recently but not added to our contributor documentation, so I have proposed adding it to our recommendations in gazebosim/docs#440

include/gz/math/Cone.hh Outdated Show resolved Hide resolved
src/python_pybind11/test/Helpers_TEST.py Outdated Show resolved Hide resolved
@bperseghetti bperseghetti changed the title Add Cone as a primitive parametric shape. Backport: Add Cone as a primitive parametric shape. Jun 17, 2024
@bperseghetti
Copy link
Member Author

@ahcorde @scpeters here's the backport.

@scpeters scpeters changed the title Backport: Add Cone as a primitive parametric shape. Add Cone as a primitive parametric shape. Jun 17, 2024
@scpeters scpeters enabled auto-merge (rebase) June 17, 2024 22:16
@azeey azeey dismissed ahcorde’s stale review June 17, 2024 23:27

Review has been addressed

@scpeters scpeters merged commit 3a36b9d into gazebosim:gz-math7 Jun 17, 2024
11 checks passed
@bperseghetti
Copy link
Member Author

Thanks, @scpeters @azeey can I get this released so the other CIs can work?

@scpeters
Copy link
Member

Thanks, @scpeters @azeey can I get this released so the other CIs can work?

@bperseghetti the first step to making a release involves making a pull request to bump the version number and update the Changelog (see step 2 in the Gazebo Release Instructions - For Each Release). If you're interested to learn this process, that would be a good place to start.

@bperseghetti bperseghetti deleted the pr-cone branch June 21, 2024 01:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🌱 garden Ignition Garden 🎵 harmonic Gazebo Harmonic
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

3 participants