Fix Version/s: None
Component/s: Firefly, firefly_client
create a prototype LSST footprint overlay on image per LSST footprint data of JSON format describing the coverage by lines of segments in the image coordinate domain.
Use the prototype JSON representation from
- is FF-depended by
DM-15332 Create prototype of JSON for afwDetect footprints
- links to
I've had a look at this in Cindy's office. It looks very nice already!
A few comments:
- Right now when panning a display with Footprints, they disappear during panning and reappear - pretty quickly - when panning ends. However, when zooming, the Footprints remain at their old position and size on the screen as the underlying image zooms, and only then switch to their new position and size. This doesn't look very good and can be momentarily misleading to the user. I think it would be preferable to have the zoom behavior be i) Footprints disappear, ii) image zooms, iii) Footprints reappear. Having pan and zoom consistent with each other will make sense to users.
- I like that the ability to display an ID for each Footprint was included. It helps the user understand what is going on when there are overlaps. I would suggest that the styling for the text not include the transparency of the chosen color, though. The text becomes quite hard to see at the transparency levels that I think users will want. Let's try having the text at 100% alpha.
- Cindy will work on a basic ability to make Footprints clickable. We discussed what the UI cue for this should be, and for a starting point we are going to try highlighting only the border of the Footprint, but not changing its fill color. We discussed, but do not have a resolution yet, for how to handle on-image Footprint selection in the frequent case when two or more Footprints cover overlapping areas and have coincident borders. We discussed the possible use of parent-child relationships between Footprints to assist with this. See a comment on
Seeing this work has already made it much easier for me to articulate where we should go next in terms of UI support for invoking this capability and using it to explore data. Thanks!
It is already in a form that I would be happy to show privately to Science Pipelines folks to help us decide which behaviors are most important. We should get more functionality in place before delivering a public demo, though.
I think this is on its way to becoming a very useful tool for work on deblending algorithms! Both the DM Science Pipelines team and science collaborations like the DESC will be interested.
- the LSST footprint is displayed in three modes, 'fill', 'outline', 'outline with text', and the peaks of each footprint is shown by symbol 'x'.
- for outline mode, a polygon is displayed around each footprint. One footprint unit may consist of more than one polygon object.
- for fill mode, filled polygon(s) with some transparency of the outline color is displayed for each footprint unit
- for outline with text mode, each footprint is displayed by polygon(s) and some text, i.e. footprint id.
- the footprint is selectable. the outline of the selected footprint is displayed with a highlighted color.
The relevant function is added to firefly_client to support LSST footprint display.