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

Maliput road networks inspection #207

Open
5 of 14 tasks
hidmic opened this issue Jul 24, 2019 · 8 comments
Open
5 of 14 tasks

Maliput road networks inspection #207

hidmic opened this issue Jul 24, 2019 · 8 comments

Comments

@hidmic
Copy link
Contributor

hidmic commented Jul 24, 2019

Description

Currently, our maliput_viewer can render Maliput road geometries for visual inspection. However, it does not provide similar capabilities for road network rule books.

This ticket tracks progress as delphyne-guis capabilities are augmented to fill that gap.

Stages

Work's split in two stages.

1. Consolidate inspection procedures

This stage serves two main purposes:

  • To verify the practical usefulness of the inspection outcome and how it is presented (or even help defining how it should be presented).
  • To implement the inspection logic itself, which is the same regardless of how I/O is handled.

To this end, the existing malidrive_query command line tool can be used as grounds to work on each POC.

Tasks

2. Support UI-based inspection

This stage deals with actually adding road network inspection support to delphyne-guis visualizer. It does so incrementally, in two substages, using ignition-guis plug-in widget infrastructure.

2.1 Text-only I/O

The simplest transition from malidrive_query command line interface. This may include listing intersections, phases and/or rules in list or tree widgets, input boxes for region selection, dialogs, etc., suitable for each inspection procedure.

Tasks

2.2 Graphical I/O

Once text I/O is in place, inspection support can be extended to provide graphical I/O as well. This may include include highlighting a rule's region of influence and/or providing visual cues for it [1], rendering traffic lights, rendering floating labels, supporting point-n-click lane and/or intersection selection [2], etc., suitable for each inspection procedure.

[1] Ignition rendering struggles somewhat with large road networks. Road overlays may be too high a burden for it. Road outlines may help use here, but we might hit a performance limitation.
[2] Click position-to-scene coordinates transformation appears to be non-trivial in ignition-rendering / ogre. To be confirmed.

Tasks
@hidmic
Copy link
Contributor Author

hidmic commented Jul 24, 2019

@agalbachicar PTAL, I think it correctly reflects what we discussed.

@agalbachicar
Copy link
Collaborator

agalbachicar commented Jul 24, 2019

Agreed. It does so. @andrewbest-tri would you like to take a look? After your approval, I think we can kick off different issues in particular repositories to fulfill the functionality.

@andrewbest-tri
Copy link
Collaborator

Looks good to me. Can we add a note that we want to inspedt *Rules not just right of way? Vehicle usage, direction usage, speed limit, etc...

but we can start with right-of-way

@liangfok
Copy link
Collaborator

liangfok commented Jul 24, 2019

Looks good. Longer term, can the visual GUI be extended to enable editing and save-as in case we want to change something?

@hidmic
Copy link
Contributor Author

hidmic commented Jul 24, 2019

@liangfok hmm that's a much larger task. Not only because of edition support, but also because our UI so far has been backend agnostic. So, yes, it'd be possible, but it'd be a long long term goal.

@liangfok
Copy link
Collaborator

Okay, let's just keep it in mind.

@stonier
Copy link
Collaborator

stonier commented Jul 30, 2019

[2] Click position-to-scene coordinates transformation appears to be non-trivial in ignition-rendering / ogre. To be confirmed.

That seems really odd. Even in simple frameworks, like libqglviewer, there is simple api to go from cursor to the visible scene point underneath the cursor. TLDR; must be something there in Ogre at least, maybe not exposed via ignition?

@hidmic
Copy link
Contributor Author

hidmic commented Jul 31, 2019

TLDR; must be something there in Ogre at least, maybe not exposed via ignition?

That may be the case. I've opened #215 to follow up on this.

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

No branches or pull requests

5 participants