Streetcomplete: Improve camera following position

Created on 23 Oct 2020  Â·  8Comments  Â·  Source: westnordost/StreetComplete

Use case

I usually want the position of the map to follow my movement. However, I usually do not want the map to be centered on my position, because I am mapping exclusively things in front of me — I would prefer to have my position fixed at about here:

3/4 of the way from the top of the screen, horizontally centered

In theory, this is what the compass mode is for. However, in practice, the direction of the compass changes far too erratically, making the map hard to read — there is some stabilization already that prevents the map from spinning around completely, but it still creates jitter. Also, your position is still in the center of the screen instead of closer to the bottom. So instead, I just keep the map unlocked and pan around as I walk down the street. (I am actually curious whether anybody finds compass mode useful.)

Proposed Solution

I do not have a particular solution I like enough to propose it. However, I have a couple partial ideas; maybe with a few more brains we can turn them into a solution.

  • Modify compass mode to add additional stabilization (eg, slower turning)

    • If needed, add a control for the user to quickly rotate the view 90°

  • Some way to unlock the camera from the exact center, but still move the map with your position.

    • One option, borrowed from some games have this and call it a "semi-locked" camera: allow panning, but only a little bit, so that your position always stays within a certain area (eg, the black rectangle):

      3/4 of the way from the top of the screen, horizontally centered

      Of course, right now, panning the map stops following your position, so there would need to be a way to toggle this. Maybe an additional state of the gps button, instead of making it disappear while following.

    • Another option: The gps button does not disappear when following location. Pressing it allows you to pan the view freely, but it still moves when you move (keeps the same position relative to your location). And the icon could change to either something like locked/unlocked, linked/unlinked, or arrows in/out (like this: image)

  • A mode that locks the camera in the position shown above (horizontally centered, 1/4 from bottom of screen), and changes the effect of dragging with one finger — horizontal movement would rotate, and vertical would tilt.

Most helpful comment

Well, it is at least ok to experiment with removing or significantly changing compass mode. I can not guarantee you that I'll merge it.

All 8 comments

Hey, this sounds pretty great.

I've noticed that I like to turn the camera a lot, since the compass function is completely unusable at the moment. But as soon as you start turning the view, it unlocks from following the movements of the GPS.

I think it should just start to unlock from the movement of the GPS after the dot left the screen and is shown with an arrow at the edge of the screen.

Any rotation, tilting, panning shouldn't decouple it from the GPS movements, and just keep the dot at the relative position in the screen.

And magnetic heading dampening would be nice, too.

I think this is not worth the effort.

I understand that it makes sense to see more of the map which is in front of you (in the direction you are walking/looking) than what's behind you, but we already have this feature. Just tilt the map. You will automatically see more of what is in front of you than what is behind you, due to the magic of perspective.

If the compass rotation is not working well, then rather the feature request would be to orient the map according to the movement direction rather than this.

If the compass rotation is not working well, then rather the feature request would be to orient the map according to the movement direction rather than this.

If this works* then I think this would help. This seems to me like it would be a bit more work than some of the options I proposed (adding a little more stabilization to the compass view, for example).

*OsmAnd's "Orient map to direction of movement" feature rotates back to north up when it can't determine which direction you're moving in, which consistently happens when stopping at red lights :confused:

Hm well, one way or another, I do not plan to spend more time on tinkering about the camera following or not following stuff. I put way too much effort in this already.

Okay. I may take a look at it myself. In the event that I do, would it be okay to remove (or significantly change) "compass mode"?

I'd be interested to know how many people find it useful, or even know it exists.

Well, it is at least ok to experiment with removing or significantly changing compass mode. I can not guarantee you that I'll merge it.

Related: #1040

This would really improve the experience when using the app on a bicycle. I tried the compass mode and I'd love to use it more in the future but right now every little handlebar movement and road bump will make it shake. (Hope this describes it properly, I'm not completely clear on the impacts of "compass mode" and "GPS follow location" on/off on the experience for now)

Was this page helpful?
0 / 5 - 0 ratings

Related issues

HolgerJeromin picture HolgerJeromin  Â·  3Comments

RubenKelevra picture RubenKelevra  Â·  4Comments

RubenKelevra picture RubenKelevra  Â·  3Comments

nmxcgeo picture nmxcgeo  Â·  3Comments

tordans picture tordans  Â·  4Comments