De Mercatorkaart moet zowat één van de beroemdste kaartprojecties zijn uit de geschiedenis van de scheepvaart. Ze werd vernoemd naar de Vlaamse cartograaf Gerardus Mercator, die deze projectie in 1569 introduceerde. Over de Mercatorkaart schreef Norman Thrower: 'Net als andere projecties is de Mercator hoekgetrouw (de hoeken worden juist weergegeven), maar ze heeft ook een unieke eigenschap: rechte lijnen zijn loxodromen (lijnen met een constante kompasrichting)'. Deze laatste eigenschap was van onschatbare waarde voor scheepsnavigatoren die hun koers moesten bepalen met behulp van kompassen en andere middelen om hun schip de juiste geografische richting uit te sturen. De Engelse wiskundige Edward Wright analyseerde de fascinerende eigenschappen van de kaart in zijn Certaine Errors in Navigation (navigatiefouten) uit 1599. Begin 18de eeuw nam het gebruik van de Mercatorkaart sterk toe na de uitvinding van de scheepschronometer, een soort van uurwerk waarmee de lengtegraad kon bepaald worden.

Mercator
Gerardus Mercator (1512-1594)

De Mercatorprojectie of normale conforme projectie zet een lengtegraad $$\lambda$$ ($$-180^{\circ} < \lambda \leq 180^{\circ}$$) en een breedtegraad $$\varphi$$ ($$-90^{\circ} \leq \varphi \leq 90^{\circ}$$) van een plaatsaanduiding uitgedrukt in bolcoördinaten om in carthesische coördinaten $$(x,y)$$ op een plat vlak. De projectie wordt gekenmerkt door volgende vergelijkingen: \[ \begin{array}{rcl} x &=& R(\lambda - \lambda_0) \\ y &=& \frac{R}{2} \ln\left(\frac{1 + \sin\varphi}{1 - \sin\varphi}\right) \end{array} \] Hierbij worden $$\lambda$$ en $$\varphi$$ uitgedrukt in radialen, en geeft $$\lambda_0$$ de lengtegraad aan die op het midden van de kaart wordt geprojecteerd. De waarde $$R$$ staat voor de straal van de aarde (6378,1 kilometer). Op basis van deze formules valt ook een belangrijk gebrek van de Mercatorprojectie af te leiden: gebieden die ver van de evenaar verwijderd liggen worden immers sterk uitvergroot weergegeven. Door deze vervorming lijkt Groenland bijvoorbeeld ongeveer even groot als Afrika, terwijl Afrika in werkelijkheid veertien keer groter is.

wereldkaart
Wereldkaart weergegeven met behulp van mercatorprojectie.

Opgave

Schrijf een functie mercatoprojectie waaraan drie reële getallen als argument moeten doorgegeven worden: de lengtegraad $$\lambda_0$$ die op het midden van de kaart wordt afgebeeld, en de lengtegraad $$\lambda$$ en breedtegraad $$\varphi$$ van een punt op aarde uitgedrukt in bolcoördinaten. Deze drie coördinaten worden uitgedrukt in decimale notatie. De functie moet als resultaat een tuple $$(x, y)$$ teruggeven dat de plaats van het punt uitdrukt in carthesische coördinaten x en y. Als straal van aarde mag de functie uitgaan van 6378,1 kilometer, en ook de waarde $$x$$ en $$y$$ moeten uitgedrukt worden in kilometer. Bekijk sectie 6.7 van het handboek om te zien hoe je ervoor kan zorgen dat een functie een tuple als resultaat teruggeeft.

Voorbeeld

>>> mercatorprojectie(25.0, 125.50, 40.0)
(11187.54392465576, 4865.914051846049)
>>> mercatorprojectie(0.0, 0.0, 0.0)
(0.0, 0.0)
>>> mercatorprojectie(-120.0, 22.55, -13.70)
(15868.501357807745, -1539.8116898053572)
>>> mercatorprojectie(-5.78, 22.0, 88.80)
(3092.43751469589, 29077.860165059174)
>>> mercatorprojectie(-5.78, -55.78, 88.80)
(-5565.942251072516, 29077.860165059174)