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

Quality Of Life Improvements #174

Open
mikenrafter opened this issue Apr 29, 2022 · 15 comments
Open

Quality Of Life Improvements #174

mikenrafter opened this issue Apr 29, 2022 · 15 comments

Comments

@mikenrafter
Copy link

mikenrafter commented Apr 29, 2022

This app is fantastic! It is by far the best FOSS map solution for android out there... However, it could use a few touch ups:

  • A UI overhaul
    image
    Something like this is what I had in mind. The next street name should be far more visible than the current one. And the color contrast needs to be increased for readability. The font size should be increased too... In addition to total trip time, time until next turn should be displayed, though this isn't overly crucial.
  • Make the TTS audible when playing music. I'm not sure how this' done exactly, but in other map apps, it dampens the audio of other apps when it gives instructions.
  • Make some instructions more clear:
    • "Stay right" when merging onto highways should be renamed to "Merge to the rightmost lane" and "Turn right onto street/highway name".
    • When continuing straight onto another street, it prevents one's ability to look for the next turn clearly. Optionally, combine "continue straight" instructions and simply display the next "stay/turn left/right" instruction. This is highly useful on the USA's freeways/high-speed highways.
    • Roundabouts are a bit confusing, the turns here should be displayed as "At the roundabout, take the nth turn onto street name".
    • Specific turn lanes should be specified, e.g. "Using the 2nd from the left lane, turn left". This should be audibly relayed, but displayed with a different icon in the map-view navigation instead of text.
  • Stop rotating the map based on the compass! Stationary GPS doesn't work reliably enough for this purpose and causes confusion/inconvenience. Perhaps it could be disabled unless you're biking/walking. This should at least be a configuration option.
  • Stoplights/signs should be displayed on the map, this' a feature in Google Maps, and it's quite nice.
  • Time based delay calculation... AKA take rush-hour(s) into account.
  • POI searching is nonexistant... Perhaps integration with Acastus-Photon would work here?
  • Alternate routes should be displayed and added as optional, toll roads should be ignored by default, but mid-navigation switching should remain an option.
  • The open-in feature doesn't work in this app. It doesn't open search when an address is provided, and should. It often contains %20s which means the strings aren't being parsed/sanitized correctly.
  • LOD should be customizable, as of right now, the map shows too many details for my liking, this should be customizable.
  • Night mode! My eyes!!
  • Feet/Meters should be simplified to Miles/Kilometers when it's over 0.5 (~2700/500) of either of these units.

Most of these features are present in other map-apps, namely Google's and Apple's. If this app gained these features, there'd never be any reason to use the proprietary ones! :D

@Starcommander
Copy link
Collaborator

@mikenrafter Thanks for writing this issue.
Glad, that you like this app.

  1. UI Overhaul: Some improvements on the UI are of course senseful.
    In the past I already changed the background of Text, because it was more difficult to read.
    But can still be improved.
    Otherwise we should not overcharge the view with un-necessary stuff.
    (I think time until next turn is not necessary)
  2. Making TTS audible, that is a good idea.
    I have to find out how.
  3. Instructions:
  • I do not think, TTS should say the street name, as it is not as relevant as "Turn right", and details are visible as text.
  • Combining "continue straight" instructions may be a good hint.
  • I get the instructions from the back-end-library "graphhopper"
    Therefore I have no further information about a "roundabout" (take the nth turn)
    Maybe someone can dive into graphhopper source code.
  • Detailed instructions are also limited because of back-end-library.
  1. Compass: I do not use a compass, what exactly is the problem here?
    The rotation is calculated by gps points, and in navigation mode only.
  2. Stoplights/signs: I do not know, if such information does exist on openstreetmaps, that is the source of pocketmaps data.
    Adding this information may possibly grow the map size.
  3. Delay calculation: This also depends on traffic intensity, how to find out the delay time?
    We could just say: On midday we have possibly more traffic as on the night, so delay +20%?
  4. POI: Searching locations is done by OSM or GMaps, that I can not easy interfere.
  5. LOD: Is currently rendered by VTM(Mapsforge), maybe I can configure some settings there.
  6. Basically Brightness can be modified (also via sensor), but this is no night mode.
    Maybe VTM supports such a NightMode configuration.
  7. Feet/Meters changing is basically possible.

Thanks for all this ideas.

@feelingwalnut
Copy link

feelingwalnut commented May 1, 2022

The app could use some minor improvements to enhance ease of use but there are so many alternative apps with plenty of bloat features. Like google, apple, mapquest, TomTom, Garmin, maps.me among countless others.

I specifically use this because it doesn't need an internet connection and doesn't have the bloat of the others. Like telling me where the next fast food is or what the weather and traffic is like or trying to sell me travel packs of POI's.

A "temporarily ignore this path" to recalculate for a detour would be helpful when you encounter a stoppage would be a useful feature.

I personally find the icon based menus a little confusing even though they are very few and simple. I might just be stupid but text to accompany the buttons might be beneficial. Or less nesting of menus.

@clort81
Copy link

clort81 commented May 19, 2022

Is there an option for "never rotate, keep 'up' on map always north".

@Starcommander
Copy link
Collaborator

No.
There is only the Navigation mode, where - of course - the map rotates into moving direction.
When not in navigation mode, every time the map is showing north to up.

@mikenrafter
Copy link
Author

mikenrafter commented Jul 2, 2022

  1. The UI overhaul I showed there could still be further improved, and I'm working on a mockup of a very intuitive, yet informative design. My main complaint with the current navigation UI, is that it's a bit ugly, and I care about next street names, not the current one. The next street name is far too tiny, and I find that looking at it becomes a traffic hazard. Perhaps a toggle in settings would fix that here? What of using mapbox's rendering instead? mapbox-navigation-android, graphhopper-navigation-example, mapbox-navigation-android-examples (I need a dark mode, and these look far more appealing visually!) (the version of mapbox used in the graph hopper example was still MIT, it's version 1.9.x, I believe - version 2.x+ is proprietary, so definitely not that version...)
  2. I realized that the issue I thought was a compass one really comes from GPS inaccuracies. A simple fix would be to watch the velocity of the user, and if they slow down by say 90%, then disable rotations until they re-accelerate/move a certain distance from their stopping point.
  3. This information is present in OSM. It looks like stoplights have around a 95% accuracy in surveyed areas, while stop signs only have 49% accuracy. Whereas, accuracy never has false positives, but does have false negatives.
  4. There are a lot of heuristics that could be used here, real traffic information would be better of course, but that doesn't work offline, and the providers of such data are proprietary services like Google or Apple (which defeats the purpose of the app). I'll have a more detailed list of all this in the near future, and I'll be looking to fix the current version of graph hopper used to utilize custom weighting classes based on this.

@mikenrafter
Copy link
Author

mikenrafter commented Jul 4, 2022

Here's the UI mockup I had in mind:
mockup-2

With a super simple dark mode, I simply inverted the colors... (and the fire/ice aren't CC0/license viable, so, the exact images here are just for show, fire/icicles would need to be found (CC0/similar) or made)

@mikenrafter
Copy link
Author

mikenrafter commented Jul 5, 2022

On second thought, perhaps the ETA should be shifted to the top of the panel. That'd waste less space, whereas the distance-to-turn eats into the centered next-street overflow. And, to be clear, the (St. segment on the top panel will follow the bottom of the centered next-street text box. Not the center/other areas — as to be space efficient there as well.

Color schemes should definitely be an option here, I like this light navy/blueish color, but the teal used before wasn't so bad either. And some people may prefer the deeper green used by the proprietary map solutions...

@Starcommander
Copy link
Collaborator

Looks very nice, your UI-mockups.
But I do not understand the Fire/Ice speed-limit-icons.
Also what should "do you speed?" have to do in settings?

@mikenrafter
Copy link
Author

Waze, a proprietary app by Google has a report speed trap button, which lets people that speed - well, not get caught.
A fire/ice speed-limit leniency would be useful for those that speed. The leniency would be determined mostly by distance to the nearest police station.

However, speeding is illegal, and so this feature should be disabled by default.

@feelingwalnut
Copy link

feelingwalnut commented Jul 9, 2022

Everything looks pretty nice, especially the colors.
I do wonder how well the lane thing will work around here. We do have some complex 5+ lane intersections and weird roundabouts.
Although in my area in America we don't really have "nearest police station" the area covered by the nearest station may be 20miles from it and you may only have 5 officers covering that area.
Due to the low number of police, they often don't "watch traffic" they spend their time responding to emergencies which may take 15minutes or more to get to. Also you are OK, by law, traveling up to 12MPH over the posted limit.
On highways you will attract suspicion by driving slower than traffic which may be going 20-30MPH over the "limit"
It is not "legal" but that is how it works here.

Speeding in many parts of America is very different than in a lot of other countries. Some states have only recently even added speeding laws.
Waze let's you mark where you see police watching traffic. That is a good feature for waze. People should use Waze for avoiding police.

Current speed is nice for bicycles and should be able to be disabled.
Showing posted speed limits, if only a light, non bloating code addition would be nice if it can also be turned off.
All additions should be minimal, light and keep the program unbloated, unlike all the other more complex and feature rich options that are already available. They get wasteful, bloated and eventually commercialized.

@mikenrafter
Copy link
Author

I agree, bloat should be avoided. Perhaps features like speed-limit leniency could be included in an add-on apk. Many apps do similar things, even on Android...

In your area, since they're not really watching traffic - then it'd basically always show the fire emblem. As it's obviously lenient there... 20 miles away... And yes, I understand the flow of traffic. But that's not really something that an app like this would be able to incorporate without pulling information from its users/an external source.

On the 5+ lane comment, it'd really only show the 3 relevant lanes, the one(s) you should turn using, and up to 2 other lanes to the left/right, to give you context...
Roundabouts would probably need some special work here, I'll try to come up with a design that works for them...

@feelingwalnut
Copy link

some of our roundabouts are interesting with combinations of single and double lane exits. Other countries have far more complicated.
These are two of the more complicated I recall taking in the past.
https://www.google.com/maps/place/Somerville+Cir,+Raritan,+NJ/@40.5756543,-74.6295237,258m/data=!3m1!1e3!4m5!3m4!1s0x89c3952fdb1967ad:0x9a9b9df9469a8411!8m2!3d40.5755368!4d-74.628474

https://www.google.com/maps/dir//NJ-12,+Flemington,+NJ+08822/@40.5020629,-74.8557911,398m/data=!3m1!1e3!4m8!4m7!1m0!1m5!1m1!1s0x89c3f14132f219df:0x4f0aff6d99eff5b9!2m2!1d-74.8564045!2d40.501945

NJ has far more police and they DO watch speeding. in general it is a terrible place to go.

@mikenrafter
Copy link
Author

I've updated my original mockup image, but here's my roundabout mockup alone:
mockup-r

Regarding the complex roundabouts, I believe this UI will work. Though, it will need to be flipped horizontally when appropriate, as the US is the only country that travels on the right of the road.

@feelingwalnut
Copy link

Exactly, we travel on the RIGHT side. 😆😉

@mikenrafter
Copy link
Author

mikenrafter commented Jul 9, 2022

I don't think that the roundabout segments as shown there should dynamically update, as that would create unnecessary complexity... So have 3 exits always visible, but the 2nd/3rd/4th/5th text would update... etc

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

No branches or pull requests

4 participants