junjunguo / PocketMaps

Free offline maps with routing functions and more ...
https://github.com/junjunguo/PocketMaps
MIT License
232 stars 70 forks source link

Quality Of Life Improvements #174

Open mikenrafter opened 2 years ago

mikenrafter commented 2 years ago

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:

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 commented 2 years ago

@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:

Thanks for all this ideas.

feelingwalnut commented 2 years ago

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 commented 2 years ago

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

Starcommander commented 2 years ago

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 commented 2 years ago
  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 commented 2 years ago

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 commented 2 years ago

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 commented 2 years ago

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 commented 2 years ago

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 commented 2 years ago

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 commented 2 years ago

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 commented 2 years ago

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 commented 2 years ago

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 commented 2 years ago

Exactly, we travel on the RIGHT side. 😆😉

mikenrafter commented 2 years ago

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