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

Support branching autos from the UI #721

Open
lidor51 opened this issue Sep 14, 2024 · 7 comments
Open

Support branching autos from the UI #721

lidor51 opened this issue Sep 14, 2024 · 7 comments
Labels
enhancement New feature or request

Comments

@lidor51
Copy link

lidor51 commented Sep 14, 2024

Defining autonomous as a prioritized decision tree, each node can be either a path or a decision tree of its own.
Doing this from the UI would allow user-friendly way to define complex autos.

image

Each branch would have a condition, conditions would be checked from left to right (this is why it's a "prioritized" decision tree). We would like to make the paths (\w their conditions?) draggable.
Conditions should be reusable for a user-friendly experience.
If neither of the conditions are met, the auto finished.

@lidor51 lidor51 added the enhancement New feature or request label Sep 14, 2024
@lidor51
Copy link
Author

lidor51 commented Sep 14, 2024

I suggest a vertical scrolling in this window, and scrolling/right-left buttons horizontally.
Alongside keyboards arrows navigation in the tree.

@mjansen4857
Copy link
Owner

I think this would be useful, but this is a very large and time-consuming feature to implement. So, I'm not currently targeting it for 2025 unless all remaining tasks for 2025 are done with enough time left to properly implement it before the end of beta.

@lidor51
Copy link
Author

lidor51 commented Sep 25, 2024

Indeed a big feature, I suggest to keep it open to a future iteration.

@HenryLeC
Copy link

HenryLeC commented Dec 7, 2024

This isn't exactly what you were thinking but this is achievable with Conditional Command groups #923
@lidor51 Is there anything you can think of that a directed graph could achieve that my pull request can't besides being cleaner?

@lidor51
Copy link
Author

lidor51 commented Dec 7, 2024

Hey that's cool! Besides the different visualisation, it seems like there're a few differences from my suggestion.

I have a few questions on the screenshot you put:
17335932707358633460928559814498

  1. Is 'Shoot from 1' is "on true" & 'Sweep line' is "on false"?
    If so, not sure if this is a self explainatory experience.

  2. Is it possible to add conditional group inside another conditional group's onTrue/onFalse?

  3. IMO it's a very important feature being able to save a named sub-branch so you don't need to duplicate and re-define it again in every auto. Alternatively, a more general approach is supporting "sub-autos" (practically, being able to put an auto as a component of another auto).

@HenryLeC
Copy link

HenryLeC commented Dec 7, 2024

  1. Yes, thats exactly what it is. It's the same format as the code, and it also explains it in a tooltip if you hover over the group name. The docs will also be helpful for this
  2. Yes, that is possible. You would just need to add a conditional command group into the group for onTrue or onFalse. (A conditional command group is not a command group in the pathplanner UI, it is a regular command that happens to have subcommands)
  3. This should be very easy to implement and I am willing to do sub autos if @mjansen4857 will allow it

@lidor51
Copy link
Author

lidor51 commented Dec 9, 2024

  1. In both conditional group & deadline, I believe the appropriate name should be "conditionName" rather than "conditionalName".
  2. Cool.
  3. I think it's very important not only in this feature context, autos duplication is very annoying and requires a lot of redundant maintenance.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants