This adds a new /gui/track topic using the CameraTrack message to control multiple types of tracking and associated pgain(s), target(s) and offset(s). Furthermore it publishes a tracking camera status CameraTrack message on /gui/currently_tracked
This also adds an 3 unique follow modes and a tracking mode all able to be set from either the /gui/track topic or more ideally from the user gui.
The 3 follow modes are in a submenu under the right click top level menu Follow Options > and are:
Follow - Traditional follow mode where camera follows and tracks the same target.
Free Look - Enables a user to follow a target while still using an input device (IE mouse) to look around.
Look At - Only enabled after already selecting a primary object to follow, this allows a user to track a unique secondary target while following the primary target.
The other right click top level menu item added is Track, where the gui camera can be moved anywhere in the simulator but will always track the selected object.
These all respect using the escape key to stop any form of tracking.
[x] 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.
🎉 New feature
Summary
I would like to thank NXP for their support in enabling this work.
Depends on:
This adds a new
/gui/track
topic using the CameraTrack message to control multiple types of tracking and associated pgain(s), target(s) and offset(s). Furthermore it publishes a tracking camera status CameraTrack message on/gui/currently_tracked
This also adds an 3 unique follow modes and a tracking mode all able to be set from either the
/gui/track
topic or more ideally from the user gui.The 3 follow modes are in a submenu under the right click top level menu
Follow Options >
and are:Follow - Traditional follow mode where camera follows and tracks the same target.![follow](https://github.com/gazebosim/gz-gui/assets/10233412/065dac94-e377-488f-a728-1a708835a3eb)
Free Look - Enables a user to follow a target while still using an input device (IE mouse) to look around.![follow_free_look](https://github.com/gazebosim/gz-gui/assets/10233412/c5bd2f8b-ad33-4034-8053-40192d3f2b72)
Look At - Only enabled after already selecting a primary object to follow, this allows a user to track a unique secondary target while following the primary target.![follow_look_at](https://github.com/gazebosim/gz-gui/assets/10233412/883a7899-9160-42b8-9136-b0e318d4f985)
The other right click top level menu item added is![track](https://github.com/gazebosim/gz-gui/assets/10233412/80063052-2930-4712-942c-5de7df8472f2)
Track
, where the gui camera can be moved anywhere in the simulator but will always track the selected object.These all respect using the escape key to stop any form of tracking.
Test it
Use these changes for collection-harmonic.yaml:
Checklist
codecheck
passed (See contributing)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.