OpenOrienteering / mapper

OpenOrienteering Mapper is a software for creating maps for the orienteering sport.
https://www.openorienteering.org/apps/mapper/
GNU General Public License v3.0
397 stars 106 forks source link

Android: Definable "mapping scale" for field work #1005

Open mlerjen opened 6 years ago

mlerjen commented 6 years ago

Background

-> The possibility to zoom in and out is one of the advantages of mapping with a smartphone/tablet. Details on the templates can be zoomed in if necessary. At the same time this leads to a often changing "mapping scale" during field work. A least using the pinch move to zoom in and out it is not possible to return to the "constant mapping scale" anymore. So by the way a fixed mapping scale is one of the big advantages of the traditional mapping with pencil and Mylar. The mapper has the possibility to develop a feeling for distance and object density on its field notes with a constant mapping scale.

Feature request

-> The possibility to define a "mapping scale" in the maps setting. -> As zooming in still shall be possible, an easy way to return to this zoom level shall be offered. -> Being on or off mapping scale shall be indicated to the mapper visually.

ollesmaps commented 6 years ago

That would be helpful. Could be combined with zoom in on gps position #949.

JHuberman commented 3 years ago

I believe a user definable zoom level would be very useful as mentioned above. "The Zoom+" button long press offers a 1x and 2x choice. Adding a user configurable choice would be useful to mappers who prefer a different working scale. Or as an alternative all three choices would be user configurable.

lpechacek commented 3 years ago

I'm of two minds here. On one hand, Mapper is supposed to be beginner-friendly. That IMHO mandates a simple user interface, straightforward use cases, and minimal configuration. On the other hand, we've got professional mappers who use the application. There, small details matter and need to be adjustable for the sake of efficiency. To name a few, the possibility to quickly show and hide templates, selection of frequently used symbols, and return to the mapping scale on a button press. These details have multiplicative effects on the total time spent in the field and in the end, on the economy of the project.

I'd personally welcome a configurable mapping scale. I originally introduced the 1x and 2x zoom levels but now I spend most of my time working at 4x and 5.66x. So, I'd immediately make use of this enhancement. But the additional configuration bit might feel overwhelming to newcomers. Any ideas on how to tackle the growth in capabilities and at the same time keep the learning curve reasonably flat?

dg0yt commented 3 years ago

I tend to suggest press-and-hold to trigger configuration options. This even allows discoverability once the user learned the pattern (like learning shortcuts which are listed with menu items).

In the given use case, this would open a simple input dialog (slider, spinbox, and/or "Use current zoom"). And this doesn't need changes to Settings or the settings dialog. Just use QSettings directly (but reusing the existing editor settings group).

JHuberman commented 3 years ago

Thanks for asking this question, I have been giving this issue a good bit of thought.

For a universal answer for lots of configuration issues that I think would insulate the beginner but give flexibility for the heavy user would be a configuration section of the PC app where configuration decisions could be made for the android app. I am using a 10" tablet, so my screen configuration will be very different from someone using a smaller screen or even a phone. If I was given the option to reconfigure my 10" screen I would:

To implement the screen configuration the PC screen would show the various elements and a device screen image the size of the user's device. The user would then drag the elements onto their device image, and when done select 'save'.

Here are some options for your specific question about zoom levels that add minimum complexity to the user interface:

(I was writing this as your second comment came in.) Joseph

================================ Joseph Huberman 904 Dorothea Drive Raleigh, NC 27603

m. (919)610-1788

On Tue, Mar 2, 2021 at 5:35 AM Libor Pecháček notifications@github.com wrote:

I'm of two minds here. On one hand, Mapper is supposed to be beginner-friendly. That IMHO mandates a simple user interface, straightforward use cases, and minimal configuration. On the other hand, we've got professional mappers who use the application. There, small details matter and need to be adjustable for the sake of efficiency. To name a few, the possibility to quickly show and hide templates, selection of frequently used symbols, and return to the mapping scale on a button press. These details have multiplicative effects on the total time spent in the field and in the end, on the economy of the project.

I'd personally welcome a configurable mapping scale. I originally introduced the 1x and 2x zoom levels but now I spend most of my time working at 4x and 5.66x. So, I'd immediately make use of this enhancement. But the additional configuration bit might feel overwhelming to newcomers. Any ideas on how to tackle the growth in capabilities and at the same time keep the learning curve reasonably flat?

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/OpenOrienteering/mapper/issues/1005#issuecomment-788806813, or unsubscribe https://github.com/notifications/unsubscribe-auth/AEDAF25FZAYSBAKFDIZRZVLTBS5OLANCNFSM4EC2EU2Q .

mlerjen commented 3 years ago

I think the point to have beginners in mind is good. I do not see a direct contradiction towards the heavy user demands on efficiency as also beginner might profit from the fine tuned workflows if not being to specific (e.g. mandatory clinometer) and provided with reasonable default values to start with.

(Aware that I might contradict myself right away)

Let me drop a thought here...

In the field (aka Android-Land) I use the jump to position button litteraly every time I get my view on the screen. Auto-orientation is also always on. Adding the feature discussed here, could now think of a feature called "drawing position" which would merge all these three into one single click:

1) Set my position to the center (= not center but 1/3 up the screen; stop the waste of screen X-P) 2) Orientate map according to my device orientation (~keep it static @JHuberman ) 3) Zoom to "mapping scale" (must be easily adjustable to adapt the degree of detail in the terrain)

Of course, to not be to bold on other peoples workflows, these features should be configurable :-) (1) position of the "center" (2) no rotation, static rotation, continuous rotation (3) apply mapping scale or keep actual zoom level.

dg0yt commented 3 years ago

Look at the Mobile User Interface "project" which this issue is part of: The more you add to concise feature request, the longer you might have to wait...