Opened 10 years ago

Closed 10 years ago

Last modified 10 years ago

#1704 closed defect (fixed)

Main SlippyMap distance scale does not change with the latitude

Reported by: Eugene Alvin Villar Owned by: Tom Hughes
Priority: major Milestone:
Component: website Version:
Keywords: Cc:

Description

The distance/scale indicator at the bottom left of the main SlippyMap? does not change when the map is panned north or south. This makes it really misleading.

Change History (12)

comment:1 Changed 10 years ago by FvGordon

The value of the distance/scale indicator should be divided by the cosine of the latitude of the center coordinates.

comment:2 Changed 10 years ago by Tom Hughes

Resolution: wontfix
Status: newclosed

Yes genius, we know how to do it. We just don't want to.

This was discussed great length when I first bowed to pressure and added the scale to the map (something I may now be regretting...) and as I explained then doing that makes the scale correct for distances measured along lines of latitude but not for distances measured along lines of longitude (or indeed at any angle in between).

The current solution has the opposite problem - it is correct along lines of longitude but not along lines of latitude.

Neither is any more or less correct than the other. The only reason people think that a scale which changes is better is because that's what Google does.

In any case, the scale bar is a standard OpenLayers? widget, so any change would need to be addressed in OpenLayers?.

comment:3 in reply to:  2 Changed 10 years ago by Eugene Alvin Villar

Resolution: wontfix
Status: closedreopened

Replying to tom@compton.nu:

This was discussed great length when I first bowed to pressure and added the scale to the map (something I may now be regretting...) and as I explained then doing that makes the scale correct for distances measured along lines of latitude but not for distances measured along lines of longitude (or indeed at any angle in between).

The current solution has the opposite problem - it is correct along lines of longitude but not along lines of latitude.

Neither is any more or less correct than the other. The only reason people think that a scale which changes is better is because that's what Google does.

Er, the spherical Mercartor projection is a conformal map projection which means that at sufficiently high zoom levels, the x-distance is equal to the y-distance. This is why circular buildings appear circular and square buildings look square. So your reasoning about longitude vs. latitude and Google is incorrect.

When sufficiently zoomed in, a dynamic scale bar (as used by Google) is the correct approach. But since you mention that this is an OpenLayers? bug, then I suggest that the better resolution (as opposed to wontfix) is to remove the scale until the people at OpenLayers? fix it since what is there now is highly misleading (and maybe harmful).

comment:4 Changed 10 years ago by tomhughes

Resolution: fixed
Status: reopenedclosed

(In [17641]) Remove scale bar. Closes #1704.

comment:5 Changed 10 years ago by Tom Hughes

Happy now?

BTW I notice you cleverly added "when zoomed in far enough" to your comment because of course, as I'm sure you know, it is only true when zoomed in far enough. In fact of course scale is not even constant across the whole displayed image although the degree of variation is larger the further out you are.

No projection of a sphere onto a plane can provide constant scale at all zoom levels, and our map is not limited to people who are "zoomed in far enough".

I have no idea how you think it might be harmful - maybe you're expecting some lunatic to scale something safety critical off our map...

comment:6 Changed 10 years ago by Eugene Alvin Villar

No need to be snarky; I never intended to be rude and I don't think that my reply was disrespectful.

And when I meant harmful, I didn't mean that the slippy map is a safety hazard, just that someone might use it to input bad data (improbable that might seem).

For example, I did try to use the scale to confirm or estimate some distances when I was contributing data to OSM but then I realized that the scale was invariant with latitude (and can't be trusted even for estimating) so that's why I submitted this ticket.

comment:7 Changed 10 years ago by david.treumann@…

Where can I see what these "OpenLayers?"-people are doing about this? I miss the scale and would like it back.

comment:8 Changed 10 years ago by Tom Hughes

comment:9 in reply to:  8 Changed 10 years ago by david.treumann@…

Replying to tom@compton.nu:

Over at http://openlayers.org/ ;-)

Thank you very much for your fast reply but I can't find anything concerning the missing scale bar on the OpenLayers?-Website. Is there a bug report on their website I could subscribe? I'm just a user that would like to know when the scale bar is back on openstreetmap.org :)

comment:10 Changed 10 years ago by Tom Hughes

I believe http://trac.openlayers.org/ticket/1890 is what you're looking for.

comment:11 in reply to:  10 Changed 10 years ago by david.treumann@…

Replying to TomH:

I believe http://trac.openlayers.org/ticket/1890 is what you're looking for.

Thanks a lot for your all the answers. Now I can stay informed :)

Keep up the great work you are doing.

comment:12 Changed 10 years ago by axelboldt@…

Maybe a possible compromise would be to add a scale only at zoom levels where the distortion doesn't make it misleading, i.e. where the longitudinal and latitudinal distance scales across the displayed map are within say 10% of each other. We can't estimate distances by eye much better than that anyway. I think maps in atlases do it that way.

Cheers!

Note: See TracTickets for help on using tickets.