#! /usr/bin/env python
|
|
"""
|
Usage:
|
python mecartor-projection <latitude> <longitude>
|
Example Bundestags Kooridnaten: 52°31'7.22" N 13°22'13.69" E
|
./mecartor-projection.py 52.5186729836 13.3704687765
|
x = 5.55928
|
y = 18.86398
|
"""
|
from math import log, tan, radians, pi
|
import sys
|
from typing import Final
|
|
# Sternwarte Peterberg WGS84 (49° 34′ N, 7° 0′ E)
|
MAP_CENTER_LONGITUDE: Final[float] = radians(7)
|
|
RADIUS: Final[float] = 50 # cm
|
|
latitude = float(sys.argv[1]) # Degree
|
longitude = float(sys.argv[2]) # Degree
|
|
# Hilfe-Variablen
|
lat = radians(latitude)
|
lon = radians(longitude)
|
# Kartesische Koordinaten
|
x: float = RADIUS * (lon - MAP_CENTER_LONGITUDE)
|
y: float = RADIUS * log(tan(pi/4) + lat/2)
|
|
print(f"x = {x:.5f}")
|
print(f"y = {y:.5f}")
|