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 Initial GUI #17

Open
wants to merge 5 commits into
base: main
Choose a base branch
from
Open

Add Initial GUI #17

wants to merge 5 commits into from

Conversation

jeffstjean
Copy link
Member

Pretty extensive changes to get tkinter working. I had to off-load all the algo still to a child thread since Tkinter needs to run in the main thread.

This is just an initial pass at the GUI but it has a lot of the infrastructure to build off of for smaller, easier to review changes in the future.

All messaging between threads is done using queues. The Application has a queue for inbound messages (eg. telemetry, images) and a queue for outbound messages (eg. if the user changes parameters and presses save) so we can pass messages back to the algorithm. All messages are passed using the types defined in Messages.

It still needs some cleanup and better typing but wanted to share as a proof of concept.

image

Some future TODOs:

  1. Add markers for each detected centroid by passing a Point (one for each colour)
  2. Figure out why the image has some weird padding around it (that's why it's really small)
  3. Handle algorithm parameter changes (eg. updating the threshold arguments)
  4. Add interface for selecting the target landing zone (by clicking on the marker)
  5. Add polygons around each detected cluster (once Cluster algo is done)

@jeffstjean jeffstjean requested a review from khathab February 10, 2024 20:19
@jeffstjean jeffstjean self-assigned this Feb 10, 2024
@jeffstjean
Copy link
Member Author

This is probably going to have conflicts with #16. We'll merge yours first and then I'll resolve conflicts.

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

Successfully merging this pull request may close these issues.

1 participant