dstl / Stone-Soup

A software project to provide the target tracking community with a framework for the development and testing of tracking algorithms.
https://stonesoup.rtfd.io
MIT License
406 stars 134 forks source link

Introduce grid based action generators and actionable movable classes #892

Closed timothy-glover closed 10 months ago

timothy-glover commented 10 months ago

This pull request introduces actionable features to the movable module. A grid bases actionable movable object has been introduced which works with a corresponding grid based action generator. This enables platforms to move in a grid based fashion. Currently, the NStepDirectionalGridActionGenerator is introduced to allow movement in selected position axes according to a number of steps and step size. This is to be used with the NStepDirectionalGridMovable.

This pull request also introduces a new way for Actionables to interact with generators, making their usage clearer but this has not been implemented for actionable sensors yet.

Documentation has been created for each of the new classes and it has been incorporated into the documentation structure. This required that the movable module, which was previously not included, would also be included in the documentation.

codecov[bot] commented 10 months ago

Codecov Report

Attention: 3 lines in your changes are missing coverage. Please review.

Comparison is base (e6194b2) 93.06% compared to head (5af9310) 93.08%.

Files Patch % Lines
stonesoup/movable/action/move_position_action.py 94.28% 2 Missing :warning:
stonesoup/movable/actionable_movable.py 97.56% 0 Missing and 1 partial :warning:
Additional details and impacted files ```diff @@ Coverage Diff @@ ## main #892 +/- ## ========================================== + Coverage 93.06% 93.08% +0.01% ========================================== Files 196 198 +2 Lines 12287 12363 +76 Branches 2548 2556 +8 ========================================== + Hits 11435 11508 +73 - Misses 599 601 +2 - Partials 253 254 +1 ``` | [Flag](https://app.codecov.io/gh/dstl/Stone-Soup/pull/892/flags?src=pr&el=flags&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=dstl) | Coverage Δ | | |---|---|---| | [integration](https://app.codecov.io/gh/dstl/Stone-Soup/pull/892/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=dstl) | `67.38% <59.21%> (-0.07%)` | :arrow_down: | | [unittests](https://app.codecov.io/gh/dstl/Stone-Soup/pull/892/flags?src=pr&el=flag&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=dstl) | `87.38% <96.05%> (+0.05%)` | :arrow_up: | Flags with carried forward coverage won't be shown. [Click here](https://docs.codecov.io/docs/carryforward-flags?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=dstl#carryforward-flags-in-the-pull-request-comment) to find out more.

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