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

Plugin: LayerComparer #687

Closed
jacobwod opened this issue Mar 2, 2021 · 9 comments
Closed

Plugin: LayerComparer #687

jacobwod opened this issue Mar 2, 2021 · 9 comments
Assignees
Labels
module:client/plugin Functionality that goes into plugins in client new feature Request for adding/changing functionality
Milestone

Comments

@jacobwod
Copy link
Member

jacobwod commented Mar 2, 2021

Simple idea: let user select two layers in two dropdown menus and then easily control the opacity of those layers using a slider. Probably a good idea to place this in a central place in the UI, e.g. top or bottom, and hide entirely when plugin not active. Activation would be made by clicking a control button, next to zoom buttons.

Rough mockup:
Skärmavbild 2021-03-02 kl  15 44 44

@jacobwod jacobwod added module:client/plugin Functionality that goes into plugins in client new feature Request for adding/changing functionality labels Mar 2, 2021
@jacobwod jacobwod added this to the 3.x milestone Mar 2, 2021
@matself
Copy link

matself commented Mar 2, 2021

I see your point, Jacob. However, I think mixing two layers like that will be confusing. Your example shows orthophoto layers, and they can vary considerably in terms of brightness, contrast and saturation. If the aim is to be able to detect changes, it would be hard to quickly determine if a visible difference is an addition or a subtraction.
Instead, let me propose a curtain slider, like on http://kartbild.com. This tool has a similar selection process, i e you select one right hand side layer and one left hand side layer. The layers can be zoomed or panned under the slider, and the slider can me moved from side to side.

@jacobwod
Copy link
Member Author

jacobwod commented Mar 3, 2021

I agree @matself , that's a valid opinion. I have briefly considered the slider option previously but now I'm inclined to reconsider. By the way, great link!

Also, a third possibility would be transforming the mouse cursor to a "magnifying glass", and showing a different layer within the glass.

@persoderstrom
Copy link
Contributor

Varberg has implemented something similar, https://karta.varberg.se/historiska-fonstret/. With magnifying glass, and more options in MENY.

@jacobwod
Copy link
Member Author

jacobwod commented Mar 9, 2021

That's right Per, but it's not a Hajk plugin unfortunately. But I'd be more than glad if someone would convert that solution to Hajk.

@jesade-vbg
Copy link
Contributor

Varberg might make historiska-fönstret a plugin in the future, but probably not 2021 :/

@jacobwod
Copy link
Member Author

OK folks, I took a look at it this afternoon and put together a quick proof-of-concept (using the Dummy plugin as UI container). I think it could work:

Hajk.Slider.First.Demo.mp4

jacobwod added a commit that referenced this issue Apr 13, 2021
- Inital POC, lots of rough edges. This won't probably work on your setup, so don't hold your breath.
- Comments and UI proposals are welcome, as always.
- Part of #687
@jacobwod
Copy link
Member Author

Skarminspelning.2022-04-12.kl.12.27.03.mov

@jacobwod jacobwod self-assigned this Apr 13, 2022
jacobwod added a commit that referenced this issue Apr 13, 2022
@jacobwod jacobwod modified the milestones: 3.x, 3.10 Apr 13, 2022
jacobwod added a commit that referenced this issue Apr 19, 2022
@jacobwod
Copy link
Member Author

The final result:
Skärmavbild 2022-04-19 kl  14 48 14

With compare window visible:
Skärmavbild 2022-04-19 kl  14 48 53

@jacobwod
Copy link
Member Author

jacobwod commented May 6, 2022

I'm adding this small snackbar that provides an easy way to close the LayerComparer:
Skärmavbild 2022-05-06 kl  11 15 09

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
module:client/plugin Functionality that goes into plugins in client new feature Request for adding/changing functionality
Projects
None yet
Development

No branches or pull requests

4 participants