Mercator Puzzle
gmaps-samples.googlecode.com
gmaps-samples.googlecode.com
"Hi John - Thanks for the feedback. Maps uses Mercator because it preserves angles. The first launch of Maps actually did not use Mercator, and streets in high latitude places like Stockholm did not meet at right angles on the map the way they do in reality. While this distorts a 'zoomed-out view' of the map, it allows close-ups (street level) to appear more like reality. The majority of our users are looking down at the street level for businesses, directions, etc... so we're sticking with this projection for now."
1. Mercator is conformal, which means angles are preserved. So if you zoom into any small part of the map, it will look right. Equal-area maps distort angles.
2. North is always in the same direction—up. Together with the conformal property, it means that all directions are preserved: North, South, and everything else.
The primary use case for Google Maps is not to show the whole world at once, rather it is targeted at street-level mapping. Hence, Mercator is an ideal choice.
There are design and technical concerns, but they are not insurmountable. After all, if you ignore tilting then Google Earth is essentially a dynamically redrawn (position and scale variant!) planar map projection. With the proliferation of vector maps on mobile and WebGL in the browser, it seems like a solution could be found.
However, Albany (Australia) appears to be South of Melbourne when in its starting position on this map (inverted when moved to its correct position.) How is this possible?
Projections, Mercator included, are ways to map a 3D shape (the globe) onto a static 2D surface (a map). Google Earth uses a dynamic 2D surface (a screen) to display a changing view of a 3D object. See TL;DR.
If you want great circles to be straight lines, use the Gnomonic projection.
http://demonstrations.wolfram.com/GreatCirclesOnMercatorsCha...
Most people don't own an Atlas anymore. In the public consciousness Google Maps is the world map. If choice of map projection is important anywhere (which is debatable), it's important on Google Maps.
And remember: you can always fail over to Mercator.
In case you're stuck on a piece.
It's easiest just to let people overlay the map.
Added in edit: Europe does in fact extend a lot further North-East than people think, and when you include that area - yes - Europe is bigger. The actual overlay still surprises people.
[1] http://sxp.me/maps/ (Select equirectangular as the projection and drag the crosshairs to recenter.)
Perhaps a compromise is possible, whereby Mercator is used when plotting routes between things but some other projection is used when you're looking for isolated points. Let each projection do what it does best.
http://www.youtube.com/watch?v=FZzzw4ohq-o
https://itunes.apple.com/us/app/stack-the-countries/id407838...
When you successfully match a country, the shape turns green. However you can move the shape once out of its position. It remains green after the move but you can't move it again (future attempts to move the green item are treated as panning the map)
Also I had a hard time placing Brazil.
A version with all countries would be an interesting teaching tool, to learn about geography and cartography. Would need to option to display only some countries at a time, to avoid overwhelming the user.
Dragging all the red outlines to the equator was a big help.
Initial placement of red outlines in oceans might make the goal more obvious from the initial view.
A "satellite POV" might be interesting (same click&drag UI spins the earth/repositions the POV). The red outlines could then be placed in the empty corners.
And who said the GP was American, anyway?
var answers = { australia: new google.maps.LatLngBounds( new google.maps.LatLng(-45.379453600000005, 110.69313639999996), new google.maps.LatLng(-8.571888000000001, 155.16969360000007)), southAfrica: new google.maps.LatLngBounds( new google.maps.LatLng(-36.73497648232876, 13.33984375), new google.maps.LatLng(-21.010097985940735, 35.87890625)), greenland: new google.maps.LatLngBounds( new google.maps.LatLng(57.9905285, -75.1942745), new google.maps.LatLng(83.97751860000001, -9.709575500000028)), finland: new google.maps.LatLngBounds( new google.maps.LatLng(59.21319690000001, 19.53808950000007), new google.maps.LatLng(70.7889305, 31.90050659999997)), mongolia: new google.maps.LatLngBounds( new google.maps.LatLng(40.74287280000001, 86.85821429999999), new google.maps.LatLng(52.641200000000005, 121.12602760000004)), thailand: new google.maps.LatLngBounds( new google.maps.LatLng(3.9541530000000003, 95.39209260000007), new google.maps.LatLng(21.477918000000003, 106.6929963)), peru: new google.maps.LatLngBounds( new google.maps.LatLng(-19.255824000000004, -82.93600620000001), new google.maps.LatLng(1.5, -67.99965480000003)), brazil: new google.maps.LatLngBounds( new google.maps.LatLng(-35.42974050000001, -74.69401470000003), new google.maps.LatLng(6.5, -33.06445550000001)), iceland: new google.maps.LatLngBounds( new google.maps.LatLng(62.758218600000006, -25.764343499999995), new google.maps.LatLng(67.1959161, -11.481647000000066)), drcongo: new google.maps.LatLngBounds( new google.maps.LatLng(-15.448980381203414, 9.3359375), new google.maps.LatLng(7.485096269212087, 36.015625)), ukraine: new google.maps.LatLngBounds( new google.maps.LatLng(43.456458529383056, 20.234375), new google.maps.LatLng(53.29973879045674, 42.34375)), madagascar: new google.maps.LatLngBounds( new google.maps.LatLng(-26.898128422978452, 39.5703125), new google.maps.LatLng(-10.366188047247464, 55.3515625)), saudiArabia: new google.maps.LatLngBounds( new google.maps.LatLng(14.77959730788355, 33.41796875), new google.maps.LatLng(33.68098354643421, 57.28515625)), mexico: new google.maps.LatLngBounds( new google.maps.LatLng(11.700047540913861, -119.90234375), new google.maps.LatLng(34.264084202839264, -83.65234374999994)), mauritania: new google.maps.LatLngBounds( new google.maps.LatLng(12.387690937704622, -18.7890625), new google.maps.LatLng(29.336753501211746, -2.3046875)) };
@puzzle: great idea!
Viewed source and got all rest of countries names.
(I took down the solution. If someone knows their way around VNC, it will get posted faster.)
It would be amazingly lovely if you could also display simultaneously other mappings than the Mercator one. Say a sphere in 3D in the upper right corner, with the "figures" moving / showing on both mappings.
It's interesting to see that if you take the eight biggest countries by size (well, ok, Antartica ain't a country), they all are very placed in term of GDP:
Russia: 10th (GDP), 1 (size) Antartica: ---, 2 (size) Canada: 11 (GDP), 3 (size) China: 2 (GDP), 4 (size) U.S.A.: 1st (GDP), 5 (size) Brazil: 6 (GDP), 6 (size) Australia: 12 (GDP), 7 (size) India: 9 (GDP), 8 (size)
You then have Argentina and Kazakhstan lacking quite a bit behind:
Argentina: 26 (GDP), 9 (size) Kazakhstan: 49 (GDP), 10 (size)